Handle print completed LED event in M0
This commit is contained in:
parent
633b716a3a
commit
bafe8d920a
3 changed files with 13 additions and 18 deletions
|
@ -412,23 +412,13 @@ void startOrResumeJob() {
|
|||
#endif
|
||||
}
|
||||
|
||||
#if ENABLED(PRINTER_EVENT_LEDS)
|
||||
#include "feature/leds/printer_event_leds.h"
|
||||
#endif
|
||||
|
||||
inline void finishSDPrinting() {
|
||||
bool did_state = true;
|
||||
switch (card.sdprinting_done_state) {
|
||||
|
||||
#if ENABLED(PRINTER_EVENT_LEDS)
|
||||
case 1:
|
||||
printerEventLEDs.onPrintCompleted(); // Change LED color for Print Completed
|
||||
break;
|
||||
#endif
|
||||
|
||||
#if HAS_RESUME_CONTINUE // Display "Click to Continue..."
|
||||
case 2:
|
||||
did_state = queue.enqueue_P(PSTR("M0 S"
|
||||
case 1:
|
||||
did_state = queue.enqueue_P(PSTR("M0Q1S"
|
||||
#if HAS_LCD_MENU
|
||||
"1800" // ...for 30 minutes with LCD
|
||||
#else
|
||||
|
@ -438,13 +428,13 @@ void startOrResumeJob() {
|
|||
break;
|
||||
#endif
|
||||
|
||||
case 3: print_job_timer.stop(); break;
|
||||
case 2: print_job_timer.stop(); break;
|
||||
|
||||
case 4:
|
||||
case 3:
|
||||
did_state = print_job_timer.duration() < 60 || queue.enqueue_P(PSTR("M31"));
|
||||
break;
|
||||
|
||||
case 5:
|
||||
case 4:
|
||||
#if ENABLED(POWER_LOSS_RECOVERY)
|
||||
recovery.purge();
|
||||
#endif
|
||||
|
|
|
@ -67,11 +67,16 @@ void GcodeSuite::M0_M1() {
|
|||
|
||||
planner.synchronize();
|
||||
|
||||
#if HAS_LEDS_OFF_FLAG
|
||||
if (parser.seen('Q'))
|
||||
printerEventLEDs.onPrintCompleted(); // Change LED color for Print Completed
|
||||
#endif
|
||||
|
||||
#if HAS_LCD_MENU
|
||||
|
||||
if (has_message)
|
||||
ui.set_status(args, true);
|
||||
else if (!parser.seenval('Q')) {
|
||||
else {
|
||||
LCD_MESSAGEPGM(MSG_USERWAIT);
|
||||
#if ENABLED(LCD_PROGRESS_BAR) && PROGRESS_MSG_EXPIRE > 0
|
||||
ui.reset_progress_bar_timeout();
|
||||
|
@ -98,7 +103,7 @@ void GcodeSuite::M0_M1() {
|
|||
wait_for_user = true;
|
||||
|
||||
#if ENABLED(HOST_PROMPT_SUPPORT)
|
||||
host_prompt_do(PROMPT_USER_CONTINUE, PSTR("M0/1 Break Called"), CONTINUE_STR);
|
||||
host_prompt_do(PROMPT_USER_CONTINUE, parser.codenum ? PSTR("M1 Stop") : PSTR("M0 Stop"), CONTINUE_STR);
|
||||
#endif
|
||||
|
||||
if (ms > 0) ms += millis(); // wait until this time for a click
|
||||
|
|
|
@ -241,7 +241,7 @@ public:
|
|||
// Seen a parameter with a value
|
||||
static inline bool seenval(const char c) { return seen(c) && has_value(); }
|
||||
|
||||
// Float removes 'E' to prevent scientific notation interpretation
|
||||
// The value as a string
|
||||
static inline char* value_string() { return value_ptr; }
|
||||
|
||||
// Float removes 'E' to prevent scientific notation interpretation
|
||||
|
|
Reference in a new issue