diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index ad4ffa31c..7f0c13645 100644 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -6154,6 +6154,12 @@ Sigma_Exit: while ( (!cancel_heatup) && (target_direction ? (isHeatingBed()) : (isCoolingBed()&&(CooldownNoWait==false))) ) { + if (lcd_commands_type == LcdCommands::LongPause) { + // Print was suddenly paused, break out of the loop + // This can happen when the firmware report a fan error + break; + } + if(( _millis() - codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. { if (!farm_mode) { @@ -9788,6 +9794,11 @@ static void wait_for_heater(long codenum, uint8_t extruder) { #else while (target_direction ? (isHeatingHotend(tmp_extruder)) : (isCoolingHotend(tmp_extruder) && (CooldownNoWait == false))) { #endif //TEMP_RESIDENCY_TIME + if (lcd_commands_type == LcdCommands::LongPause) { + // Print was suddenly paused, break out of the loop + // This can happen when the firmware report a fan error + break; + } if ((_millis() - codenum) > 1000UL) { //Print Temp Reading and remaining time every 1 second while heating up/cooling down if (!farm_mode) {