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

    Problem with calibration of encoders

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    3
    21
    701
    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.
    • jay_s_ukundefined
      jay_s_uk @Kiryl
      last edited by

      @Kiryl what motors and encoders do you have? what firmware is running on board 61? (send M122 B61 and post the output)

      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

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

        @Kiryl what firmware versions are your main board and your 1HCL expansion boards running? The 1HCL boards may be been programmed with different firmware versions.

        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

        Kirylundefined 1 Reply Last reply Reply Quote 0
        • Kirylundefined
          Kiryl @jay_s_uk
          last edited by

          @jay_s_uk Sorry for the long reply.
          There is an output of the M122 B61 command, and I also attach the datasheet for my encoder with motors.

          Karta katalogowa CS-M22331-L.pdf

          M122 B61
          Diagnostics for board 61:
          Duet EXP1HCL firmware version 3.4.0beta7+8 (2022-01-25 10:33:00)
          Bootloader ID: SAME5x bootloader version 2.4 (2021-12-10)
          All averaging filters OK
          Never used RAM 52272, free system stack 2600 words
          Tasks: Move(notifyWait,0.0%,152) HEAT(notifyWait,0.0%,88) CanAsync(notifyWait,0.0%,69) CanRecv(notifyWait,0.0%,80) CanClock(notifyWait,0.0%,71) TMC(notifyWait,34.3%,360) CLSend(notifyWait,0.0%,152) MAIN(running,63.9%,408) IDLE(ready,0.0%,29) AIN(notifyWait,1.8%,265), total 100.0%
          Last reset 00:04:03 ago, cause: power up
          Last software reset data not available
          Closed loop enabled: yes, pre-error threshold: 0.00, error threshold: 0.00, encoder type rotaryQuadrature, reverse polarity: no, position 2, raw count = 0, tuning mode: 0, tuning error: 0x1, collecting data: no
          Control loop runtime (ms): min=0.003, max=0.028, frequency (Hz): min=11538, max=17857
          Driver 0: pos 0, 1600.0 steps/mm,standstill, SG min 0, mspos 4, reads 54056, writes 23 timeouts 0, steps req 0 done 0
          Moves scheduled 0, completed 0, in progress 0, hiccups 0, step errors 0, maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0
          Peak sync jitter -5/8, peak Rx sync delay 192, resyncs 0/0, no step interrupt scheduled
          VIN voltage: min 24.2, current 24.3, max 24.4
          V12 voltage: min 18.1, current 18.1, max 18.2
          MCU temperature: min 23.7C, current 28.3C, max 28.3C
          Last sensors broadcast 0x00000000 found 0 27 ticks ago, 0 ordering errs, loop time 0
          CAN messages queued 1978, send timeouts 0, received 1231, lost 0, free buffers 37, min 37, error reg 0
          dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0

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

            @Kiryl please upgrade the system firmware to 3.4.5 as there have been a number of fixed for 1HLCs since the firmware you're running

            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
            • Kirylundefined
              Kiryl @dc42
              last edited by

              @dc42 The version of my main boadre firmavire is 3.4.4.
              And the 1HCL version is 3.4.1. But I don't think that's the problem. Because the other 1HCLs have the same version and work fine.

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

                @Kiryl your M122 report indicates that the EXP1HCL at address 61 is running firmware 3.4.0beta7+8. Please upgrade it to version 3.4.4.

                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

                Kirylundefined 2 Replies Last reply Reply Quote 0
                • Kirylundefined
                  Kiryl @dc42
                  last edited by

                  @dc42 Can you please explain to me how to update the firmware if I am using the 6HC main board in SBC mode? I understand that it should be easy, but I can't find a good explanation on the internet.

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

                    @Kiryl M997 B61

                    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

                    Kirylundefined 1 Reply Last reply Reply Quote 0
                    • Kirylundefined
                      Kiryl @dc42
                      last edited by Kiryl

                      @dc42 I used M997 B61 command, and now the output is:

                      M122 B61
                      Diagnostics for board 61:
                      Duet EXP1HCL firmware version 3.4.1 (2022-06-01 21:14:32)
                      Bootloader ID: SAME5x bootloader version 2.4 (2021-12-10)
                      All averaging filters OK
                      Never used RAM 52256, free system stack 169 words
                      Tasks: Move(notifyWait,0.0%,108) HEAT(notifyWait,0.0%,88) CanAsync(notifyWait,0.0%,66) CanRecv(notifyWait,0.0%,79) CanClock(notifyWait,0.0%,72) TMC(notifyWait,35.1%,360) CLSend(notifyWait,0.0%,152) MAIN(running,62.8%,399) IDLE(ready,0.0%,30) AIN(notifyWait,2.0%,265), total 100.0%
                      Last reset 00:00:34 ago, cause: software
                      Last software reset data not available
                      Closed loop enabled: yes, pre-error threshold: 0.00, error threshold: 0.00, encoder type rotaryQuadrature, reverse polarity: no, position 21, raw count = 65532, tuning mode: 0, tuning error: 0x4, collecting data: no
                      Control loop runtime (ms): min=0.004, max=0.017, frequency (Hz): min=10870, max=17045
                      Driver 0: pos -328000, 1600.0 steps/mm,tuning failed, SG min 0, mspos 76, reads 25212, writes 1072 timeouts 0, steps req 424000 done 136004
                      Moves scheduled 5, completed 5, in progress 0, hiccups 0, step errors 0, maxPrep 64, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0
                      Peak sync jitter -5/5, peak Rx sync delay 192, resyncs 0/0, no step interrupt scheduled
                      VIN voltage: min 23.9, current 24.1, max 24.3
                      V12 voltage: min 12.2, current 12.2, max 12.2
                      MCU temperature: min 33.1C, current 33.8C, max 33.8C
                      Last sensors broadcast 0x00000000 found 0 212 ticks ago, 0 ordering errs, loop time 0
                      CAN messages queued 326, send timeouts 0, received 207, lost 0, free buffers 37, min 37, error reg 0
                      dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 295, adv 37076/37196

                      It looks like the firmware is only updated to version 3.4.1.

                      End encoders still do not work

                      1 Reply Last reply Reply Quote 0
                      • Kirylundefined
                        Kiryl @jay_s_uk
                        last edited by

                        @jay_s_uk I used M997 B61 command, and 1HCL updated only to 3.4.1 version. is there are any other ways to update to 3.4.4?

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

                          @Kiryl how did you update the setup to 3.4.4 originally? did you use sudo apt update etc to update through the SBC?
                          Can you post an output of M122?

                          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

                          Kirylundefined 1 Reply Last reply Reply Quote 0
                          • Kirylundefined
                            Kiryl @jay_s_uk
                            last edited by

                            @jay_s_uk I never used sudo apt update, M997 worked fine.
                            And here is a reprieve from M122

                            M122
                            === Diagnostics ===
                            RepRapFirmware for Duet 3 MB6HC version 3.4.4 (2022-10-20 16:19:01) running on Duet 3 MB6HC v1.01 (SBC mode)
                            Board ID: 0JD2M-999AL-D2PS0-6JTDA-3SD6J-1NJ30
                            Used output buffers: 1 of 40 (12 max)
                            === RTOS ===
                            Static ram: 152824
                            Dynamic ram: 66272 of which 76 recycled
                            Never used RAM 131428, free system stack 154 words
                            Tasks: SBC(ready,0.6%,466) HEAT(notifyWait,0.0%,374) Move(notifyWait,0.0%,256) CanReceiv(notifyWait,0.0%,773) CanSender(notifyWait,0.0%,335) CanClock(delaying,0.0%,340) TMC(notifyWait,7.8%,91) MAIN(running,90.8%,1257) IDLE(ready,0.8%,30), total 100.0%
                            Owned mutexes: HTTP(MAIN)
                            === Platform ===
                            Last reset 00:01:08 ago, cause: power up
                            Last software reset at 2022-09-18 06:19, reason: User, GCodes spinning, available RAM 131212, slot 0
                            Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task SBC Freestk 0 n/a
                            Error status: 0x00
                            Step timer max interval 132
                            MCU temperature: min 22.7, current 31.8, max 31.9
                            Supply voltage: min 23.7, current 23.9, max 24.1, under voltage events: 0, over voltage events: 0, power good: yes
                            12V rail voltage: min 12.2, current 12.2, max 12.2, under voltage events: 0
                            Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0
                            Events: 1 queued, 1 completed
                            Driver 0: standstill, SG min 0, mspos 8, reads 54074, writes 11 timeouts 0
                            Driver 1: standstill, SG min 0, mspos 8, reads 54075, writes 11 timeouts 0
                            Driver 2: standstill, SG min 0, mspos 8, reads 54075, writes 11 timeouts 0
                            Driver 3: standstill, SG min 0, mspos 8, reads 54075, writes 11 timeouts 0
                            Driver 4: standstill, SG min 0, mspos 8, reads 54075, writes 11 timeouts 0
                            Driver 5: standstill, SG min 0, mspos 8, reads 54075, writes 11 timeouts 0
                            Date/time: 2022-09-18 06:17:58
                            Slowest loop: 34.06ms; fastest: 0.03ms
                            === Storage ===
                            Free file entries: 10
                            SD card 0 not detected, interface speed: 37.5MBytes/sec
                            SD card longest read time 0.0ms, write time 0.0ms, max retries 0
                            === Move ===
                            DMs created 125, segments created 3, maxWait 34885ms, bed compensation in use: none, comp offset 0.000
                            === MainDDARing ===
                            Scheduled moves 15, completed 15, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
                            === AuxDDARing ===
                            Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
                            === Heat ===
                            Bed heaters -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0
                            === GCodes ===
                            Segments left: 0
                            Movement lock held by null
                            HTTP* is doing "M122" in state(s) 0
                            Telnet is idle in state(s) 0
                            File is idle in state(s) 0
                            USB is idle in state(s) 0
                            Aux is idle in state(s) 0
                            Trigger* is idle in state(s) 0
                            Queue is idle in state(s) 0
                            LCD is idle in state(s) 0
                            SBC is idle in state(s) 0
                            Daemon is idle in state(s) 0
                            Aux2 is idle in state(s) 0
                            Autopause is idle in state(s) 0
                            Code queue is empty
                            === CAN ===
                            Messages queued 434, received 2273, lost 0, boc 0
                            Longest wait 7ms for reply type 6018, peak Tx sync delay 7, free buffers 50 (min 48), ts 343/342/0
                            Tx timeouts 0,0,0,0,0,0
                            === SBC interface ===
                            Transfer state: 5, failed transfers: 0, checksum errors: 0
                            RX/TX seq numbers: 2615/2615
                            SPI underruns 0, overruns 0
                            State: 5, disconnects: 0, timeouts: 0 total, 0 by SBC, IAP RAM available 0x2ad08
                            Buffer RX/TX: 0/0-0, open files: 0
                            === Duet Control Server ===
                            Duet Control Server v3.4.1
                            Code buffer space: 4096
                            Configured SPI speed: 8000000Hz, TfrRdy pin glitches: 0
                            Full transfers per second: 50.79, max time between full transfers: 41.8ms, max pin wait times: 45.0ms/15.8ms
                            Codes per second: 1.46
                            Maximum length of RX/TX data transfers: 3044/1008

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

                              @Kiryl said in Problem with calibration of encoders:

                              Duet Control Server v3.4.1

                              then you've updated your system incorrectly
                              for SBC mode, you should SSH into the pi and use sudo apt update && sudo apt upgrade -y
                              you shouldn't be uploading firmware files and doing it that way

                              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

                              Kirylundefined 1 Reply Last reply Reply Quote 1
                              • Kirylundefined
                                Kiryl @jay_s_uk
                                last edited by

                                @jay_s_uk Hello, I was able to update the system to version 3.4.4, here are the results of the M122 command:

                                M122 B61
                                Diagnostics for board 61:
                                Duet EXP1HCL firmware version 3.4.4 (2022-10-14 11:45:14)
                                Bootloader ID: SAME5x bootloader version 2.4 (2021-12-10)
                                All averaging filters OK
                                Never used RAM 52256, free system stack 163 words
                                Tasks: Move(notifyWait,0.0%,108) HEAT(notifyWait,0.0%,88) CanAsync(notifyWait,0.0%,66) CanRecv(notifyWait,0.0%,79) CanClock(notifyWait,0.0%,70) TMC(notifyWait,36.1%,360) CLSend(notifyWait,0.0%,152) MAIN(running,61.9%,409) IDLE(ready,0.0%,30) AIN(notifyWait,2.0%,265), total 100.0%
                                Last reset 00:06:04 ago, cause: software
                                Last software reset data not available
                                Closed loop enabled: yes, pre-error threshold: 0.00, error threshold: 0.00, encoder type rotaryQuadrature, reverse polarity: no, position -25137, raw count = 40539, tuning mode: 0, tuning error: 0x4, collecting data: no
                                Control loop runtime (ms): min=0.003, max=0.029, frequency (Hz): min=10000, max=17442
                                Driver 0: pos 1171200, 1600.0 steps/mm,tuning failed, SG min 0, mspos 828, reads 14455, writes 3168 timeouts 0, steps req 1804800 done 881639
                                Moves scheduled 15, completed 15, in progress 0, hiccups 0, step errors 0, maxPrep 62, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0
                                Peak sync jitter -5/8, peak Rx sync delay 194, resyncs 0/0, no step interrupt scheduled
                                VIN voltage: min 24.0, current 24.1, max 24.3
                                V12 voltage: min 12.2, current 12.2, max 12.2
                                MCU temperature: min 29.6C, current 36.1C, max 36.1C
                                Last sensors broadcast 0x00000000 found 0 52 ticks ago, 0 ordering errs, loop time 0
                                CAN messages queued 3002, send timeouts 0, received 1896, lost 0, free buffers 37, min 37, error reg 0
                                dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 302, adv 37072/37189

                                But the problem is still the same, the encoder is not calibrated on the axis where the driver is at address 61. When Ireplace it with any other driver, it calibrates without any problems.

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

                                  @Kiryl so replacing the 1HLC with another 1HLC, the same motor calibrates 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

                                  Kirylundefined 1 Reply Last reply Reply Quote 0
                                  • Kirylundefined
                                    Kiryl @jay_s_uk
                                    last edited by

                                    @jay_s_uk Yes

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

                                      @Kiryl one for @Phaedrux or @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

                                      Kirylundefined 1 Reply Last reply Reply Quote 0
                                      • Kirylundefined
                                        Kiryl @jay_s_uk
                                        last edited by

                                        @jay_s_uk Does that mean I have to write to them or just wait for them to respond?

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

                                          @Kiryl wait for them to respond

                                          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
                                          • dc42undefined
                                            dc42 administrators @Kiryl
                                            last edited by

                                            @Kiryl I am sorry that your EXP1HCL board appears to have a problem reading the encoder. Please send a short email to warranty@duet3d.com and include a link to this thread. You will receive a reply with a link to a form to fill in.

                                            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