Way to cancel print after G32 failure?



  • My machine has 4 independent Z axis motors, so I use G32 to level the gantry before it starts printing. However, if G32 fails (due to too much gantry misalignment), the duet gives a message that it failed, but print continues without attempting to level the gantry.

    Is there a way to cancel printing after a G32 failure so it doesn't ruin my bed surface again?


  • administrators

    Currently there isn't a way to do this. In future it will be possible to use conditional GCode commands to do it.

    Perhaps for now I should change the firmware cancel the current SD card print always if a G29 or G32 command fails?



  • @dc42 said in Way to cancel print after G32 failure?:

    Currently there isn't a way to do this. In future it will be possible to use conditional GCode commands to do it.

    Perhaps for now I should change the firmware cancel the current SD card print always if a G29 or G32 command fails?

    Can we have some parameter for the G29/G32 commands to enable/disable abort on failure or is this to much work for now and not worth it as you have planned that conditional gcode for later already ?


  • administrators

    @scachi said in Way to cancel print after G32 failure?:

    @dc42 said in Way to cancel print after G32 failure?:

    Currently there isn't a way to do this. In future it will be possible to use conditional GCode commands to do it.

    Perhaps for now I should change the firmware cancel the current SD card print always if a G29 or G32 command fails?

    Can we have some parameter for the G29/G32 commands to enable/disable abort on failure or is this to much work for now and not worth it as you have planned that conditional gcode for later already ?

    It's too much work, given that conditional GCode is coming soon. Is there any time that you wouldn't want to abort an SD print if its start GCode invokes G32 or G29 and probing fails in some way?



  • @dc42 Uh..sorry.my memory was playing tricks on me. I am using different commands. Scratch my G32/G29 parameter question. I would like to be able to abort on a failed G30 or G28 as I home Z multiple time at the start of the print because of nozzle cleaning and using a piezo probe.
    I would like to be able to ignore failure on the first couple of Z homes/probes and want to abort if my last on failes for G28 Z or G30. So having a stop on failure flag would help for G30/G28.

    conditional GCode and comming soon sounds more than good enough for me. 👍



  • Maybe for now, users should keep detailed Z probing separate from their print files. i.e. don't include it as part of the slicer start gcode but run it separately. Then if it fails, you can do something about it before commencing a print ad potentially damaging the bed surface.

    Edit. Just read @Scachi 's post above (we were typing together) but the same applies. i.e. for now, run the homing sequence separatley to the print gcode.


  • administrators

    @deckingman said in Way to cancel print after G32 failure?:

    Maybe for now, users should keep detailed Z probing separate from their print files. i.e. don't include it as part of the slicer start gcode but run it separately. Then if it fails, you can do something about it before commencing a print ad potentially damaging the bed surface.

    That's what I do. But I appreciate that some users prefer to be able to turn the printer on and tell it to print a file immediately.



  • @dc42 said in Way to cancel print after G32 failure?:

    @deckingman said in Way to cancel print after G32 failure?:

    Maybe for now, users should keep detailed Z probing separate from their print files. i.e. don't include it as part of the slicer start gcode but run it separately. Then if it fails, you can do something about it before commencing a print ad potentially damaging the bed surface.

    That's what I do. But I appreciate that some users prefer to be able to turn the printer on and tell it to print a file immediately.

    For sure - I just have homeall called by my slicer start gcode. But I don't do any sort of bed compensation and my homing switch is 100% reliable. I was just suggesting a possible work around for those who have problems - as a temporary measure until conditional gcode code gets implemented.



  • @dc42
    I think it would be good to cancel the print if G29 or G32 fails, since they're important for some setups. Maybe any code that involves homing shouldn't be allowed to continue printing if it fails, but I'm not sure if that would be good for everyone. If G29 and G32 cancelled an SD print upon failure, i think it would be a good stopgap before conditional gcode comes.

    I like the idea of a parameter to change the behavior too, but conditional gcode is probably a better solution anyway and if it's a lot of work it probably won't be worth it.

    It could be that something could also be done to retry G32 in a different way after a failure of a certain type. For instance if the probe was already triggered on one corner, then move that side up by a couple mm and retry, but that could be done with conditional gcode probably. Also it might be a bit dangerous to do that since the machine could possibly rip itself apart, but w/e.


 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.