Fix kill => disable_all_heaters => print_job_timer.stop (#12146)

- Remove `print_job_timer.stop()` from `disable_all_heaters`
- Call `print_job_timer.stop()` for relevant `disable_all_heaters()`.
- Split up `kill()` for watchdog interrupt safety
This commit is contained in:
Marcio Teixeira
2018-10-18 20:20:56 -06:00
committed by Scott Lahteine
parent 4cc1c2627e
commit 71e19baf69
14 changed files with 48 additions and 37 deletions

View File

@ -63,9 +63,8 @@ void watchdog_init() {
ISR(WDT_vect) {
sei(); // With the interrupt driven serial we need to allow interrupts.
SERIAL_ERROR_START();
SERIAL_ERRORLNPGM("Watchdog barked, please turn off the printer.");
kill(PSTR("ERR:Watchdog")); //kill blocks //up to 16 characters so it fits on a 16x2 display
while (1); //wait for user or serial reset
SERIAL_ERRORLNPGM(MSG_WATCHDOG_FIRED);
minkill(); // interrupt-safe final kill and infinite loop
}
#endif // WATCHDOG_RESET_MANUAL