Resume paused prints after printer has been powered off


#1

I'd love to turn of my printer when I'm not at home or sleeping.
Pausing and resuming prints works very well for me.

  • Set the last known position of the printer after it had shut down. (G92 ?)
  • Do I loose microsteps when the steppers power down. (Snaps back to a stable position)

Have I missed something else ?

The current problem:
Octoprint won't allow me to resume after it looses the connection to the printer, even if I paused before and the printer should be in a known state.

My expereince so far:
Before resuming the print I manually turn on the heatbed and nozzle so I have similar thermal expansion as during the print. (I also extrude a bit at parking position so I don't bake the filament for too long).

The layer adhesion where I resume the print seems to be OK.
I still noticed a small shift in the X and Y-Axis, maybe I am losing microsteps.

Why not leave it running ?

  • While I love my printer, I don't trust the printer even if the heatbed is turned off.
  • It also has fans that are quite annoying, I currently just unplug them from the control board. (Just screwed up a print because I forgot to plug them back in and the nozzle got clogged)

#2

I have done a lot of development in splitting single jobs into multiple ones so it's important for the second-of-two print to resume gracefully and without shifting. I've printed well over 200 (small) parts like this, by the way.

Part of the setup for this is to be able to reliably print without a G29 autolevel as part of the routine; you can't have an IR height sensor getting confused when it sees plastic below it. This would likely result in drilling your bed with a hot extruder. So autoleveling needs to be toggled off and your bed would need to be manually adjusted to be level.

If you fully home all axes before printing the first part, print the first part, shutoff the printer and repeat all this for the second part it should be fine as long as your printer can accurately adjust X/Y/Z.

I routinely rescue long-running parts that either self-abort or which I cancel myself for whatever reason. I then split the original gcode file at the last layer seen (measuring the height accurately with a digital caliper) and restart things with a 2nd-of-2 gcode file and things work out.

I have been known to keep a hair dryer next to the printer. Next-layer adhesion after a restart like this is better if you heat it a little at the top but not enough to warp anything.

I think I would toggle on/off the fans with gcode (M107, for example) rather than plugging/unplugging them.

If pausing/resuming works well, you might review the underlying OctoPrint -> Settings -> Gcode-related scripts for both of those. But powering off/on the printer will then run those respective scripts as well so be careful.

You would need to know if you're in G90 or G91 mode at all times since this can make things go badly when restarting if the mode is now incorrectly set.

An M114 will report current position and could be used with a G0 after starting up again with those coordinates, noting that it would be great if you're in absolute mode (see above) for this to work. If you learned earlier that your gcode spends its time in relative mode, then switch to that and resume the print, having set things up to begin.