Rescue after power failure

Good day all
I have a question about rescuing printing after a power failure:

So I live in South Africa where we often suffer from "load shedding". This load shedding is an emergency implementation of turning off a few power grids to avoid overloading the system. Those outages are usually 2.5 hours long and a schedule will let you know when you can expect an outage. They also run at different stages, stage 1 being the least invasive and 4 the most (and the more invasive, the more regularly you will have power outages, but always only 2.5 hours long).

Since using a UPS to power the printer to prevent power interruptions from corrupting a printing job is therefore not feasible (the current draw from an active printer is quite high and an appropriate UPS might cost more than the printer!), I thought of an alternative: since powering the Raspberry Pi with a UPS would be very easy, I was hoping someone will know about a plugin that could help me to achieve the following: when a power failure occurs, the printer will immediately stop, while the raspberry pi is maintained with a small UPS. As soon as the power returns, the printer continues with the print. Does such a plugin exist, or does this capability already exist with current versions of octoprint?

Thanks for the help!

1 Like

Foosel explained why this will never happen:

Skip to 27min 20sec if your browser doesn't deeplink youtube properly.


It's easy enough to have an APC brand UPS trigger a pause in OctoPrint with scripting. If the UPS has enough power to run throughout the entire 2.5 hours then in theory it will come back up happily.

In fact, if you had a big enough UPS you could run both Raspi and printer for the 2.5 hours as long as it wasn't still heating the bed and the hotend. You might be able to create a pair of GCODE System Commands which completely handle this. Think "sleep" and "re-awaken". The sleep version would move the hotend to the X/Y home position, cool bed/hotend(s), turn off fan(s) and just pause indefinitely. The other would heat things back up, return to the last position and resume.

Honestly, though, you won't be happy with the results since it's difficult to control filament oozing in these scenarios.

If it were me, I would put my effort into avoiding these rolling blackouts using some kind of notifier and access to that scheduler.

1 Like

With serial debugging you know where the printer failed, all you need to do is trim the gcode up to that point and set the position of the nozzle and press print. There might be some drift or whatever, but it's always worth a try.

Can you manually set the position of the nozzle?


This totally saved my print. Thank you for the suggestion!

I am new to 3D printing. On my first "multi-day" print and power outages are now a worry. Since I have a home backup system, I only need the printer to continue to run for about 5 min before the genny takes over. Guessing I won't need much to accomplish that. Question: Does a 3D printer such as the Ender 5 require a Sine-Wave Backup?

Sorry for giving life to the Zombie thread.

So the reason to not even try a resume-print-from-power-failure is a layer shift?

If Im doing a long print and get a power failure at, say, 75% of the print, and get a power failure, a layer shift is very much acceptable for most of my prints.

I wil usually home XY, home Z on a corner of the bed that is free (again, most of my prints will have the 4 corners available), use the printer itself to find the height where the print stopped, edit the Gcode so it starts at either that layer or the next, clean up any blobs or strands, and have it go from there.

that is super tedious. I would love a plugin that automates most of that, safe for the "finding the correct layer" part.

Sorry for unearthing the thread, but it seems that whenever I look for a plugin to do this, I end up empty handed and findind this thread again. If someday I either find or make such a plugin, Ill come back here.


I have not used this but it sounds to be the closest thing out there for this. Its description seems to indicate that its not a full automated / trusted solution but its a recent new PlugIn so it might have some value to you.