Resume Print after power loss

After a power loss when the printer comes online how can the print be resumed? Is there any way of implementing this? Marlin 2.x has such a functionality if I recall.


It cannot and usually it is viewed as quite futile:

  • You will need some UPS anyway to move to a safe location before fully cutting the power. Otherwise your hot nozzle will stay where it was burning your print with the remaining heat
  • Due to the way Gcode and Klipper works you probably do not really know the true last position. Again some hardware would be needed to detect the black out and store away these information
  • A safe and secure startup procedure is needed, which most likely will require human intervention, since:
    • Printer is in a unknown state
    • Unpowered steppers may have moved
    • Bed may have sagged due to gravity etc.
  • Re-homing with a half finished print on the bed could be considered a bad idea

So far no developer found it worthwhile to dig into this, especially since the success is potentially questionable and extra hardware would be needed.


Thx for the answer.
I was looking online and it seems someone did it but unfortunally it looks it’s gone into oblivion. There hasn’t been an update for quite some time.

I think this could be done without any additional development work inside Klipper when you manage to keep the Pi and the printer MCU powered (which don’t draw too much power).

I.e. use an UPS connected to the Pi, have it notify the Pi when a power outage occured and everything is running off the battery.

When the Pi gets notified, run a macro similar to the PAUSE macro so that the heaters and motors (i.e. the power hungry parts) get turned off. Keep it like that until power is restored, then run a macro similar to the RESUME macro.

1 Like

Thanks enderbender sounds like a good idea. I’l give it a try.

I may pick this up in regards to using a UPS. I have a $50 Cyberpower UPS here. The goal is to wire only the 24v system to the UPS so without the bed power. The UPS has a usb connection for monitoring. If a power loss event occurs, the head will go the park position and the bed will be turned off (to prevent a klipper fail event). Hopefully the power returns quickly before bed temp is too low, if so the print is resumed (after bed and hotend temp is restored). I live in the Lightning capital (Tampa Bay, Florida) so I’m pretty motivated. End goal would be a klipper plugin.

I have setup NUT (Network UPS Tools) to do the heavy work of connecting to the UPS. It works fine, but quite a complicated system to setup. I was hoping to just plugin in the ups and use python psutil.sensors_battery() but this didnt work, and /sys/class/power_supply is empty. I’m pretty Linux savy, but if there are any linux UPS experts out there please get in touch with me, it would be nice if the setup was simpler. Thanks!

github . com /bigtreetech/BIGTREETECH-MINI-UPS-V2.0/tree/master/BTT%20UPS%2024V%20V1.0

I was testing this module and it keeps the printer alive for 30 Seconds.

Did you get anywhere with this?

Has a signal pin and tells the SKR Mini E3 V3 the power is out.

github . com /pablogventura/OctoPrint-PowerFailure

1 Like

Has anyone tried to set up the BTT UPS 24V unit? I have a BTT SKR Mini E3 V3, which has the power_det pin on the board. I plugged in the UPS but don’t know how to program it in Klipper. I want to run [pause_resume] script or [gcode_macro PAUSE]. I figure so long as it runs print pause g-code (which the unit seems to provide adequate time to do so) the tool head location at power failure should be recorded and I can just use print resume to start back up where I left off. I just don’t know how to enable UPS since there’s no such feature in Klipper at the present moment (or what I can find so far).


It IS possible. I am working on a step by step guide on how to recover a print with klipper. It requires a basic knowledge of how to edit your printer cfg, but it works quite nicely for me. The only thing is that you need to be able to home your printer.

Ill get this done soon,


Here’s the guide I made:

Happy Printing Everyone,

I was helping a friend who was converting over to klipper and the power recovery discussion came up.

This review is another reason I never used power recovery in addition to the reasons SineOS listed. For this reason every printer has its ow battery-backup.

This one will work for a few minutes:
Search Amazon for: B01FWAZEIU

I suggest using one 1500VA for each printer.

These can handle two JG Maker Artist-D i3 style printers for several minutes. If you hook up more than that the UPS will start to alarm.

Search Amazon for: UPS 1500VA

If yo can afford it, I recommend the Pure Sine Wave versions. Those are normally 3x the cost.