Need to lower the nozzle



  • So you can't save baby steps. When I start a print the nozzle is just a tiny bit to high. How to I get it to come down a tiny bit so I can save the value.



  • baby step it to the correct amount and then edit config.g G31 Z value by the same amount



  • @jens55 Ahhh thanks. Never thought of that.



  • So I subtract what my baby steps are from the offset in config.g?

    G31 P100 X0 Y0 Z-0.750

    So I got a good layer coming down -0.35 so do I subtract that from Z-0.750?



  • Yes, you got the idea.
    I ALWAYS get confused about subtracting or adding ... try it like you said and if that makes things worse than do it the other way around.

    Ummm, looking at it again and seeing we are dealing with negative numbers, I would try z-1.1



  • @jens55 Thanks I'll give that a try



  • For some reason this confused me also - If you are getting a bit confused, you can just do it from scratch. Give a look here: https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe

    Under the section: Calibrate the Z probe trigger height



  • Hi,

    If the baby step setting you use is positive then the Z value in G31 needs to be smaller by that amount

    And vice versa.

    Frederick



  • @fcwilt True.
    This works too, originally by @OwenD I believe.

    ; 0:/macros/Save-Z
    ; This macro adds the current babystep offset to the Z trigger height and saves it to config-overide.g
    ; ! M501 needs to be in config.g to automatically be recalled on reset. If using multiple filament settings,
    ; and this is for a specific filament type, recommend placing this yielded information in the filament's config.g.
    
    if move.axes[2].babystep !=0                                ; If no babysteps are currently adjusted - exit routine
       echo {"OLD: " ^ sensors.probes[0].triggerHeight ^ " NEW: " ^ sensors.probes[0].triggerHeight + move.axes[2].babystep}
       G31 Z{sensors.probes[0].triggerHeight + move.axes[2].babystep}
       M500 P10:31                                              ; save settings to config-overide.g - G31 P31 saves trigger height, 
    	                                                    ; trigger value, and X and Y offsets for each possible Z probe type. 
    							    ; P10 parameter saves the G10 tool offsets.
    
    else
       echo "Baby stepping is not currently employed, exiting."
    


  • @Kolbi

    Hi.

    When you make the Z probe trigger height larger that moves the nozzle closer to the bed.

    The DWC shows that to increase the gap between the nozzle and bed the value for babystep offset is increased.

    Now it's late and I'm short on sleep but seems to me you need to subtract the babystep offset from the Z probe trigger height.

    Now I haven't found that I always adjust the trigger height just because I adjusted the babystep offset during a print. Sometimes the babystep offset adjust is made because the bed has fully warmed up yet.

    Frederick



  • Thanks for the help guys



  • @fcwilt Hmm, good observation - then should be this:

    echo {"OLD: " ^ sensors.probes[0].triggerHeight ^ " NEW: " ^ sensors.probes[0].triggerHeight + (move.axes[2].babystep * -1)}
    G31 Z{sensors.probes[0].triggerHeight + (move.axes[2].babystep * -1)}
    

    ...not at home so I can't test it.

    UPDATE: My son just tried it, said the updated code worked as expected:

    ; 0:/macros/Save-Z
    ; This macro adds the current babystep offset to the Z trigger height and saves it to config-overide.g
    ; ! M501 needs to be in config.g to automatically be recalled on reset. If using multiple filament settings,
    ; and this is for a specific filament type, recommend placing this yielded information in the filament's config.g.
     
    if move.axes[2].babystep !=0                                ; If no babysteps are currently adjusted - exit routine
       echo {"OLD: " ^ sensors.probes[0].triggerHeight ^ " NEW: " ^ sensors.probes[0].triggerHeight + (move.axes[2].babystep * -1)}
       G31 Z{sensors.probes[0].triggerHeight + (move.axes[2].babystep * -1)}
       echo {"Place either M501 -or- G31 Z" ^ sensors.probes[0].triggerHeight + (move.axes[2].babystep * -1) ^ " in your config.g"}
       M500 P10:31                                              ; save settings to config-overide.g - G31 P31 saves trigger height, 
    	                                                    ; trigger value, and X and Y offsets for each possible Z probe type. 
    							    ; P10 parameter saves the G10 tool offsets.
     
    else
       echo "Baby stepping is not currently employed, exiting."
    

    @Elvis0z, I apologize for feeding you bunk code. Give this above a shot and let me know if it helps.

    Cheers,
    Kolbi



  • @Kolbi Thanks Kolbi



  • @Kolbi

    Hi,

    Why are you multiplying by -1 rather than just subtracting?

    Frederick



  • @fcwilt said in Need to lower the nozzle:

    Why are you multiplying by -1 rather than just subtracting?

    😂 Yeah... as we were talking the mechanics of it at work, that was the outcome... lmao

    But... it's all the same.

    ; 0:/macros/Save-Z
    ; This macro adds the current babystep offset to the Z trigger height and saves it to config-overide.g
    ; ! M501 needs to be in config.g to automatically be recalled on reset. If using multiple filament settings,
    ; and this is for a specific filament type, recommend placing this yielded information in the filament's config.g.
     
    if move.axes[2].babystep !=0                                ; If no babysteps are currently adjusted - exit routine
       echo {"OLD: " ^ sensors.probes[0].triggerHeight ^ " NEW: " ^ sensors.probes[0].triggerHeight - move.axes[2].babystep}
       G31 Z{sensors.probes[0].triggerHeight - move.axes[2].babystep}
       echo {"Place either M501 -or- G31 Z" ^ sensors.probes[0].triggerHeight - move.axes[2].babystep) ^ " in your config.g."}
       M500 P10:31                                              ; save settings to config-overide.g - G31 P31 saves trigger height, 
    	                                                    ; trigger value, and X and Y offsets for each possible Z probe type. 
    							    ; P10 parameter saves the G10 tool offsets.
     
    else
       echo "Baby stepping is not currently employed, exiting."
    


  • Why are you writing to config-overide.g rather than directly to config.g? Is it simply because there is no mechanism to write to another file name?
    Also, my config.g specifies an offset of +3.75. When I test run the macro with a babystep value of -0.05 I end up with a total offset of +3.80 which seems odd (I was expecting +3.70) ... but then this could be because of my general confusion about adding or subtracting babysteps.



  • I writing to config.g



  • @jens55 I'm not sure that you could directly edit the 0:/sys/config.g with the information. In the script about it uses M500 P10:31 to save the particulars to the override file, will be pulled into the config.g processing so long as M501 is present within it.



  • Do you have to to M501 at the end of the config.g. Ahhh just read the code in your macro



  • Thanks. I am not up to speed with the newfangled programming stuff so I was not sure.



  • @jens55 No worries, I'm still getting up to speed too.



  • @jens55 said in Need to lower the nozzle:

    Also, my config.g specifies an offset of +3.75. When I test run the macro with a babystep value of -0.05 I end up with a total offset of +3.80 which seems odd (I was expecting +3.70) ... but then this could be because of my general confusion about adding or subtracting babysteps.

    A larger Z trigger height moves the nozzle closer to the bed.

    A negative baby step offset value moves the nozzle closer to the bed.

    The Z trigger height tells the firmware what the Z position is when the Z probe
    triggers.

    As to adding/subtracting:

    If the trigger height is 5mm then to move to Z=0 the firmware has to move the nozzle 5mm closer to the bed.

    If the trigger height is 10mm then to move to Z=0 the firmware has to move the nozzle 10mm closer to the bed.

    So for a given trigger height if the nozzle at Z=0 is too far away from the bed the trigger height needs to be made larger to have the nozzle move closer to the bed.

    Frederick



  • ROFL .... do you realize that you just short-circuited my brain?
    Give me a few minutes to re-boot and I will be operational again.
    I knew I shouldn't have asked .....

    I am not in front of the printer but I will try things 'live' tomorrow to see if I can understand it 😞



  • Hi,

    OK how about this.

    If the Z trigger height is set to 5mm but the Z position when the probe triggers is actually 6mm (because the trigger height value is wrong) when the firmware moves the 5mm to what it thinks is Z=0 the actual position will be Z=1.

    Frederick



  • Thanks for trying but the only way this will sink in is if I do it myself directly on the printer!


Log in to reply