Configuring Multiple Probes/Endstops
-
I am still in the process of commissioning an IDEX with a Duet 3 mini 5 w/ Roto toolboards. On my Z axis I need a bit of help configuring a BLTouch, scanning Z probe and a high end endstop ("io3.in").
; Configuration file for RepRapFirmware on Duet 3 Mini 5+ WiFi ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.5.4 on Sat Aug 10 2024 17:00:36 GMT-0400 (Eastern Daylight Time) ; General G90 ; absolute coordinates M83 ; relative extruder moves M550 P"M3ID V2" ; set hostname ; Accessories M575 P1 S0 B57600 ; configure PanelDue support ; Network M552 S1 ; configure WiFi adapter M586 P0 S1 ; configure HTTP ; Wait a moment for the CAN expansion boards to become available G4 S2 ; Accelerometers M955 P121.0 I20 ; configure accelerometer on board #121 M955 P122.0 I20 ; configure accelerometer on board #122 ; Smart Drivers M569 P0.1 S1 D2 ; driver 0.1 goes forwards (X axis) M569 P0.2 S1 D2 ; driver 0.2 goes forwards (Y axis) M569 P0.3 S1 D2 ; driver 0.3 goes forwards (Z axis) M569 P0.4 S1 D2 ; driver 0.4 goes forwards (U axis) M569 P121.0 S1 D2 ; driver 121.0 goes forwards (extruder 0) M569 P122.0 S1 D2 ; driver 122.0 goes forwards (extruder 1) ; Motor Idle Current Reduction M906 I30 ; set motor current idle factor M84 S30 ; set motor current idle timeout ; Axes M584 X0.1 Y0.2 Z0.3 U0.4 ; set axis mapping M350 X16 Y16 Z16 U16 I1 ; configure 16X microstepping with interpolation M906 X1750 Y1750 Z800 U1750 ; set axis driver currents M92 X80 Y80 Z400 U80 ; configure steps per mm M208 X-6:220 Y-9:250 Z0:200 U0:229 ; set minimum and maximum axis limits M566 X900 Y900 Z12 U900 ; set maximum instantaneous speed changes (mm/min) M203 X6000 Y6000 Z180 U6000 ; set maximum speeds (mm/min) M201 X500 Y500 Z20 U500 ; set accelerations (mm/s^2) ; Extruders M584 E121.0:122.0 ; set extruder mapping M350 E16:16 I1 ; configure microstepping with interpolation M906 E424:424 ; set extruder driver currents M92 E2682:2682 ; configure steps per mm M566 E150:150 ; set maximum instantaneous speed changes (mm/min) M203 E3600:3600 ; set maximum speeds (mm/min) M201 E3000:3000 ; set accelerations (mm/s^2) ; Kinematics M669 K0 ; configure Cartesian kinematics ; BLtouch M558 K0 P9 C"121.io0.in" H5 F120 T6000 A2 ; configure BLTouch probe via slot #0 G31 P500 X0 Y24 Z0.7 ; set Z probe trigger value, offset and trigger height M950 S0 C"121.io0.out" ; create servo #0 for BLtouch ; Scanning Z probe M558 K1 P11 C"121.i2c.ldc1612" F36000 T36000 M308 A"SZP coil" S10 Y"thermistor" P"121.temp0" ; thermistor on coil ; Endstops M574 X1 P"io1.in" S1 ; configure X axis endstop M574 Y1 P"io2.in" S1 ; configure Y axis endstop M574 Z1 S2 ; configure Z axis endstop M574 U1 P"io4.in" S1 ; configure U axis endstop ; Mesh Bed Compensation M557 X25:175 Y25:175 S40:40 ; define grid for mesh bed compensation ; Sensors M308 S0 P"temp0" Y"thermistor" A"Heated Bed" T100000 B4725 C7.06e-8 ; configure sensor #0 M308 S1 P"121.temp1" Y"thermistor" A"Nozzle" T100000 B4725 C7.06e-8 ; configure sensor #1 M308 S2 P"122.temp0" Y"thermistor" A"Nozzle" T100000 B4725 C7.06e-8 ; configure sensor #2 ; Heaters M950 H0 C"out2" T0 ; create heater #0 (Bed) M143 H0 P0 T0 C0 S120 A0 ; configure heater monitor #0 for heater #0 (Bed) M307 H0 R0.167 K0.222:0.000 D26.05 E1.35 S1.00 B0 ; configure model of heater #0 (Bed) M950 H1 C"121.out0" T1 ; create heater #1 (T0) M143 H1 P0 T1 C0 S300 A0 ; configure heater monitor #0 for heater #1 (T0) M307 H1 R4.287 K0.528:0.232 D2.33 E1.35 S1.00 B0 V24.1 ; configure model of heater #1 (T0) M950 H2 C"122.out0" T2 ; create heater #2 (T1) M143 H2 P0 T1 C0 S300 A0 ; configure heater monitor #0 for heater #2 (T1) M307 H2 R4.334 K0.514:0.239 D2.21 E1.35 S1.00 B0 V24.0 ; configure model of heater #2 (T1) ; Heated beds M140 P0 H0 ; configure heated bed #0 ; Fans M950 F0 C"121.out2" ; create fan #0 T0 Heat Sink Fan M106 P0 C"T0 Heatsink Fan" S0 B0.1 H1 T45 ; configure fan #0 T0 Heat Sink Fan M950 F1 C"121.out1" ; create fan #1 T0 Part Cooling fan M106 P1 C"T0 Part Cooling Fan" S0 L25 X255 B0.1 ; configure fan #1 T0 Part Cooling Fan M950 F2 C"122.out2" ; create fan #2 T1 Heat Sink Fan M106 P2 C"T1 Heatsink Fan" S0 B0.1 H2 T45 ; configure fan #2 T1 Heat Sink Fan M950 F3 C"122.out1" ; create fan #3 T1 Part Cooling Fan M106 P3 C"T1 Part Cooling Fan" S0 L25 X255 B0.1 ; configure fan #3 T1 Part Cooling Fan ; Tools M563 P0 D0 H1 F1 ; create tool #0 T0 M568 P0 R0 S0 ; set initial tool #0 active and standby temperatures to 0C M563 P1 D1 H2 F3 ; create tool #1 T1 M568 P1 R0 S0 ; set initial tool #1 active and standby temperatures to 0C ; Miscellaneous T0 ; select first tool
-
Is there a specific question you have?
-
@Phaedrux Could you take a look at my config and provide some feedback specifically on the endstops. Currently my Z high end isn't working. The documentation is kinda vague on how to configure this many Z axis endstops/probes. That, and I've never configured a scanner before. I almost always have issues configure a high end endstop but I'd like it as a precaution to prevent collision with my electronics. Should I have multiple M574 Z lines to identify each probe/endstop? For the high end should I have M574 Z2 P"i03.in" S1? The documentation reads "A Z probe and a Z endstop can both be configured at the same time. G30 calling the probe setup with M558, and G1 H1 Z moves calling the endstop configured with M574 Z." I dont really get what it's trying to tell me. Currently my high end Z endstop isn't working. I guess we can start with fixing that and then I'll do some testing on the other two. I know I'm a PITA and I sewar I don't mean to be.
-
@SonnyD1 said in Configuring Multiple Probes/Endstops:
M574 Z1 S2
Start by changing that line to:
M574 Z2 S1 P"io3.in"
See https://docs.duet3d.com/en/User_manual/Reference/Gcodes#m574-set-endstop-configuration.
Z probes are configured using M558. Endstops (including Z endstops) are configured using M574. When you have more than one Z probe, use the K parameter of the commands concerned (M558, G30, G31) to distinguish between them.
-
@dc42 Does this look better for all three?
; BLtouch M558 K0 P9 C"121.io0.in" H5 F120 T6000 A2 ; configure BLTouch probe via slot #0 G31 P500 X0 Y24 Z0.7 ; set Z probe trigger value, offset and trigger height M950 S0 C"121.io0.out" ; create servo #0 for BLtouch ; Scanning Z probe M558 K1 P11 C"121.i2c.ldc1612" F36000 T36000 M308 A"SZP coil" S10 Y"thermistor" P"121.temp0" ; thermistor on coil ; Endstops M574 X1 P"io1.in" S1 ; configure X axis low end endstop M574 Y1 P"io2.in" S1 ; configure Y axis low end endstop M574 Z2 S1 P"io3.in" ; configure Z axis high end endstop M574 U2 P"io4.in" S1 ; configure U axis high end endstop
-
@SonnyD1 you appear to be using CAN address 121 for both the BLTouch which I assume is connected to the Roto Tool board and for the SZP. The default CAN address for the SZP is 120. So in lines 7 and 8 of that extract, change 121 to 120.
-
@dc42 said in Configuring Multiple Probes/Endstops:
@SonnyD1 you appear to be using CAN address 121 for both the BLTouch which I assume is connected to the Roto Tool board and for the SZP. The default CAN address for the SZP is 120. So in lines 7 and 8 of that extract, change 121 to 120.
I would have thought he's using the SZP on the Roto toolboard, not an extra SZP CAN board. In which case the CAN address should be the same for the Roto toolboard and SZP.
Ian
-
@droftarts Yea the SPZ is connected to 121. I'm gonna change that back unless are aren't in agreement. I still cant seem to get the BLTouch to deploy. I wired it exactly to the roto toolboard instructions and it does it's little test when I power on the machine.
-
If you send M98 P"config.g" do you get any errors reported?
-
@Phaedrux said in Configuring Multiple Probes/Endstops:
M98 P"config.g"
Yes I get:
Warning: Heater 1 predicted maximum temperature at full power is 496°C
Warning: Heater 2 predicted maximum temperature at full power is 510°C -
@SonnyD1 said in Configuring Multiple Probes/Endstops:
I still cant seem to get the BLTouch to deploy. I wired it exactly to the roto toolboard instructions and it does it's little test when I power on the machine.
If it does the self-test, then the +5V and GND wires are correctly connected. What reading for the Z probe is reported in DWC? Please post your deploy and retract probe macros. Note that they should be named 'deployprobe0.g' and 'retractprobe0.g', so they are specific to the BLTouch, which is probe 0. If the probe number is missing in the name, the deploy and retract macro will be applied to all probes.
If the deploy and retract macros are correct, but the BLTouch doesn't move when you send
M401
and/orM402
(which use probe 0 by default), then either the servo wire is not connected (check continuity of the wire), or it may have been swapped with the signal wire.@SonnyD1 said in Configuring Multiple Probes/Endstops:
Warning: Heater 1 predicted maximum temperature at full power is 496°C
Warning: Heater 2 predicted maximum temperature at full power is 510°CThose are just warnings. If you don't get any errors, your config.g should be okay.
Ian
-
@droftarts They are both named correctly IAW your instructions. Here are the files:
; deployprobe0.g ; called to deploy a physical Z probe ; ; generated by RepRapFirmware Configuration Tool v3.5.4 on Sat Aug 10 2024 17:00:40 GMT-0400 (Eastern Daylight Time) M280 P0 S10 ; deploy BLTouch
; retractprobe0.g ; called to retract a physical Z probe ; ; generated by RepRapFirmware Configuration Tool v3.5.4 on Sat Aug 10 2024 17:00:41 GMT-0400 (Eastern Daylight Time) M280 P0 S90 ; retract BLTouch
I might have a bad crimp. I'm going to redo the connection.
@droftarts said in Configuring Multiple Probes/Endstops:
What reading for the Z probe is reported in DWC?
Where do I find this? Dashboard?
UPDATE: I found the issue. Conducting further tests to confirm. I must have had a bad crimp/connection. I made a whole new wire and now it deploys on command. The connectors on the Roto toolboard are so tiny that crimps are kinda tough. So much as a couple frayed wires and ya lose continuity.
-
-