Recovers from multiple power panic and even resets (as long it is in recovering)
Host power panic
LCD menu
During recovering all menus are hidden except
Stop print (to be able to exit)
Statistics
Fail Stats
Support
Reprint hidden
Host reprint only shown when host sends M79 to ensure that the host is ready to reprint
SD Reprint only shown when previous print was finished successfully.
ToDo for next release: Don't show Reprint when SD card has been changed
Resume hidden
When resuming
With host prints until host sends M79
Autoload filament menu only shown with active FSensor and NO filament detected
Load filament menu only shown with active FSensor and NO filament detected OR FSensor disabled
Unload filament menu only shown with active FSensor and filament detected OR FSensor disabled
This Firmware doesn't recover correctly with Prusa Link 0.8.0-alpha4 at this moment.
I was able to recover host prints with a modified OctoPrint + two Plugins and additional code (which isn't in this PR as this code is a workaround of existing OctoPrint+Plugins)
Update 27-03-2024
Added EEPROM_UVLO_Z_LIFTED to prevent multiple Z lifts in case of a power panic while the print is paused.
A host print recovery it doesn't wait for hotend temp to be stable as it will go into pause state anyway and the hotend will be disabled while paused anyway.
Tested with MK404
[X] SD print + power panic
For some unknown reason it doesn't recover correctly SD print + power panic + reset while recovering, while a double power panic does recover correctly even with a reset.
[X] SD print + power panic and while lifting Z another power panic
[X] SD print + power panic and while lifting Z another power panic + reset while recovering
[X] SD print + pause + power panic
[X] SD print + pause + power panic and while lifting Z another power panic
[X] SD print + pause + power panic and while lifting Z another power panic + reset while recovering
[X] Host print same as above for SD
Difference between SD and Host print power panic:
SD recovers automatically when bed temp isn't lower than 5°C to target bed temperature
Host recovers the print settings and goes to pause state.
Then it waits for the host sending "M79" before showing Resume to ensure that the host is "there" to receive any messages from the printer.
The print can't be recovered if a reset happens at the last step of the recovery as at this moment the power panic recovery is "completed" and the printer is back in normal mode.
Improved Power Panic
M79
to ensure that the host is ready to reprintM79
Autoload filament
menu only shown with active FSensor and NO filament detectedLoad filament
menu only shown with active FSensor and NO filament detected OR FSensor disabledUnload filament
menu only shown with active FSensor and filament detected OR FSensor disabledThis Firmware doesn't recover correctly with Prusa Link 0.8.0-alpha4 at this moment. I was able to recover host prints with a modified OctoPrint + two Plugins and additional code (which isn't in this PR as this code is a workaround of existing OctoPrint+Plugins)
Update 27-03-2024
Added
EEPROM_UVLO_Z_LIFTED
to prevent multiple Z lifts in case of a power panic while the print is paused. A host print recovery it doesn't wait for hotend temp to be stable as it will go into pause state anyway and the hotend will be disabled while paused anyway.Tested with MK404
Difference between SD and Host print power panic:
The print can't be recovered if a reset happens at the last step of the recovery as at this moment the power panic recovery is "completed" and the printer is back in normal mode.