• Tags
  • Documentation
  • Order
  • Register
  • Login
Duet3D Logo Duet3D
  • Tags
  • Documentation
  • Order
  • Register
  • Login

Duet3MB6HC with Duet3 scanning Z probe

Scheduled Pinned Locked Moved
Using Duet Controllers
3
22
1.1k
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • undefined
    R006
    last edited by 8 Aug 2024, 05:03

    Hey,

    I am confused. How do I configure the Duet 3 MB6HC with the Duet 3 scanning Z probe? Which pin should I use? Can I use any I/O pins?

    I want to connect it to io7.in, Is this possible?

    undefined 1 Reply Last reply 8 Aug 2024, 05:13 Reply Quote 0
    • undefined
      jay_s_uk @R006
      last edited by 8 Aug 2024, 05:13

      @R006 it used CAN-FD, not io pins

      Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

      undefined 1 Reply Last reply 8 Aug 2024, 05:34 Reply Quote 0
      • undefined
        R006 @jay_s_uk
        last edited by 8 Aug 2024, 05:34

        @jay_s_uk

        Okay, thanks.

        In my setup, I am using 2 EXP1XD boards. Could you please help me configure this?

        undefined 1 Reply Last reply 8 Aug 2024, 06:08 Reply Quote 0
        • undefined
          jay_s_uk @R006
          last edited by 8 Aug 2024, 06:08

          @R006 you would connect it to the out of the second 1XD. That would be easiest. Or get a tool distribution board and connect that to the out of the 1XD and connect the SZP to that. Would make the wiring slightly easier. Then you would just need to find a source for the 5v supply. You could take that from one of the 1XD, from the 6HC or connect a bucket converter

          Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

          undefined 1 Reply Last reply 8 Aug 2024, 07:18 Reply Quote 1
          • undefined
            R006 @jay_s_uk
            last edited by R006 8 Aug 2024, 08:54 8 Aug 2024, 07:18

            @jay_s_uk
            thanks.
            and configure like this?
            M558 K1 P11 C"120.i2c.ldc1612" F36000 T36000
            M308 A"SZP coil" S10 Y"thermistor" P"120.temp0"
            G31 K1 Z2 Y-17
            M558.2 K1 S15 R101133
            M557 X-140:140 Y-90:80 S10

            But I have only one Z probe for leveling, so I do not need to use the K parameter, right?

            How does auto-levelling work with this? Do I have to use a BLTouch for auto-levelling?

            undefined undefined 2 Replies Last reply 8 Aug 2024, 09:53 Reply Quote 0
            • undefined
              jay_s_uk @R006
              last edited by 8 Aug 2024, 09:53

              @R006 said in Duet3MB6HC with Duet3 scanning Z probe:

              configure like this?
              M558 K1 P11 C"120.i2c.ldc1612" F36000 T36000
              M308 A"SZP coil" S10 Y"thermistor" P"120.temp0"
              G31 K1 Z2 Y-17
              M558.2 K1 S15 R101133
              M557 X-140:140 Y-90:80 S10

              But I have only one Z probe for leveling, so I do not need to use the K parameter, right?

              Correct.

              I've only used one to scan the bed. You may be able to set it up for auto levelling

              Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

              undefined 1 Reply Last reply 8 Aug 2024, 10:52 Reply Quote 1
              • undefined
                R006 @jay_s_uk
                last edited by R006 8 Aug 2024, 10:54 8 Aug 2024, 10:52

                @jay_s_uk

                okay.

                this is my bed.g. it's correct or i have to change it?

                ; P 1
                G30 P0 X150 Y150 Z-9999
                ; P 2
                G30 P1 X150 Y450 Z-9999
                ; P 3
                G30 P2 X450 Y450 Z-9999
                ; P 4
                G30 P3 X450 Y150 Z-9999 S4
                

                auto-levelling done with scan probe? or i have to use bl-touch for that?

                undefined 1 Reply Last reply 8 Aug 2024, 10:52 Reply Quote 0
                • undefined
                  jay_s_uk @R006
                  last edited by 8 Aug 2024, 10:52

                  @R006 looks fine to me

                  Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

                  1 Reply Last reply Reply Quote 1
                  • undefined
                    R006 @R006
                    last edited by 8 Aug 2024, 11:18

                    @jay_s_uk

                    How does auto-levelling work with this? Do I have to use a BLTouch for auto-levelling?

                    undefined 1 Reply Last reply 8 Aug 2024, 12:03 Reply Quote 0
                    • undefined
                      droftarts administrators @R006
                      last edited by 8 Aug 2024, 12:03

                      @R006 Like all inductive probes, the SZP coil reading changes with temperature, so you need another probe to set the Z offset each time, unless you are always using it at the exact same temperature.

                      I think you have used the gcode from the SZP wiki page to configure your probe, but you need to calibrate it for you specific machine, see https://docs.duet3d.com/User_manual/Tuning/scanning_z_probe_calibration#calibration

                      Once the Z offset is set, and the SZP is calibrated, you should be able to use it for auto-levelling. Use G30 with the K parameter to tell it what probe to use, in your case K1, eg

                      G30 K1 P0 X150 Y150 Z-9999 ; P1
                      G30 K1 P1 X150 Y450 Z-9999 ; P2
                      G30 K1 P2 X450 Y450 Z-9999 ; P3
                      G30 K1 P3 X450 Y150 Z-9999 S4 ; P4
                      

                      Ian

                      Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                      undefined 1 Reply Last reply 9 Aug 2024, 05:53 Reply Quote 0
                      • undefined
                        R006 @droftarts
                        last edited by R006 8 Sept 2024, 05:54 9 Aug 2024, 05:53

                        @droftarts
                        okay, thanks.

                        I am having trouble selecting the input port for the scan probe in the RRF configuration tool.

                        I am only using a scanning Z probe for auto-levelling and mesh bed compensation, but I am confused about how to configure it. (it's possible with scan Z probe?)

                        Could you please explain how to set this up and provide example files for bed.g and config.g?

                        and which input pin i have to used from Duet3 EXP1XD?

                        undefined 1 Reply Last reply 9 Aug 2024, 10:24 Reply Quote 0
                        • undefined
                          droftarts administrators @R006
                          last edited by 9 Aug 2024, 10:24

                          @R006 said in Duet3MB6HC with Duet3 scanning Z probe:

                          I am having trouble selecting the input port for the scan probe in the RRF configuration tool.

                          The SZP is CAN connected, so it should have a CAN address. If your CAN wiring is correct, and you haven't changed the CAN address on the SZP, it should be 120. You can check in DWC if it is showing up, in Settings > Machine-Specific, or look under 'boards' in the Object Model plugin.

                          I am only using a scanning Z probe for auto-levelling and mesh bed compensation, but I am confused about how to configure it. (it's possible with scan Z probe?)
                          Could you please explain how to set this up and provide example files for bed.g and config.g?

                          The example I gave above is the bed.g file, using the second probe. You already have it set up in config.g. However...

                          and which input pin i have to used from Duet3 EXP1XD?

                          This makes me think you haven't understood how to wire the SZP. Please post a picture of your wiring to the SZP.

                          You need to connect:

                          • the CAN wires from the CAN OUT of the EXP1XD to the SZP. This will be an RJ11 connector from the 1XD, wired to the 4-pin JST PA connector on the SZP. Make sure you connect CAN_L from the 1XD to CAN_L on the SZP, and CAN_H from the 1XD to CAN_H on the SZP
                          • the power wires, which require 5V and GND. You could connect these from IO0, IO1 or IO2 on the 1XD, to the 4-pin JST PA connector on the SZP.

                          Lastly, CAN termination. Assuming you have the termination jumpers on the last 1XD on the CAN bus, then:

                          • if then CAN wire to the SZP is LESS than 1m, you should be able to connect the SZP as a 'stub', and leave the CAN termination jumpers on the 1XD.
                          • if the CAN wire between the 1XD and SZP is MORE than 1m, you will need to remove the CAN termination jumpers from the 1XD, and solder the CAN termination jumper on the back of the SZP, see https://docs.duet3d.com/Duet3D_hardware/Duet_3_family/Duet_3_Scanning_Z_Probe#terminating-resistor

                          Ian

                          Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                          undefined 1 Reply Last reply 20 Aug 2024, 10:04 Reply Quote 1
                          • undefined
                            R006 @droftarts
                            last edited by 20 Aug 2024, 10:04

                            @droftarts
                            Thank you for the explanation.
                            Please check the code below.

                            M558 P11 C"41.EXP1XD" F36000 T36000    
                            G31 Z2 Y0 X0                               
                            M558.2 S15 R101133                          
                            M557 X0:550 Y0:550 S20
                            
                            undefined 1 Reply Last reply 20 Aug 2024, 10:13 Reply Quote 0
                            • undefined
                              droftarts administrators @R006
                              last edited by 20 Aug 2024, 10:13

                              @R006 said in Duet3MB6HC with Duet3 scanning Z probe:

                              M558 P11 C"41.EXP1XD" F36000 T36000

                              This is incorrect. The SZP is a completely separate CAN board from the 1XD, so the C parameter should reference the SZP directly, not the 1XD. Your C parameter isn't even a real pin. The SZP should show up in the list of CAN boards in DWC > Settings > Machine-specific. Please show how you have wired it.

                              If you have another probe, eg BLTouch, you need to specify the SZP as another probe with the K parameter. So it should look like the documentation https://docs.duet3d.com/Duet3D_hardware/Duet_3_family/Duet_3_Scanning_Z_Probe#scanning-z-probe ie:

                              M558 K1 P11 C"120.i2c.ldc1612" F36000 T36000
                              

                              Ian

                              Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                              undefined 1 Reply Last reply 19 Dec 2024, 09:25 Reply Quote 0
                              • undefined
                                R006 @droftarts
                                last edited by 19 Dec 2024, 09:25

                                @droftarts @dc42
                                hey, sorry for the late reply.

                                I have attached an image of the wiring for the SZP with the Duet3 and its configuration.

                                20241219_123050.jpg

                                SZP configuration in config.g

                                M558 K0 P11 C"120.i2c.ldc1612" F36000 T36000    ; Configure SZP as probe 1, type 11, on CAN address 120
                                M308 A"SZP coil" S10 Y"thermistor" P"120.temp0" ; Thermistor on SZP coil
                                G31 K0 Z2 Y-17                                  ; Define probe 1 offsets and trigger height
                                M558.1 K0 S1.7.
                                M558.2 K0 S15 R101133                           ; Set drive current and reading offset
                                

                                I am doing the following steps using DWC. Please check this. However, when I run G30 K0 S-1, it gives the following error:
                                G30 K0 S-1
                                Error: M300: Probe already triggered at start of probing move

                                DWC Commands & it's output:

                                G30 K0 S-1
                                Error: M300: Probe already triggered at start of probing move
                                M558.1 K0
                                Scanning probe coefficients [-4.805e+0, -3.410e+0, 0.000e+0, 0.000e+0]
                                Scanning probe coefficients [-4.805e+0, -3.410e+0, 0.000e+0, 0.000e+0], reading at trigger height 9050, RMS error 4.143mm
                                M558.2 K0 S-1
                                Calibration successful, sensor drive current is 15, offset is 135750
                                M558.2 K0
                                Sensor drive current is 15, offset is 101133
                                M558
                                Z Probe 0: type 11, input pin 120.i2c.ldc1612, min interval 2ms, dive heights 5.0,5.0mm, probe speeds 36000,36000,36000mm/min, travel speed 36000mm/min, recovery time 0.00 sec, heaters normal, max taps 1, max diff 0.03
                                

                                I have some questions:

                                1. Is it necessary to connect the BL-Touch the first time to calibrate the Z height?
                                2. I am doing tabletop testing. Is this the correct way to calibrate the SZP, or should it be done on the machine?
                                3. Please check my configuration and wiring of the SZP. Is it correct?
                                4. Could you please explain a simpler way to calibrate it? I have read the documentation, but it is quite difficult to understand.

                                undefined 1 Reply Last reply 19 Dec 2024, 11:01 Reply Quote 0
                                • undefined
                                  droftarts administrators @R006
                                  last edited by 19 Dec 2024, 11:01

                                  @R006 said in Duet3MB6HC with Duet3 scanning Z probe:

                                  1. Is it necessary to connect the BL-Touch the first time to calibrate the Z height?

                                  No, but you need to set the Z height somehow. As we say here https://docs.duet3d.com/en/User_manual/Tuning/scanning_z_probe_calibration#calibration

                                  Set the Z datum (Z=0), either by homing Z using another probe, or by moving the nozzle to just touch the bed and send G92 Z0.

                                  2. I am doing tabletop testing. Is this the correct way to calibrate the SZP, or should it be done on the machine?

                                  It should be done on the machine. The SZP coil needs to be set at the correct height ie 4-5mm above the bed surface for calibration.

                                  3. Please check my configuration and wiring of the SZP. Is it correct?

                                  There's an extra full stop after the M558.1 line in your config.g. Probably not that important:
                                  M558.1 K0 S1.7.

                                  I can't tell regarding the wiring. Have you soldered the SZP 5V, GND and CAN wires to the back of the 1XD? Do the CAN synchronisation LEDs flash in time? Does the SZP show up in the list of boards in DWC, and are the firmware versions the same? Do you get a response if you send M122 B120?

                                  I can't see the coil. Is it under the SZP board? If so, most likely it is picking up the SZP board, and is too close, which is why you get the 'already triggered' message.

                                  4. Could you please explain a simpler way to calibrate it? I have read the documentation, but it is quite difficult to understand.

                                  It's going to be impossible to calibrate it fully in a bench set up. It needs to be mounted to a machine. See the mounting instructions here: https://docs.duet3d.com/en/User_manual/Tuning/scanning_z_probe_calibration#mounting

                                  You might just be able to do the M558.2 calibration (drive level and reading offset) on a bench setup, if you can hold the coil securely 4mm above a surface that mimics the bed (it must be metallic). But the M558.1 calibration (height vs reading) will be impossible unless you have it set up on a Z stage for accurate movement. And, most likely, both of these calibrations will change once you put it on the machine.

                                  If there's a specific part you are struggling with, please let me know.

                                  Ian

                                  Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                                  undefined 2 Replies Last reply 20 Dec 2024, 04:37 Reply Quote 0
                                  • undefined
                                    R006 @droftarts
                                    last edited by R006 20 Dec 2024, 04:37

                                    Thank you @droftarts

                                    There's an extra full stop after the M558.1 line in your config.g. Probably not that important:
                                    M558.1 K0 S1.7.

                                    it's typing mistake.

                                    In my setup, I am using only the SZP. When I run G30 K0 S-1, it gives me the error "Probe already triggered at start of probing move."

                                    Can I use G30 K0 S-1 to measure the height from the bed to the SZP?

                                    I have mounted the SZP 4mm above the bed, and at X0 Y0 Z0, the calibration data is:
                                    "Scanning probe coefficients [4.546e-1, -3.829e-4, -8.222e-10, 1.247e-15]"

                                    Where should I set this calibration data?
                                    @droftarts @dc42 @Phaedrux

                                    1 Reply Last reply Reply Quote 0
                                    • undefined
                                      R006
                                      last edited by R006 21 Dec 2024, 11:14

                                      @droftarts, I am waiting for your response.

                                      Please check my config.g file:

                                      M558 K0 P11 C"100.i2c.ldc1612" F36000 T36000    ; configure SZP as probe 1, type 11, on CAN address 120
                                      M308 A"SZP coil" S10 Y"thermistor" P"100.temp0" ; thermistor on SZP coil
                                      G31 P500 K0 Z3 Y-17 H10                                 ; define probe 1 offsets and trigger height
                                      M558.2 K0 S23 R164530
                                      M558.1 K0 S2
                                      

                                      Let me know if I am doing something wrong.

                                      At some points, I get trigger heights like 3.00, -2.55, or -2.99.

                                      In DWC, my Z-probe value is not steady; it fluctuates between 0, 9097, and 999999.
                                      why does it fluctuate? @droftarts

                                      I am using a proximity sensor for homing the Z-axis.

                                      1 Reply Last reply Reply Quote 0
                                      • undefined
                                        R006 @droftarts
                                        last edited by 2 Jan 2025, 05:38

                                        @droftarts
                                        i am waiting for your reply.

                                        undefined 1 Reply Last reply 22 Jan 2025, 17:26 Reply Quote 0
                                        • undefined
                                          droftarts administrators @R006
                                          last edited by 22 Jan 2025, 17:26

                                          @R006 Apologies for the slow reply, I was away for an extended period of time over Christmas and New Year, and have finally caught back up.

                                          I have mounted the SZP 4mm above the bed, and at X0 Y0 Z0

                                          If you mean the SZP is 4mm above the bed when the nozzle is touching the bed, this is wrong. Yes, the SZP should be calibrated 4mm above the bed, but the nozzle should not be on the bed. Ideally, the SZP should be 4mm above the bed when the nozzle is 2mm above the bed, ie at Z2, so that it doesn't hit the bed when scanning. See https://docs.duet3d.com/en/User_manual/Tuning/scanning_z_probe_calibration#mounting

                                          Where should I set this calibration data?

                                          We advise NOT setting this, but calibrating each time you do a SZP scan. This is because the SZP coil readings change with temperature. It is possible to set it and add it to config.g; see https://docs.duet3d.com/User_manual/Reference/Gcodes#m5581-calibrate-set-or-report-height-vs-reading-of-scanning-z-probe
                                          When setting, ignore the first parameter reported from the calibration. The 2nd, 3rd and 4th are A, B and C. Your result of "Scanning probe coefficients [4.546e-1, -3.829e-4, -8.222e-10, 1.247e-15]" would become:
                                          M558.1 K1 A-3.829e-4 B-8.222e-10 C1.247e-15

                                          Please check my config.g file

                                          M558.2 K0 S23 R164530
                                          

                                          This calibration seems high, and is probably causing the fluctuating readings. I'd guess that you moved up from Z0 to Z2 or Z4, so the SZP is actually 6 or 8mm from the bed when you did the calibration. A typical drive level is around 15 for the 12mm coil. Which coil are you using? Higher or lower drive level settings may cause sporadic 999999 readings. If you get these, try adjusting the Z height you do the M558.2 K1 S-1 calibration at.

                                          Ian

                                          Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                                          undefined 1 Reply Last reply 24 Jan 2025, 10:29 Reply Quote 0
                                          • First post
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA