Need to lower the nozzle
-
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."
-
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
-
-
@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!
-
@jens55 How about this: What the probe trigger height is doing, is telling the system how far away from the bed it detects contact. So if I'm blind folded and have a stick that is 1 meter long, and touch the wall infront of me with it - I know I can move an additional meter towards the wall and not smash my face, but just have my nose touch it.
But if someone TOLD me my stick is 1.5 meter long, but in reality it is still a 1 meter long stick - I'd smash my face because I'd walk towards the wall an addition 1.5 meters from sensing the contact @ 1 meter. -
The penny dropped, the light went on and things make sense.
Thank you kindly for all the help to get things through my thick scull!