TM: Do not emit an "error:" on the serial for recoverable errors

Use "echo:" for thermal model error reporting to avoid octoprint
automatically sending a M112 kill.

Keep using "error:" instead for other thermal errors (MAXTEMP/etc).

This should allow resuming a thermal mode pause with the default
octoprint settings.
This commit is contained in:
Yuri D'Elia 2023-01-28 14:41:32 +01:00 committed by DRracer
parent c740bf923c
commit b23476aaf3

View File

@ -9767,6 +9767,8 @@ void ThermalStop(bool allow_recovery)
{ {
if(Stopped == false) { if(Stopped == false) {
Stopped = true; Stopped = true;
// Either pause or stop the print
if(allow_recovery && (IS_SD_PRINTING || usb_timer.running())) { if(allow_recovery && (IS_SD_PRINTING || usb_timer.running())) {
if (!isPrintPaused) { if (!isPrintPaused) {
lcd_setalertstatuspgm(_T(MSG_PAUSED_THERMAL_ERROR), LCD_STATUS_CRITICAL); lcd_setalertstatuspgm(_T(MSG_PAUSED_THERMAL_ERROR), LCD_STATUS_CRITICAL);
@ -9789,8 +9791,8 @@ void ThermalStop(bool allow_recovery)
print_stop(); print_stop();
} }
// Report the status on the serial, switch to a busy state // Report the error on the serial
SERIAL_ERROR_START; serialprintPGM(allow_recovery ? echomagic : errormagic);
SERIAL_ERRORLNRPGM(MSG_ERR_STOPPED); SERIAL_ERRORLNRPGM(MSG_ERR_STOPPED);
// Eventually report the stopped status on the lcd (though this is usually overridden by a // Eventually report the stopped status on the lcd (though this is usually overridden by a