A Z probe can be used to accurately, automatically and repeatably set the Z height, assist in the manual adjustment of the bed level, and/or allow automatic correction/compensation for errors of bed squareness and flatness. On a delta machine, it can automatically calibrate the machine dimensions.
Differing Z probe technologies vary in their ability to deliver reliability, simplicity, accuracy and low cost and no single type predominates. For a comparison of advantages and disadvantages for various Z probe options see Choosing a Z probe.
Once you have the probe connected, see how to:
If you don't have a Z probe, you can still use mesh bed compensation and other features normally associated with a Z probe. See Mode 0 below.
You can connect a Z probe directly to your Duet.
Caution! The following table shows the pinout out by function, and NOT the physical order. Check the wiring diagram of your Duet for the correct pinout order. For example, the pinout of the 5-pin IO_ connectors on Duet 3 is NOT the same as the pinout of the 5-pin Z Probe connector on Duet 2 Maestro!
Duet 3 IO_x pin label | Duet 2 WiFi/Ethernet pin label | Duet 2 Maestro pin label | Purpose |
---|---|---|---|
IN | IN | IN | Input from Z probe |
GND | GND | GND | Ground |
OUT | MOD | MOD | Control signal for some types of Z probe |
3.3V | 3.3V | 3.3V | Power to Z probe |
5V | - | 5V | 5V power to Z probes that need it (e.g. BLTouch) |
Note: The MOD pin on the Duet 2 WiFi/Ethernet is NOT PWM capable, so can't be used to control a servo. The OUT pin on Duet 3 and the MOD pin on the Duet 2 Maestro are PWM capable, and can control a servo (eg to deploy BLTouch).
The M558 Gcode configures the firmware for your Z probe. Using the P parameter configures the firmware to recognise the output mode of the Z probe you are using. For example, M558 P1 selects Z probe mode 1.
The following table gives an overview of the different Z probe modes.
Mode | Probe type | Control signal (MOD or OUT pin) |
---|---|---|
0 | No probe | Not used |
1 | Analogue probe | HIGH |
2 | Analogue probe with modulation | Modulation (IR LED on/off control) |
3 | Analogue probe | LOW |
5 | Digital probe | HIGH during probing, LOW at other times |
8 | Digital probe, unfiltered | HIGH during probing, LOW at other times |
9 | BLTouch | OUT (Duet 3) and MOD (Duet 2 Maestro) can be configured to control deployment/retraction. MOD on Duet 2 WiFi/Ethernet is not PWM capable, so use heater pin on expansion port instead. |
10 | Z motor stall detection | Not used |
Z Probe Mode details
Select this mode if you have no Z probe. When the firmware tries to execute a command to probe the bed, it will instead show a dialogue in Duet Web Control, and also on Panel Due, asking you to jog the head down until the nozzle just touches the bed and then press the OK button.
This is a probe with an analog output connected to the Z probe connector. The probe output must rise as it gets closer to the bed. If the probe output falls as it gets closer, invert the probe output by prefixing the input pin name (C parameter) with ! character, in the M558 command. The control signal is driven HIGH.
This is a probe with an analog output that requires the Duet to provide modulation signal and demodulate the returned signal. The probe output rises as it gets closer to the bed. If the probe output falls as it gets closer, invert the probe output by prefixing the input pin name (C parameter) with ! character RRF 3.x in the M558 command. The Duet drives the control signal with a 250Hz square wave. The firmware extracts that part of the analog signal received on the IN pin that is in phase with the modulation.
As mode 1 except that the control signal is driven LOW.
A switch or digital output device connected between the STP or IN and GND terminals of the connector. The only pullup resistor is the 100K nominal pullup in the microcontroller so the sink current requirement is tiny. The input must be active high when triggered.
Select the input pin with the C parameter in the M558 command. Invert the probe output to select active low by prefixing the input pin name (C parameter) with ! character in the M558 command
Similar to mode 5 except that the input is not filtered, for slightly faster response. Supported in firmware 1.20 and later.
Special mode for BLTouch probe. Supported in firmware 1.21 and later.
Use the Z motor stall detection as the Z probe trigger. Supported in firmware 1.21 and later. There are limitations to stall detection and it is not always appropriate for accurate Z probing, however there is a detailed discussion on the forum and some users have had success.
The following table gives an overview of the different Z probe modes.
Mode | Probe type | Control signal (MOD or OUT pin) |
---|---|---|
0 | No probe | Not used |
1 | Analogue probe | HIGH |
2 | Analogue probe with modulation | Modulation (IR LED on/off control) |
3 | Analogue probe | LOW |
4 | Digital probe connected to E0 endstop input, or endstop input set by C parameter | Not used |
5 | Digital probe connected to Z Probe input | HIGH during probing, LOW at other times |
6 | Digital probe connected to E1 endstop input | Not used |
7 | Switch triggering Z endstop | Not used |
8 | Digital probe connected to Z Probe input, unfiltered | HIGH during probing, LOW at other times |
9 | BLTouch with output connected to Z Probe input | OUT (Duet 3) and MOD (Duet 2 Maestro) can be configured to control deployment/retraction. MOD on Duet 2 WiFi/Ethernet is not PWM capable, so use heater pin on expansion port instead. |
10 | Z motor stall detection | Not used |
Z Probe Mode details
Select this mode if you have no Z probe. When the firmware tries to execute a command to probe the bed, it will instead show a dialogue in Duet Web Control, and also on Panel Due if you are running recent Panel Due firmware, asking you to jog the head down until the nozzle just touches the bed and then press the OK button.
This is a probe with an analog output connected to the Z probe connector. The probe output must rise as it gets closer to the bed. If the probe output falls as it gets closer, invert the probe output by adding the I1 parameter in the M558 command. The control signal is driven HIGH.
This is a probe with an analog output that requires the Duet to provide modulation signal and demodulate the returned signal. The probe output rises as it gets closer to the bed. If the probe output falls as it gets closer, invert the probe output by adding the I1 parameter, in the M558 command. The Duet drives the control signal with a 250Hz square wave. The firmware extracts that part of the analog signal received on the IN pin that is in phase with the modulation.
As mode 1 except that the control signal is driven LOW.
The trigger signal is read from the E0 endstop circuit. You can choose whether the signal is high or low when triggered. In firmware 1.15 and earlier this is done by using M574 E0 S1 to select active high, or M574 E0 S0 to select active low. In firmware 1.16 to 2.x, use I1 in the M558 command to select active low, otherwise it defaults to active high.
The device connected to the E0 STP pin must be able to sink 1.5mA for the Duet 2 WiFi and Duet 2 Ethernet, 0.3mA for the Duet 2 Maestro, or 2.1mA for the Duet 0.6 or 0.8.5. In firmware 2.03 and later you can choose a different endstop input using the C parameter of the M558 command.
A switch or digital output device connected between the STP or IN and GND terminals of the connector. The only pullup resistor is the 100K nominal pullup in the microcontroller so the sink current requirement is tiny. The input must be active high when triggered.
Similar to mode 4 except that the Z probe connector is used. In firmware 1.16 and later you can use the I1 parameter in the M558 command to invert the probe signal to select active low.
Similar to mode 4 except that the E1 endstop input is used. Deprecated in firmware 2.03 and later, use mode 4 with parameter C4 instead.
Similar to mode 4 except that the Z endstop input is used. Deprecated in firmware 2.03 and later, use mode 4 with parameter C2 instead.
Similar to mode 5 except that the input is not filtered, for slightly faster response. Supported in firmware 1.20 and later.
Special mode for BLTouch probe. Supported in firmware 1.21 and later.
Use the Z motor stall detection as the Z probe trigger. Supported in firmware 1.21 and later. There are limitations to stall detection and it is not always appropriate for accurate Z probing, however there is a detailed discussion on the forum and some users have had success.
From RRF 3.1.0, you can define multiple probes.
With Duet 2 and earlier Duets: Connect the VCC, GND and OUT pins of the sensor to 3.3V, GND and IN respectively on the Z probe connector, and select mode 1 in the M558 command.
With Duet 3 main board, expansion board or tool board: Connect the VCC, GND and OUT pins of the sensor to 3.3V, GND and IN respectively on an IO probe connector, and select mode 8 in the M558 command. On Duet 3, the IR probe is always in digital mode.
See also DC42's web page on the IR sensor for more on setting up this probe.
See this guide for configuring the strain gauge-based probing on the Smart Effector: Smart effector and carriage adapters for delta printer
Connect as shown in the RepRapPro Ormerod 1 wiring instructions, using the table above to translate between expansion connector pins and Z probe connector pins if necessary, and select mode 1.
Connect as shown in the RepRapPro Ormerod 2/Huxley Duo/Mendel wiring instructions, using the table above to translate between expansion connector pins and Z probe connector pins if necessary, and select mode 2.
If using JohnSL's trinket board: Connect its Vcc, Output and Ground pins to 3.3V, IN and GND on the Z-probe connector respectively and select mode 5.
If not using JohnSL's trinket board: Connect the FSR(s) in parallel, between +3.3V and the IN pin of the Z-probe connector, and connect a potentiometer or fixed resistor between the IN pin and the GND pin. Select mode 1. Choose the value of the fixed resistor to give reliable triggering.
With RRF 1.16 and later it is possible to connect the FSRs between IN and ground instead, and the fixed resistor as a pullup resistor between IN and +3.3V. In this case, invert the probe output by adding the I1 parameter (RRF 1.16 to 2.x), or by prefixing the input pin name (C parameter) with ! character (RRF 3.x), in the M558 command.
See Connecting endstop switches
RRF 3.x: Connect it between the STP or IN and GND pins of the chosen connector and select mode 5. Select the input pin with the C parameter in the M558 command. Prefix the input pin name (C parameter) with ! character in the M558 command if you are using a normally-open switch.
RRF 1.16 to 2.x: Connect it between the STP and GND pins of the E0 connector and select mode 4. Include parameter I1 in the M558 command if you are using a normally-open switch.
RRF 1.15 or earlier: Connect it between the STP and GND pins of the E0 connector and select mode 4. If it is a normally-closed microswitch, then use M574 E0 S1 to select active high trigger level. For normally-open contacts (not recommended), send M574 E0 S0 instead.
Most Piezo kits come with a number of sensors that connect to a small controller board. The controller board connects to the Duet. See these threads for general advice wiring up and configuring Precision Piezo sensors:
https://forum.duet3d.com/topic/2671/
https://forum.duet3d.com/topic/734/
Duet 3, Duet 2 WiFi/Ethernet revision 1.04 or later, Duet 2 Maestro: you can connect the output of the sensor directly to the Z-probe IN pin.
Duet WiFi/Ethernet revision 1.03 or earlier: Connect the output wire of the sensor to the cathode of a diode, and the anode of the diode to the Z probe IN pin. The diode should preferably be a small-signal Schottky diode such as BAT43 or BAT85, but a small signal silicon diode such as 1N4148 works for some people.
All Duets: Connect the sensor ground wire to a ground pin on the Duet, and the sensor's + power wire to a suitable voltage (typically to VIN because these sensors usually need between 6 and 30V power).
Select mode 5 (P5) in the M558 command. Invert the probe output by prefixing the input pin name (C parameter) with ! character (RRF 3.x), or by adding the I1 parameter (RRF 1.16 to 2.x), in the M558 command
If you have a choice between a PNP or a NPN sensor, choose the NPN one because they are simpler to connect to a Duet.
Connect the PNP sensor output wire to one end of a resistor (call this R1), and connect one end of another resistor (call this R2) to GND on the Z-probe connector. Connect the free ends of R1 and R2 together and to the IN pin of the Z-probe connector.
For Duet 3: all IOx.in inputs have a 27K pullup resistor to +3.3V, therefore the value of R2 must be low enough to defeat this. We suggest R2 = 2.2K. Then the value of R1 should be 4.7K to 6.8K if the sensor is powered from +12V; or use 10K to 15K if the sensor is powered from +24V.
For Duet 2 WiFi/Ethernet and Duet 2 Maestro: The values of R1 and R2 should be chosen so that about +3V appears at their junction when triggered. If R2 is 10K, then suitable values of R1 are 30K if the sensor is powered from +12V, and 68K if it is powered from +24V. If you are using the Duet 2 Maestro or the Duet 2 WiFi/ Ethernet revision 1.04 or later, the resistor values are less critical and you can use 10K for both.
Connect the sensor ground wire to Duet ground, and the sensor's + power wire to a suitable voltage (typically to VIN because these sensors usually need between 6 and 30V). An always-on fan connector can be used for this, but make sure you get the polarity right.
Select mode 5 in the M558 command. The signal should not need to be inverted.
Caution! Make quite sure that you connect the sensor output to the IN pin on the Z probe connector. There are 2 versions of the Duet WiFi wiring diagram, and one has the connector reversed with respect to the other. Make sure that the diagram you are using is for the 1.04 revision of the Duet. Connecting the sensor output to the +3.3V pin by mistake will destroy the Duet! Due to the risk of mis-connection, we recommend the wiring method described earlier instead, using two 10K resistors.
Note: on the Duet 2 Maestro and on Duet 2 WiFi/Ethernet revision 1.04 or later, you can instead connect the output of the sensor directly to the IN pin of the Z probe connector because the IN pin is 30V-tolerant. You must still connect a pulldown resistor between IN and GND of the Z probe connector. 10Kohms is a suitable value.
These instructions, except where stated, cover the similar Creality CR Touch as well.
See also: BLTouch Troubleshooting
CHECK YOUR WIRING!
If using a clone BLTouch, or one supplied with a manufacturer's kit, the wiring colours may not match those listed below, which are correct for genuine BLTouch kit from www.antclabs.com. However, the actual pinout of the connector on the probe's PCB is the same, as far as we can tell. See information below.
When viewed from the side with the PCB, as above, the pinout and wire colours for a genuine BLTouch should be, from LEFT to RIGHT:
PCB pinout | GND (Left) | +5V (Left mid) | Control (Middle) | GND (Right mid) | Out (Right) |
---|---|---|---|---|---|
Genuine BLTouch wiring | Brown | Red | Yellow | Black | White |
For clone and BLTouch kits supplied by other companies, e.g. Creality, the wiring colours may be different. For example, we have seen:
PCB pinout (Left to Rigth) | GND | +5V | Control | GND | Out |
---|---|---|---|---|---|
Creality kit (some versions) | White | Black | Yellow | Blue | Red |
Creality kit (most common) | White | Black | Yellow | Red | Blue |
i.e. the wiring colour is reversed, sometimes with different colours for the last two pins.
If in doubt, check the orientation of the connector on the probe PCB by using a multimeter to test for a connection between the GND pins (pins 1 and 4, or 2 and 5 if reversed). This should make it clear the order of the pins on the PCB. Then note the colour of the wire that connects to each pin.
Creality CR Touch kits also use a cable with different colours.
When viewed from the side with the Creality logo, as above, the pinout should be, LEFT to RIGHT:
PCB pinout (Left to Right) | Out | GND | Control | +5V | GND |
---|---|---|---|---|---|
Creality CR Touch (most common order seen) | Blue | Red | Yellow | Black | White |
This is reversed from the BLTouch, mainly because you are looking at the back of the probe PCB, rather than the front.
If in doubt, check the orientation of the connector on the probe PCB by using a multimeter to test for a connection between the GND pins (pins 2 and 5, or 1 and 4 if reversed). This should make it clear the order of the pins on the PCB. Then note the colour of the wire that connects to each pin.
Connect the BLTouch to a PWM-capable IO header. For more information on pin header capability, see the 'Input/Output' section of the hardware overview of the board you are connecting the BLTouch to.
Duet 3 board (link to hardware overview) |
PWM-capable IO headers |
---|---|
Duet 3 MB6HC | IO_4, IO_5 or IO_7 (v0.6 and later) |
Duet 3 6XD | IO_4 or IO_7 |
Duet 3 Mini 5+ | IO_1, IO_2 or IO_3 |
Duet 3 Toolboard 1LC | IO_0 |
Duet 3 Expansion 3HC | IO_1 or IO_4 |
Duet 3 Expansion 1XD | IO_0 or IO_2 |
Connect as follows:
IO_[n] | connector pin | BLTouch pin Colour |
---|---|---|
3.3V | - | - |
IN | OUT | White |
GND | GND | Black + (Brown or Blue) |
OUT | Control | Orange or Yellow |
+5V | +5V | Red |
With older BLTouch (before V3.0), the output is 5V by default. All Duet 3 IO_inputs are 30V tolerant, so it doesn't matter whether you reduce the output of the BLTouch to 3.3V or leave it at 5V.
Connect the BLTouch as follows:
Duet Z Probe connector pin | Duet expansion connector pin | BLTouch pin | Colour | |
---|---|---|---|---|
IN | Out | White | ![]() |
|
GND | GND | Black | ||
5V (pin 1) | +5V | Red | ||
Heater3 (pin 8) | Control | Orange or Yellow | ||
GND (pin 2) | GND | Brown or Blue |
If you have the older BLTouch (before V3.0), the output is 5V by default. However, the Z probe input on Duet 2 WiFi/Ethernet boards prior to version 1.04 is not 5V tolerant.
All BLTouch V3.0 and later are 3.3V output by default, though can be set to 5V output.
The Z probe input on the Duet 2 WiFi/Ethernet rev 1.04 and later is 30V tolerant, so it doesn't matter whether you reduce the output of the BLTouch to 3.3V or leave it at 5V.
First, you need to allocate an unused heater expansion channel to reconfigure as the servo control for the BLTouch. For example, if the E2Heat output is unused, you can use heater 3 which corresponds to the PWM1 connector.
If you have a Duex v0.9 or v0.9a board, check that you have a jumper on the "5V AUX JUMPER SELECT PINS" between the 5V AUX and 5V INT pins. See this thread on the forum for details.
Connect the BLTouch as follows:
Duet Z Probe connector pin | DueX PWM connector pin | BLTouch pin | Colour |
---|---|---|---|
IN | - | Out | White |
GND | - | GND | Black |
- | +5V | +5V | Red |
- | PWM | Control | Orange or yellow |
- | GND | GND | Brown or blue |
If you have the older BLTouch (before V3.0), the output is 5V by default. However, the Z probe input on Duet 2 WiFi/Ethernet boards prior to version 1.04 is not 5V tolerant.
All BLTouch V3.0 and later are 3.3V output by default, though can be set to 5V output.
The Z probe input on the Duet 2 WiFi/Ethernet rev 1.04 and later is 30V tolerant, so it doesn't matter whether you reduce the output of the BLTouch to 3.3V or leave it at 5V.
Connect the BLTouch to the Z probe connector as follows:
Duet Z Probe connector pin | BLTouch pin | Colour | |
---|---|---|---|
IN | Out | White | ![]() |
GND | GND | Black + (Brown or Blue) | |
MOD | Control | Orange or Yellow | |
3.3V | - | - | |
+5V | +5V | Red |
With older BLTouch (before V3.0), the output is 5V by default. The Z probe input on the Duet 2 Maestro is 30V tolerant, so it doesn't matter whether you reduce the output of the BLTouch to 3.3V or leave it at 5V.
If you use one of these pin names, you will not need to invert the output (except on BoB).
M950 S0 C"io7.out" ; Duet 3 MB6HC
M950 S0 C"io3.out" ; Duet 3 Mini 5+
M950 S0 C"exp.heater3" ; Duet 2 WiFi/Ethernet
M950 S0 C"duex.pwm1" ; Duet 2 WiFi/Ethernet + DueX2/5
M950 S0 C"!exp.heater6" ; Duet 2 WiFi/Ethernet + BoB
M950 S0 C"zprobe.mod" ; Duet 2 Maestro
The above examples use GPIO/Servo index 0. If you have other GPIO/Servo pins already configured, change the index to an available number.
You only need to enable the pullup resistor, using the ^ character in front of the pin name, on Duet 2 when using the zprobe.in.
Do not enable the pullup resistor if you are using a Duet 3 input, or a Duet 2 endstop input.
M558 P9 C"io7.in" H5 F120 T6000 ; Duet 3 MB6HC
M558 P9 C"io3.in" H5 F120 T6000 ; Duet 3 Mini 5+
M558 P9 C"^zprobe.in" H5 F120 T6000 ; Duet 2 WiFi/Ethernet, DueX2/5
M558 P9 C"^zprobe.in" H5 F120 T6000 ; Duet 2 Maestro
G31 X20 Y0 Z3.3 P25
In this example the trigger height is 3.3mm (you will need to measure it) and the probe is offset from the head reference point by 20mm in the +X direction.
M280 P0 S10
M280 P0 S90
To test the setup with the nozzle maybe a 100mm up from the bed you can check if the trigger signal is reaching the Duet by attempting to extend the pin by using the following command:
M280 P0 S10
If all is well the web interface should report a value of ”0” or "N/A" in the Z probe column when the pin is extended. You can then lightly touch the extended probe pin to check that the value in the Z probe Column changes to “1000”
You can retract the pin again with
M280 P0 S90
the above two commands are also what should be in /sys/deployprobe.g and /sys/retractprobe.g, respectively. Test these are working correctly by sending M401 to deploy the probe, and M402 to retract the probe.
Before trying to home (and smashing your hot end into the bed repeatedly when it doesn't work), conduct the tests and calibrate the Z probe as described here; see Test and calibrate the Z probe
Important: In the M280 commands in the following, leave out the I1 parameter if the BLTouch is connected to a servo output on a DueX board.
M307 H3 A-1 C-1 D-1
M558 P9 H5 F100 T2000
G31 X0 Y0 Z0 P25
M280 P3 S10 I1
See the important note earlier about including the I1 parameter or not.
M280 P3 S90 I1
As for the Duet 2 WiFi/Ethernet with the following changes:
To test the setup with the nozzle maybe a 100mm up from the bed you can check if the trigger signal is reaching the Duet by attempting to extend the pin by using the following command:
M280 P3 S10 I1
Then put the Sensor in to test mode by inputting the following command:
M280 P3 S120 I1
If all is well the web interface should report a value of ”0” in the Z probe column when the pin is extended. You can then lightly touch the extended probe pin to check that the pin retracts, the value in the Z probe Column should change to “1000”
The BL Touch will continue to cycle deploy in the test mode, to end the test mode enter:
M280 P3 S160 I1
Test deployprobe.g and retractprobe.g are working correctly by sending M401 to deploy the probe, and M402 to retract the probe.
Before trying to home (and smashing your hot end into the bed repeatedly when it doesn't work), conduct the tests and calibrate the Z probe as described here; see Test and calibrate the Z probe
The Touch-Mi is based on an IR end stop with a metal pin for probing in the z direction. While the probe is documented to run at 5v, it can also be run at 3.3v (this has been confirmed with hotends.fr, the manufacturer of the Touch MI). As such, the Touch MI can be connected to the z probe headers of the duet board as shown below.
Alternately, you can connect the Touch-Mi to a 5V pin (from the PanelDue header or from the expansion header) for VCC and to the E0 endstop for GND and IN (use the outer pins of the E0 endstop header).
The Touch-Mi probe is active low. If connected to the z probe port, the M558 configuration should be like this:
M558 P8 F500 H10 I0 T4000
H
should be at least 3mm, but during the first runs with a new probe (or after changing out your bed), it is advisable to increase H to a safe diving height. The example sets diving height at a comfortable triple minimum distance, and you can reduce H if you are sure the probing pin won't catch after deploying and/or drag across the bed surface during moves.
Also, set trigger value, nozzle offset, trigger offset using G31:
G31 P500 Xnnn Ynnn Znnn
See the calibration section for a method to determine z offset.
The Touch-Mi is deployment is triggered via a magnet. As this magnet is usually installed so it triggers deployment by hitting X0 or X(max), the probing should be at a distance to X0/X(max). As such, it is recommended your mesh definition happens a bit inside the outer edges of your bed parameters. For a 220x220 size bed,
M557 could look like this for a 6x6 grid:
M557 X10:210 Y10:210 S40
M557, M558 and G31 P... as described here should be added to config.g.
deployprobe.g:
; deployprobe.g
; this is a manual probe deployment by touching the Touch-Mi Probe
; with the magnet included.
G91 ; relative positioning
G1 Z7 F600 S2 ; lift Z relative to current position
G90 ; absolute positioning
; G1 X0 F1800 ; move X to zero
M291 P"Trigger Magnet" S3 ; prompt for magnet action
retractprobe.g
; retractprobe.g
G0 Z0.5 ; dive to retract probe with magnetic ball bearing
homez.g
; homez.g
; called to home the Z axis
G91 ; relative positioning
G90 ; absoute position
M401 ; deploy probe
G1 X163 Y129 F1800 ; move to middle of bed plus probe offsets
G30 ; home z0
M402 ; retract probe
homeall.z
; homeall.g
; called to home all axes
G91 ; relative positioning
G1 H1 X-225 Y-225 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)
G1 X5 Y5 F6000 ; go back a few mm
G1 H1 X-225 Y-225 F360 ; move slowly to X and Y axis endstops once more (second pass)
G90 ; absoute position
M401 ; deploy probe
G1 X163 Y129 F1800 ; move to middle of bed plus probe offsets
G30 ; home z0
M402 ; retract probe
Calibrate nozzle to zero manually (paper test).
Set Z to zero (G92 Z0
)
Lift nozzle by 5 to 10 mm (G0 Z10
)
Determine probe trigger height (G30 S-1
) and note the result shown on the G-Code console.
Repeat steps 3 and 4 a couple times to ensure the result of G30 S-1
has acceptable repeatability (variance smaller or equal to 0.03mm). Note the average of these repeated measurements.
Set the trigger height in G31 in your config.g
See the connection and configuration guide on the TH3D site.