The CONTINUE functionality has issues I don’t think I can fix: [heatsoak] PRINT_START_CONTINUE errors out but print continues · Issue #3 · garethky/klipper-voron2.4-config · GitHub
This topic is also very relevant: Save/restore gcode state in updated pause/resume macros
If we RESUME before the CONTINUE macro, things work “as expected”, but if anything goes wrong in the CONTINUE macro it wont stop the print as it should. Not stopping in a crashed state is a deal breaker for me, clearly that’s not safe.
If we RESUME after the CONTINUE macro any state that you built up in the CONTINUE macro is lost, including any probed Z Offset and the current position of the toolhead. RESUME will reset all of this and move the toolhead back to the position it was in at the start of the HEAT_SOAK. That’s also a deal breaker for me. The whole point of CONTINUE was to do probing after the heat soak.
So option 3 is to remove the CONTINUE functionality and recommend that people split their PRINT_START up into 2 calls in their slicer like this:
# Bed heat-up, Nozzle pre-warming, Homing/QGL, park in center, HEAT_SOAK:
PRINT_WARMUP=[first_layer_temperature] BED_TEMP=[first_layer_bed_temperature]
# bed mesh, auto calibrate Z, final nozzle heat up and prime line
PRINT_START=[first_layer_temperature] BED_TEMP=[first_layer_bed_temperature]
I think this will makes the most sense for most users. The Pause state only covers the heat_soak time, nothing more. No weird syntax for passing a callback etc.
If you have a strong opinion on the CONTINUE functionality staying in or an alternative idea for making it safe to use, I’d love to hear it.
(I was using CONTINUE for macros that printed a test pattern, but I think I can find another way of doing that, like a small .gcode file)