Test and calibrate a Z probe
- Apply power to the printer.
- Connect to the printer from a browser.
- If the probe needs to be deployed before use (e.g. BLTouch), test the deploy and retract functions, by sending M401 to deploy the probe and M402 to retract it.
- With the Z probe deployed (if applicable) but not close enough to the bed to trigger it, check that the Z probe reading in Duet Web Control is zero or close to zero.
- If your Z probe is of a type that produces a continuous output when triggered (for example IR, inductive, capacitive and switch-type probes), hold a surface below the Z probe to cause it to trigger (or jog the nozzle towards the bed until it is close enough to trigger). Check that the Z probe reading in DWC is correct (about 537 for the Mini Differential IR probe, and about 1000 for most other types).
- If your Z probe produces a short pulse when it triggers (e.g. Smart Effector, Precision Piezo, FSRs with John SL board, BLTouch) then the pulse will probably be too short for you to see. Proceed to the dynamic test.
As above, but either monitor the Z probe reading in PanelDue if you have one, or send G31 via USB every time you want to read it.
- Apply power to the printer.
- Connect to the printer from a browser or via USB.
- If your printer is Cartesian or CoreXY, home X and Y. If it is a Delta, home all.
- Position the print head well above the bed.
- Send command G30 to do a single Z probe. This will deploy the probe (if applicable) and start the head descending or the bed rising.
- Hold a suitable surface below the print head to trigger the Z probe. The probe should trigger and the Z movement should stop.
- If the Z movement doesn't stop, turn off power to the printer before the head crashes into the bed.
- Make sure the dynamic test is successful (Z probe stops when it senses the bed) before doing this.
- Use the X and Y jog buttons to position the nozzle over the centre of the bed
- Jog the nozzle down until it is just touching the bed or just gripping a sheet of paper. If the firmware doesn't let you jog it down far enough, send M564 S0 to disable axis limits.
- Once you have the nozzle touching the bed, send command G92 Z0 to tell the firmware that the head is at Z=0
- Jog the head up by 5 to 10mm
- If the Z probe needs to be deployed, deploy it
- Send command G30 S-1. The nozzle will descend or the bed rise until the probe triggers and the Z height at which the probe stopped will be reported. If you are using a nozzle-contact Z probe, the trigger height will be slightly negative. For any other type of Z probe where the probe triggers before the nozzle contacts the bed, it will be positive.
- Repeat from step 5 two or three times to make sure that the trigger height is consistent.
- In Duet Web Control, go to Settings -> System Editor and edit the config.g file. Set the Z parameter in the G31 command to the trigger height that was reported. Save the file.
There is detailed information here:
Also BeTrue3d.dk has a very detailed tutorial on using a BL touch, including how to setup bed leveling an bed compensation here: