PRUSA LIVE Z OFFSET Duet Alternative?



  • So I am a Prusa guy. Lately in my recent Cartesian build I went with a Duet. In Prusa Marlin flavor you dial in the Z Offset and leave it. You can have different offsets for different temperatures. In my build using a EZABL, I got it all figured out, but no matter what I do, when it starts printing it’s way too high.

    I naturally baby step down but I don’t want to have to set the babystep everytime. I tried to cheat but adding the offset to my Start Gcode but that did not work. About four layers in it was like it started plowing the nozzle into the layer before ruining the layer until it self corrected and would start stacking normal again.

    So here’s my workflow:
    M561 turn off mesh compensation
    M208 S1 Z-3
    Baby step to the bed until it touches.
    G92 Z0
    M500 to save.
    G1 Z5
    G30 S-1
    Repeat four times and average the result; then add to G31 in config.g

    When I probe before a print at temp, I do one G30 in the middle of the bed.
    G29.

    So when it starts printing it’s always 1+mm too high. I can add the babystep gcode until the first layer is perfect.

    Shouldn’t I be able to change the G31 offset and adjust the printing height? Can I take the amount I have to babystep and subtract that from the G31 offset?

    Please help’



  • Why are you resetting Z to zero AFTER setting the babysteps? I don't know exactly what the outcome of that will be, but there is no reason to be setting Z 0 and using babysteps together. Use one or the other.



  • I have to set a G30 single probe in the middle before the G29 or the heightmap is a foot over the bed. It’s the solution I was given.

    After the print starts I set baby step. The next time the printer homes or restarts the baby steps are gone. That’s why.



  • Do everything you do except omit the G92 Z0 and tell me if it breaks.


  • Moderator

    Your workflow is a little... weird.

    Have you seen this?
    https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe#Section_Calibrate_the_Z_probe_trigger_height

    So here’s my workflow:
    M561 turn off mesh compensation

    That's fine.

    M208 S1 Z-3

    This isn't recommended. I understand what you want to do, you want to be able to get close to the bed, but changing the axis minimum probably isn't the best way to go. Either use G92 Z10 to tell the firmware you're higher than you actually are, or use M564 S0 to go beyond the set limits temporarily.

    Baby step to the bed until it touches.

    This isn't having the effect you want. You should be using the actual jog buttons or G1 Z movements to get it to touch the bed. The baby stepping is shifting the nozzle but not updating the actual position of the Z. This is why you continue to still have a weird offset.

    G92 Z0

    Once you've used the jog buttons to touch the bed, then yes use G92 Z0

    M500 to save.

    This does nothing in this context. M500 doesn't work like it does on 8-bit boards. In RRF it is used to save certain calculated or measured values to a text file that get read back at boot time when the M501 command is sent. It's mainly used to save delta calibration values or PID heater tuning results. It can be used to save a G31 trigger height, but not in the context you're using it here.

    See: https://duet3d.dozuki.com/Wiki/Gcode#Section_M500_Store_parameters

    G1 Z5

    Yup, that's fine.

    G30 S-1

    Yup that's fine.

    Repeat four times and average the result; then add to G31 in config.g

    That's also correct except for the baby stepping.

    When I probe before a print at temp, I do one G30 in the middle of the bed.
    G29.

    Also correct.

    Once you have a proper G31 value for your probe I think you'll have a lot less problems.

    Post your config.g and your homing files for good measure.


Log in to reply