====== Z Probe Calibration ======
{{tag> wip, z_offset, setup}}
...work in progress...
{{:shopping.png?150|}}
=== Please Note ===
Calibrating the z probe is NOT the same as setting the gcode z offset.
Also the "probe z offset" set as part of probe calibration is not the "gcode z offset" used to fine adjust the nozzle height for printing. The z offset referred to in probe calibration is the "z probe z offset" or the offset distance between the probe and the nozzle in the z plane. There is also an x and y probe offset.
Like many things Klipper, you'll need to use at least Fluidd to access the Klipper console. You can also use it to edit [[printer.cfg]] if you don't use ssh or other methods.
===== About Probe Calibrate =====
See https://www.klipper3d.org/Probe_Calibrate.html for details on probe calibration (being sure to read the "second page" it links to in the doc "Paper Test"). As the geometry of the toolhead fixes the location of the X and Y probe offsets, and they have already been provided by Elegoo in [[printer.cfg]] we only are concerned with calibrating the probe Z offset in this procedure.
The z probe calibration will need to be performed again if the plate is changed, or the nozzle, hot end or tool head are changed.
==== Warning ====
Latter versions of the Elegoo firmware have purposefully broken the z probe calibration routine from automatically saving the z probe z offset value as part of the last "SAVE_CONFIG" step and may likely need to be manually set instead in [[printer.cfg]]. Make a note of the value produced by ACCEPT and note it as you may need to manual edit / enter this value. Make if using the Klipper managed values in [[printer.cfg]] they actually got stored there and if it's stored as zero remove it and manually enter it into the [PROBE] stanza in the file.
===== Example =====
In the Klipper [[console]] first home the tool and then enter the Probe Calibrate routine.
$ G28
$ PROBE_CALIBRATE
// probe at 141.000,98.000 is z=1.519000
// probe at 141.000,98.000 is z=1.520250
// Starting manual Z probe. Use TESTZ to adjust position.
// Finish with ACCEPT or ABORT command.
// Z position: ?????? --> 6.520 <-- ??????
Use the TESTZ command as described in the documentation to move the nozzle up or down (using suitable - or + values, ) until the nozzle firmly holds onto the paper. (A PostIt Note, sticky side up, is recommended, as it's 0.100mm thick and gives us about the right about of typical nozzle position for printing with minor gcode z offset variation for your filament.)
$ TESTZ Z=-6.420
// Z position: ?????? --> 0.100 <-- 6.520
$ TESTZ Z=-0.030
// Z position: ?????? --> 0.070 <-- 0.100
$ ACCEPT
// probe: z_offset: 1.449
// The SAVE_CONFIG command will update the printer config file
// with the above and restart the printer.
$ SAVE_CONFIG
// Klipper state: Disconnect
// Klipper state: Ready
Note the value for ''probe: z_offset'' here in this example, ''1.449''. This is the probe z offset value. You may need to manually edit this to the ''[PROBE]'' stanza of [[printer.cfg]] if you've got updated Elegoo software.
After ''SAVE_CONFIG'' and the [[Klipper]] firmware soft-restarts, check the bottom of [[printer.cfg]] to make sure the value was properly recorded like so as part of Klipper's managed comments. You should see something like:
#*# <---------------------- SAVE_CONFIG ---------------------->
#*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated.
#*#
...
#*#
#*# [probe]
#*# z_offset = 1.449
#*#
If you see a value like ''z_offset = 0.00'' then you have Elegoo software that has broken this feature and will need to manually edit to remove those ''[probe]'' and ''z_offset'' lines and then add the probe z offset you got from the ''ACCEPT'' step to the main ''[PROBE]'' stanza located prior in the file and manually edit to look similar to this, replacing any zero or other value that was there:
[probe]
pin:^PA11
x_offset: -24.25
y_offset: 20.45
z_offset: 1.449