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

    Dead driver or dying board?

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    4
    30
    620
    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.
    • kazolarundefined
      kazolar @dc42
      last edited by

      @dc42 idle is 50% hasn't changed in 7 years I've had this printer. When the issue occurs. Restart cant even fix the current. Manually sending m906 isn't reflected in actual current. It seemed like now 2 drivers are pulling all current down. I was checking during the print yesterday and left over current was holding correctly. I ran 100s of hours with this config and Firmware. Only recent change was addition of szp. Nothing changed in drive config (until I had to stop using 2 of the drivers on the main board) Firmware reboot + reinstall would expect to restore any current settings, all the timeouts don't inspire confidence. Problems are only on the main board all expansions and toolboards are fine. Timeouts and current issues are main board only. Certainly looks like it's dying one driver at a time.

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

        @kazolar if the idle current percentage is 50% then that would explain a drop in current from 2A to 1A. Have you really run 100s of hours using 3.6.0-rc.3 firmware before this issue started occurring?

        You might like to change the idle current percentage to 100% to make sure that the issue isn't that the firmware is incorrectly changing drivers to idle current setting.

        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

        kazolarundefined 1 Reply Last reply Reply Quote 0
        • kazolarundefined
          kazolar @dc42
          last edited by kazolar

          @dc42 I had run 100s of hours on rc1. I had zero issues, i.e only thing i changed was add szp and that is connected to a toolboard, and basically proceeded to print another set of long prints and the issues started. Also issues started gradually. First it could go 15 hrs before there was a problem, then 5, then 3, then 1. Rc3 was updated just yesterday. Also when the problem occurs, it says it's 2 amps, but I can move the carriage by hand and the stepper skips, if I power cycle, it reports 2 amps again, and now the carriage would have belts slip before the stepper skips. Also the current problem on the main board only and expansion boards go in an out of idle and maintain current. I.e 2 amps is 2 amps. I reproduced it, i have 1 carriage on main board, one on expansion, both say 2 amps, 1 i can move by hand, one i cant. Hence why the main board seemed sus. I guess if the problem re-occurs with the 1.02 version of hardware (i am switching all to 48v capable) then we can hunt for idle or current issue as it connect to firmware. I have a big project coming up, we'll see. Board is of warranty, seems something not isolated to 1 driver is malfunctioning.

          PS. If for whatever reason you want to investigate the main board, I won't be re-selling it, so it would go to e-waste, so if you want to cover shipping to UK, you can have it. All my expansion boards are perfectly functional, so I will try to sell them - since I'm switching to 1.02 versions to use 40-48v everywhere.

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

            @kazolar M906 reports the configured current. The actual current may be lower than reported by M906 when the motors are not moving, either because of driver standstill current reduction, or because of RRF idle detection.

            Did you ever run the test i described in this post https://forum.duet3d.com/post/355556 ? That checks for an unlikely error condition that the firmware doesn't check for.

            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

            kazolarundefined 1 Reply Last reply Reply Quote 0
            • kazolarundefined
              kazolar @dc42
              last edited by

              @dc42 yes M569 P5 R1 or in my case M569 P0.5 R1 shows no response -- I had the same issue reproduced on driver 3 also, I tried M569 P3 R1 and M569 P0.3 R1 -- no response. Tried on rc1 and rc3, no response.

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

                @kazolar why are you using the R1 parameter with M569? That parameter is for use with external drivers, and should not produce a response.

                OK, my bad, I made a mistake in my post. The command to use is M569.2 not M569.

                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

                kazolarundefined 1 Reply Last reply Reply Quote 0
                • kazolarundefined
                  kazolar @dc42
                  last edited by kazolar

                  @dc42 ok, I plugged the 2nd carriage into driver 3 -- it's set for 2 amps, but I can move it by hand easily
                  This is what I have in config
                  M906 Y1600:1600 U1600:1600 X2000 V2000 W2000 A2000 Z2000:2000:2000:2000 E750:750:750:750 I50 ; set motor currents (mA) and motor idle factor in per cent
                  5/23/2025, 1:18:38 PM M569 P0.3

                  Drive 3 runs forwards, active low enable, timing fast, mode spreadCycle, ccr 0x10024, toff 4, tblank 2, thigh 200 (375.0 mm/sec), gs=39, iRun=31, iHold=21, current=990.234, hstart/hend/hdec 2/0/0, pos 232
                  It didn't apply -- it was ignored. When I had V mapped to driver 0, it was reporting 2 amps.

                  5/23/2025, 1:19:19 PM M906 V2000
                  5/23/2025, 1:19:26 PM M906 P0.3
                  Drive 3 runs forwards, active low enable, timing fast, mode spreadCycle, ccr 0x10024, toff 4, tblank 2, thigh 200 (375.0 mm/sec), gs=79, iRun=31, iHold=21, current=2005.859, hstart/hend/hdec 2/0/0, pos 232

                  5/23/2025, 2:06:08 PM M569.2 P0.3 R1
                  Register 0x01 value 0x00000005

                  M569.2 P0.3 R1 V7

                  M569.2 P0.3 R1
                  Register 0x01 value 0x00000000

                  I'll try to reproduce it, but it requires a print of some sort, I'll try doing a number of test cycles with V axis mapped to driver 3

                  dc42undefined jay_s_ukundefined 4 Replies Last reply Reply Quote 0
                  • dc42undefined
                    dc42 administrators @kazolar
                    last edited by

                    @kazolar thanks. This really doesn't sound like an issue with the stepper driver chip to me, which is why I'd prefer to identify the cause and rule out (or otherwise) a firmware issue.

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

                      @kazolar motors are not powered initially when you power up the system. if you enable the Y driver using M17 Y does the motor become hard to turn?

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

                        @kazolar said in Dead driver or dying board?:

                        M906 Y1600:1600 U1600:1600 X2000 V2000 W2000 A2000 Z2000:2000:2000:2000 E750:750:750:750 I50 ; set motor currents (mA) and motor idle factor in per cent

                        This line is wrong. You can't set a drive current per motor on an axis, only on extruders.

                        This would be the correct line to use

                        M906 Y1600 U1600 X2000 V2000 W2000 A2000 Z2000 E750:750:750:750 I50 ; set motor currents (mA) and motor idle factor in per cent
                        

                        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 @kazolar
                          last edited by dc42

                          @kazolar it's as @jay_s_uk says; however the extra values you provided in the M906 command should be ignored and the first value provided should be used for all motors on that axis.

                          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

                          kazolarundefined 2 Replies Last reply Reply Quote 0
                          • kazolarundefined
                            kazolar @dc42
                            last edited by

                            @dc42 ok, all being the same -- Z wasn't ever the problem, and extra prams are ignored -- the issue was easier reproduce on my secondary X carriage (V axis) in this case there is no risk of damage to the machine -- carriage just doesn't home properly -- but as per usual it doesn't want to reproduce now. I'll keep trying today -- but gonna run out of time. New boards are coming tomorrow, so if the problem re-appears, I'll update the post.

                            1 Reply Last reply Reply Quote 0
                            • kazolarundefined
                              kazolar @dc42
                              last edited by

                              @dc42 just wondering. Is it possible that M906 implementation has changed and the impact is only on the main board, not the expansion boards, so my extra params are screwing up current assignments? Hence setting current on the expansion boards is working fine, but main board -- it's not, or at least not correctly (timeouts in triple digits on the main board are still unexplained though)

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