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

    Scanning Z probe support in RRF 3.5

    Scheduled Pinned Locked Moved
    Beta Firmware
    23
    128
    10.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.
    • flyschaundefined
      flyscha @jay_s_uk
      last edited by

      @jay_s_uk
      Thanks for the reply!

      Here's what I just pulled from it:

      M122 B69
      Diagnostics for board 69:
      Duet SZP firmware version 3.5.0-rc.2 (2023-12-14 08:58:41)
      Bootloader ID: SAMC21 bootloader version 2.10 (2023-11-16)
      All averaging filters OK
      Never used RAM 14496, free system stack 136 words
      Tasks: HEAT(2,nWait,0.1%,131) CanAsync(5,nWait,0.0%,55) CanRecv(3,nWait,0.0%,79) CanClock(5,nWait,0.0%,67) ACCEL(3,nWait,0.0%,53) MAIN(1,running,99.7%,434) IDLE(0,ready,0.0%,27) AIN(2,nWait,0.2%,92), total 100.0%
      Last reset 00:01:38 ago, cause: power up
      Last software reset data not available
      Peak sync jitter 1/4, peak Rx sync delay 198, resyncs 0/0, no timer interrupt scheduled
      VIN voltage: min 4.9, current 4.9, max 5.0
      MCU temperature: min 18.6C, current 20.7C, max 20.7C
      Last sensors broadcast 0x00000000 found 0 132 ticks ago, 0 ordering errs, loop time 0
      CAN messages queued 417, send timeouts 0, received 728, lost 0, errs 0, boc 0, free buffers 18, min 18, error reg 0
      Accelerometer: LIS2DW, status: 00
      Inductive sensor: raw value 37214006, frequency 3.47MHz, current setting 13, ok
      I2C bus errors 316, naks 3, contentions 0, other errors 0

      1 Reply Last reply Reply Quote 0
      • flyschaundefined
        flyscha @dc42
        last edited by

        @dc42 Yes sir, I have done this as well. Not any change in behavior when I save those values in the M558.2 line:

        ; SuperPinda Z-Probe
        M558 P5 C"io3.in" H1.00 F1500:120 T20000 K0 R0.20 S.05  ; Set Z probe type to effector, set pin number, dive height, probing speeds, Z probe number, recovery time tolerance
        G31 P50 X0 Y0 Z0.8675 K0                                ; P50 Z0.8675 Set Z probe trigger value, offset, trigger height (more positive is closer to the bed), probe number
        ;M557 X7.00:249.00 Y10.00:220.00 S80.666666:70          ; Define mesh grid
        
        ; Scanning Z probe
        M558 K1 P11 C"69.i2c.ldc1612" F25000 T30000             ; Set Z probe type to SZP, the axes for which it is used and the dive height + speeds
        G31 Z3 K1                                               ; Set SZP trigger height, Z probe number
        G32                                                     ; Home all then independent Z motor leveling
        G28                                                     ; Home all
        M558.2 K1 S13 R138498                                   ; Z probe number, drive level current (-1 being automatically detected) S13 R138498
        M558.1 K1 S3                                            ; Z probe number, scan height above/below trigger height
        M557 X13:243 Y22:232 S10 			        ; Define mesh grid
        
        flyschaundefined 1 Reply Last reply Reply Quote 0
        • flyschaundefined
          flyscha @flyscha
          last edited by

          I've now switched to the 15mm coil, and I get this when running the M122 command:

          Diagnostics for board 69:
          Duet SZP firmware version 3.5.0-rc.2 (2023-12-14 08:58:41)
          Bootloader ID: SAMC21 bootloader version 2.10 (2023-11-16)
          All averaging filters OK
          Never used RAM 14496, free system stack 136 words
          Tasks: HEAT(2,nWait,0.1%,131) CanAsync(5,nWait,0.0%,55) CanRecv(3,nWait,0.0%,79) CanClock(5,nWait,0.0%,67) ACCEL(3,nWait,0.0%,53) MAIN(1,running,99.7%,434) IDLE(0,ready,0.0%,27) AIN(2,nWait,0.2%,92), total 100.0%
          Last reset 00:00:42 ago, cause: software
          Last software reset data not available
          Peak sync jitter 1/4, peak Rx sync delay 202, resyncs 0/0, no timer interrupt scheduled
          VIN voltage: min 4.9, current 4.9, max 5.0
          MCU temperature: min 24.4C, current 24.4C, max 24.5C
          Last sensors broadcast 0x00000000 found 0 142 ticks ago, 0 ordering errs, loop time 0
          CAN messages queued 199, send timeouts 0, received 285, lost 0, errs 0, boc 0, free buffers 18, min 18, error reg 0
          Accelerometer: LIS2DW, status: 00
          Inductive sensor: raw value 39745043, frequency 3.70MHz, current setting 18, ok
          I2C bus errors 148, naks 3, contentions 0, other errors 0

          Does this still seem high for I2C bus errors?

          1 Reply Last reply Reply Quote 0
          • flyschaundefined
            flyscha @dc42
            last edited by

            @dc42 said in Scanning Z probe support in RRF 3.5:

            I2C doesn't travel long distances well. It was designed for connections between ICs on a single PCB. The signal is pulled to ground actively but relies on pullup resistors to pull it high, which makes it susceptible to noise - and I2C has no error correction protocol. Therefore I advise against using I2C with wire lengths greater than a few cm.

            Could this be my problem possibly, or has this been rectified with the production SZP release? The wires I've run from the 6HC mainboard to the SZP board are around 750mm. I'm just not sure how I could do it differently without mounting the SZP board inside 6HC case, and then running a 750mm ribbon cable to the coil.

            gloomyandyundefined 1 Reply Last reply Reply Quote 0
            • gloomyandyundefined
              gloomyandy @flyscha
              last edited by

              @flyscha The i2c connection is only used within the SZP board, the connection between the mainboard to the SZP uses CAN-FD which is designed for that sort of thing, so you don't need to worry about that.

              flyschaundefined 1 Reply Last reply Reply Quote 0
              • flyschaundefined
                flyscha @gloomyandy
                last edited by

                @gloomyandy Well that's good at least! Thank you

                flyschaundefined 1 Reply Last reply Reply Quote 0
                • flyschaundefined
                  flyscha @flyscha
                  last edited by

                  Hey guys, I hope everyone had a great Christmas.

                  Unfortunately, I'm still stuck on the same issue. No progress with the Scanning Z Probe working how it should (calibrating, scanning, etc).

                  I'm getting a few hundred i2c bus errors when I run the M122 command (see a few posts above). Most of the forum posts I've found about i2c problems seem to be when connecting Duet with Duex, but in my case I just have the 6HC board along with the Scanning Z Probe.

                  Any help would be greatly appreciated.

                  gloomyandyundefined 1 Reply Last reply Reply Quote 0
                  • gloomyandyundefined
                    gloomyandy @flyscha
                    last edited by

                    @flyscha Over what period do you get "a few hundred i2c bus errors"? Run M122 b69 then wait say 5 minutes then run M122 b69 and see how many errors (if any) that you get.

                    flyschaundefined 1 Reply Last reply Reply Quote 0
                    • flyschaundefined
                      flyscha @gloomyandy
                      last edited by

                      @gloomyandy Thanks for the reply.

                      When I fire up the machine and I'm trying to get the SZP to calibrate, I get between 150-400 I2C bus errors when I run M122 B69. Letting it sit there for 5 minutes without touching anything, I2C bus errors are over thousand:

                      m122 b69
                      Diagnostics for board 69:
                      Duet SZP firmware version 3.5.0-rc.2 (2023-12-14 08:58:41)
                      Bootloader ID: SAMC21 bootloader version 2.10 (2023-11-16)
                      All averaging filters OK
                      Never used RAM 14496, free system stack 124 words
                      Tasks: HEAT(2,nWait,0.1%,131) CanAsync(5,nWait,0.0%,55) CanRecv(3,nWait,0.0%,79) CanClock(5,nWait,0.0%,67) ACCEL(3,nWait,0.0%,53) MAIN(1,running,99.7%,432) IDLE(0,ready,0.0%,27) AIN(2,nWait,0.2%,92), total 100.0%
                      Last reset 00:44:51 ago, cause: power up
                      Last software reset data not available
                      Peak sync jitter 1/5, peak Rx sync delay 202, resyncs 0/0, no timer interrupt scheduled
                      VIN voltage: min 4.9, current 5.0, max 5.0
                      MCU temperature: min 18.8C, current 24.3C, max 24.3C
                      Last sensors broadcast 0x00000000 found 0 30 ticks ago, 0 ordering errs, loop time 0
                      CAN messages queued 1181, send timeouts 0, received 2612, lost 0, errs 0, boc 0, free buffers 18, min 18, error reg 0
                      Accelerometer: LIS2DW, status: 00
                      Inductive sensor: raw value 39786813, frequency 3.71MHz, current setting 18, ok
                      I2C bus errors 1097, naks 0, contentions 0, other errors 0

                      This could be normal for all I know, I'm just grasping for straws currently.

                      Thanks!

                      dc42undefined 1 Reply Last reply Reply Quote 0
                      • dc42undefined
                        dc42 administrators @flyscha
                        last edited by dc42

                        @flyscha we've traced and fixed the bug that was causing lots of I2C errors on some SZP boards. Please try the SZP firmware build at https://www.dropbox.com/scl/fo/8mwsfwo61tacbyxsu39j9/h?rlkey=zwyd8luhpj7hnanldm4rzm5om&dl=0. It's compatible with main board firmware 3.5.0-rc.2.

                        Duet WiFi hardware designer and firmware engineer
                        Please do not ask me for Duet support via PM or email, use the forum
                        http://www.escher3d.com, https://miscsolutions.wordpress.com

                        flyschaundefined 1 Reply Last reply Reply Quote 0
                        • flyschaundefined
                          flyscha @dc42
                          last edited by

                          @dc42 Thank you for the update! I deleted the Duet3Firmware_SZP.bin file from my SBC's SD card, and put the new file in its place.

                          Regarding the other files from your link, (SZP.map, TOOL1RR.bin, and TOOL1RR.map), do I need to upload/replace those somewhere as well?

                          Just checking because the SZP Documentation page just mentions the Duet3Firmware_SZP.bin file being needed.

                          With only the SZP.bin file replaced, I'm still getting the same errors of:

                          -Error: sensor error during calibration
                          -Error: Bad reading from scanning probe - try recalibrating the probe

                          Here are the diagnostics as well:

                          m122 b69
                          Diagnostics for board 69:
                          Duet SZP firmware version 3.5.0-rc.2 (2023-12-14 08:58:41)
                          Bootloader ID: SAMC21 bootloader version 2.10 (2023-11-16)
                          All averaging filters OK
                          Never used RAM 14496, free system stack 136 words
                          Tasks: HEAT(2,nWait,0.1%,131) CanAsync(5,nWait,0.0%,55) CanRecv(3,nWait,0.0%,79) CanClock(5,nWait,0.0%,67) ACCEL(3,nWait,0.0%,53) MAIN(1,running,99.7%,434) IDLE(0,ready,0.0%,27) AIN(2,nWait,0.2%,92), total 100.0%
                          Last reset 00:06:13 ago, cause: software
                          Last software reset data not available
                          Peak sync jitter 1/5, peak Rx sync delay 207, resyncs 0/0, no timer interrupt scheduled
                          VIN voltage: min 4.9, current 5.0, max 5.0
                          MCU temperature: min 24.9C, current 25.2C, max 25.3C
                          Last sensors broadcast 0x00000000 found 0 76 ticks ago, 0 ordering errs, loop time 0
                          CAN messages queued 1972, send timeouts 0, received 3785, lost 0, errs 0, boc 0, free buffers 18, min 18, error reg 0
                          Accelerometer: LIS2DW, status: 00
                          Inductive sensor: raw value 42133425, frequency 3.92MHz, current setting 13, ok
                          I2C bus errors 1344, naks 3, contentions 0, other errors 0

                          Thanks!

                          jay_s_ukundefined 1 Reply Last reply Reply Quote 0
                          • jay_s_ukundefined
                            jay_s_uk @flyscha
                            last edited by

                            @flyscha that shows your board hasn't updated. the build date is still the RC2 release, not the latest one from dc42

                            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

                            flyschaundefined 1 Reply Last reply Reply Quote 1
                            • flyschaundefined
                              flyscha @jay_s_uk
                              last edited by

                              @jay_s_uk I'm seeing what you're seeing as well, where it's still showing the older version.

                              Given that, the beginning of my last post seems to be the culprit:

                              I deleted the Duet3Firmware_SZP.bin file from my SBC's SD card, and put the new file in its place.

                              Regarding the other files from your link, (SZP.map, TOOL1RR.bin, and TOOL1RR.map), do I need to upload/replace those somewhere as well?

                              Just checking because the SZP Documentation page just mentions the Duet3Firmware_SZP.bin file being needed.

                              jay_s_ukundefined 1 Reply Last reply Reply Quote 0
                              • jay_s_ukundefined
                                jay_s_uk @flyscha
                                last edited by

                                @flyscha you don't need those. the board i have here flashed ok

                                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

                                flyschaundefined 1 Reply Last reply Reply Quote 0
                                • flyschaundefined
                                  flyscha @jay_s_uk
                                  last edited by flyscha

                                  @jay_s_uk Ok thanks! Are you using an SBC?

                                  jay_s_ukundefined 2 Replies Last reply Reply Quote 0
                                  • jay_s_ukundefined
                                    jay_s_uk @flyscha
                                    last edited by

                                    @flyscha no, standalone

                                    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 0
                                    • jay_s_ukundefined
                                      jay_s_uk @flyscha
                                      last edited by

                                      @flyscha if you're using DWC to upload it should ask you to update. if you're pulling the SD card and loading the file you'll need to send M997 B69

                                      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

                                      flyschaundefined 1 Reply Last reply Reply Quote 1
                                      • flyschaundefined
                                        flyscha @jay_s_uk
                                        last edited by

                                        @jay_s_uk Thank you! I for sure ran the M997 B69 after replacing the .bin file on the SD card last night, but maybe something got mixed up when moving bin files around.

                                        I'll try it all again tonight. Much appreciated!

                                        flyschaundefined 1 Reply Last reply Reply Quote 1
                                        • flyschaundefined
                                          flyscha @flyscha
                                          last edited by

                                          @jay_s_uk I tried over and over and over and somehow FINALLY the firmware updated! I must have tried 5 or 6 times, and it just so happened to stick. I won't speak too loudly or else it may scare it back to the previous version.

                                          @dc42 The new firmware was absolutely the fix for me! Now when I run the M122 diagnostics, I get 0 I2C bus errors. Every now and then there are a few naks (always 0 or 3), but that's about it.

                                          When sending the G29 command, I now get scanning probe coefficients, and the entire bed scans without any stops, errors, or hiccups.

                                          Thanks for everyone's help!

                                          dc42undefined 1 Reply Last reply Reply Quote 0
                                          • dc42undefined
                                            dc42 administrators @flyscha
                                            last edited by

                                            @flyscha I'm glad it's working for you.

                                            Duet WiFi hardware designer and firmware engineer
                                            Please do not ask me for Duet support via PM or email, use the forum
                                            http://www.escher3d.com, https://miscsolutions.wordpress.com

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA