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

    Duet 3 Mini 5+ motor driver stop working

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    2
    14
    367
    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.
    • droftartsundefined
      droftarts administrators @Jiarko
      last edited by

      @Jiarko said in Duet 3 Mini 5+ motor driver stop working:

      Driver 0: standstill, SG min 0, read errors 0, write errors 1, ifcnt 25, reads 11406, writes 13, timeouts 1, DMA errors 0, CC errors 0, failedOp 0x71
      Driver 1: standstill, SG min 0, read errors 0, write errors 1, ifcnt 26, reads 11406, writes 14, timeouts 0, DMA errors 0, CC errors 1
      

      There are certainly some driver errors, but I'm not sure what could be causing them. Can you post your config.g? I've asked @dc42 to take a look at the report.

      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

      Jiarkoundefined 1 Reply Last reply Reply Quote 0
      • Jiarkoundefined
        Jiarko @droftarts
        last edited by

        @droftarts thanks for answering!!

        here the config file

        ; Configuration file for Duet 3 Mini 5+ (firmware version 3.3)
        ; executed by the firmware on start-up
        ;
        ; generated by RepRapFirmware Configuration Tool v3.3.16 on Tue May 02 2023 21:46:45 GMT+0200 (Ora legale dell’Europa centrale)
        
        ; General preferences
        M575 P1 S1 B57600                                         ; enable support for PanelDue
        G90                                                       ; send absolute coordinates...
        M83                                                       ; ...but relative extruder moves
        M550 P"ALone"                                             ; set printer name
        M669 K1                                                   ; select CoreXY mode
        
        ; Wait a moment for the CAN expansion boards to start
        G4 S2
        
        ; Network
        M552 S1                                                   ; enable network
        ;M552 S2													  ; enable SSID
        M586 P0 S1                                                ; enable HTTP
        M586 P1 S0                                                ; disable FTP
        M586 P2 S0                                                ; disable Telnet
        
        ; Drives
        M569 P0.0 S0                                              ; physical drive 0.0 goes backwards
        M569 P0.1 S0                                              ; physical drive 0.1 goes backwards
        M569 P0.2 S1                                              ; physical drive 0.2 goes forwards
        M569 P121.0 S1                                            ; physical drive 121.0 goes forwards
        M584 X0.0 Y0.1 Z0.2 E121.0                                ; set drive mapping
        M350 X16 Y16 Z16 E16 I1                                   ; configure microstepping with interpolation
        M92 X100.00 Y100.00 Z640.00 E397.00                       ; set steps per mm
        M566 X480.00 Y480.00 Z60.00 E120.00                       ; set maximum instantaneous speed changes (mm/min)
        M203 X12000.00 Y12000.00 Z180.00 E1200.00                 ; set maximum speeds (mm/min)
        M201 X500.00 Y500.00 Z20.00 E250.00                       ; set accelerations (mm/s^2)
        M906 X1200 Y1200 Z1200 E800 I30                           ; set motor currents (mA) and motor idle factor in per cent
        M84 S30                                                   ; Set idle timeout
        
        ; Axis Limits
        M208 X0 Y0 Z0 S1                                          ; set axis minima
        M208 X490 Y450 Z315 S0                                    ; set axis maxima
        
        ; Endstops
        M574 X2 S1 P"121.io2.in"                                      ; configure switch-type (e.g. microswitch) endstop for high end on X via pin io0.in
        M574 Y2 S1 P"!io2.in"                                      ; configure switch-type (e.g. microswitch) endstop for high end on Y via pin io1.in
        M574 Z1 S2                                                ; configure Z-probe endstop for low end on Z
        
        ; Z-Probe
        M558 P8 C"121.io0.in" H5 F120 T6000                      ; set Z probe type to switch and the dive height + speeds
        G31 P500 X54.5 Y0 Z0.625                                 ; set Z probe trigger value, offset and trigger height
        M557 X20:470 Y20:470 S50                                  ; define mesh grid
        
        ; Heaters
        M308 S0 P"temp0" Y"thermistor" T100000 B4138              ; configure sensor 0 as thermistor on pin temp0
        M950 H0 C"out0" T0                                        ; create bed heater output on out0 and map it to sensor 0
        ;M307 H0 B0 S1.00                                          ; disable bang-bang mode for the bed heater and set PWM limit
        M307 H0 R0.500 K0.349:0.000 D5.16 E1.35 S1.00 B0
        M140 H0                                                   ; map heated bed to heater 0
        M143 H0 S120                                              ; set temperature limit for heater 0 to 120C
        M308 S1 P"121.temp0" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 1 as thermistor on pin 121.temp0
        M950 H1 C"121.out0" T1                                    ; create nozzle heater output on 121.out0 and map it to sensor 1
        ;M307 H1 B0 S1.00                                          ; disable bang-bang mode for heater  and set PWM limit
        M307 H1 R3.865 K0.369:0.000 D2.12 E1.35 S1.00 B0 ;V24.1
        M143 H1 S280                                              ; set temperature limit for heater 1 to 280C
        
        ; Fans
        M950 F0 C"121.out1" Q500                                  ; create fan 0 on pin 121.out1 and set its frequency
        M106 P0 S0 H-1                                            ; set fan 0 value. Thermostatic control is turned off
        M950 F1 C"121.out2" Q500                                  ; create fan 1 on pin 121.out2 and set its frequency
        M106 P1 S1 H1 T45                                         ; set fan 1 value. Thermostatic control is turned on
        
        ; Tools
        M563 P0 D0 H1 F0                                          ; define tool 0
        G10 P0 X0 Y0 Z0                                           ; set tool 0 axis offsets
        G10 P0 R0 S0                                              ; set initial tool 0 active and standby temperatures to 0C
        T0
        ; Custom settings are not defined
        
        
        
        droftartsundefined 1 Reply Last reply Reply Quote 0
        • droftartsundefined
          droftarts administrators @Jiarko
          last edited by

          @Jiarko From @dc42 :

          it could be that the driver overheated and shut down as a result. Running config.g will probably have disabled and then re-enabled it, which would reset it. However, at 1200mA current I wouldn't expect a driver to overheat unless the board is very badly ventilated.

          Did you have any message in the console? Usually an overheating driver triggers a driver error event, pausing the printer; a driver warning sends a message to the console.
          Are your motors grounded? It's possible a build up of static is zapping the driver. We say

          It is highly recommended that the stepper motor casings be grounded, especially in belt-driven printers. Otherwise, motion of the belts causes static charge to build up, which eventually arcs over to the windings. Filament motion in extruders can cause static charge to build up on the extruder drive motor too. If the motors are screwed to a metal frame, grounding the frame is sufficient.

          https://docs.duet3d.com/en/User_manual/Connecting_hardware/Motors_connecting#using-the-internal-drivers

          Apart from that, you could try turning on logging and see if there are any additional messages there when the fault occurs. See https://docs.duet3d.com/en/User_manual/Reference/Gcodes#m111-set-debug-level

          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

          1 Reply Last reply Reply Quote 0
          • Jiarkoundefined
            Jiarko
            last edited by

            thanks for answering!!

            the motors are directly connected to the metal frame, that is grounded.

            the board has a small fan ventilating the surrounding ambient, I've thought it could be a problem for long running prints, but no error in console appeared once the motor driver shut down. the print keep working without sending out any warning (that's what puzzled me) without the motor.

            the only thing I could add is that: when I've tried to home the axis (recall it is a corexy printer) one motor only worked and I've got a warning message in the console suggesting that maybe there was a bad motor connection. but i'm sure no connection issue. anyhow, once I've sent the M98 command everything turno to be up and running again.

            I'll move on and "improve the cooling" of the board and let you know.

            thanks again for your kind feedbacks!!

            ciao, Andrea

            droftartsundefined 1 Reply Last reply Reply Quote 0
            • droftartsundefined
              droftarts administrators @Jiarko
              last edited by

              @Jiarko It sounds like you have grounding and cooling covered. If you had a message about a bad motor connection, I think redoing the wiring and/or swapping out the motor might be sensible, too. If you suspect the driver may be bad, you could swap the motor connections to driver 3 and/or 4, as they appear to be free according to your config.g. I'd say it would be worth swapping anyway, to see if the fault follows the motor.

              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

              Jiarkoundefined 2 Replies Last reply Reply Quote 0
              • Jiarkoundefined
                Jiarko @droftarts
                last edited by

                @droftarts very good idea!! Thanks!!!

                1 Reply Last reply Reply Quote 0
                • Jiarkoundefined
                  Jiarko @droftarts
                  last edited by

                  @droftarts hi, i've thought to swap motor vs. driver it would be just a matter of physically connect the motor to a different driver and set it accordingly into config file. so I've moved to driver 4 and set in the config the following (driver nomenclature having "base 0")

                  M569 P0.3 S0 
                  

                  but id doesn't work... what am I missing??

                  thanks
                  ciao
                  Andrea

                  droftartsundefined 1 Reply Last reply Reply Quote 0
                  • droftartsundefined
                    droftarts administrators @Jiarko
                    last edited by

                    @Jiarko is it X or Y you are moving? X (driver 0) appeared to have errors, but Y (driver 1) reported a fault. So assuming you’re moving Y, change the driver assignment in M584 to:

                    M584 X0.0 Y0.3 Z0.2 E121.0  
                    

                    You may want to move X to driver 4, too.

                    If the problem reoccurs, please get an M122 report before resetting or running config.g again.

                    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

                    Jiarkoundefined 1 Reply Last reply Reply Quote 0
                    • Jiarkoundefined
                      Jiarko @droftarts
                      last edited by

                      @droftarts when I try to change the settings as you suggested the "home" command doesn't trigger any more the endstop sensor. so I cannot change the driver mapping configurations.

                      BTW, is there any way to record the errors even after a reset or power down for further investigating?

                      thanks
                      ciao

                      droftartsundefined 1 Reply Last reply Reply Quote 0
                      • droftartsundefined
                        droftarts administrators @Jiarko
                        last edited by

                        @Jiarko Post your current config.g and homeall.g files.

                        It sounds like you may have mixed up the X and Y motors, as this is a CoreXY. Check the movement of the motors; see https://docs.duet3d.com/User_manual/Machine_configuration/Configuration_coreXY#testing-motor-movement

                        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

                        Jiarkoundefined 1 Reply Last reply Reply Quote 0
                        • Jiarkoundefined
                          Jiarko @droftarts
                          last edited by

                          @droftarts here it is, thanks a lot!! please let me know if there is a way to store errors for future readings...

                          ; Configuration file for Duet 3 Mini 5+ (firmware version 3.3)
                          ; executed by the firmware on start-up
                          ;
                          ; generated by RepRapFirmware Configuration Tool v3.3.16 on Tue May 02 2023 21:46:45 GMT+0200 (Ora legale dell’Europa centrale)
                          
                          ; General preferences
                          M575 P1 S1 B57600                                         ; enable support for PanelDue
                          G90                                                       ; send absolute coordinates...
                          M83                                                       ; ...but relative extruder moves
                          M550 P"ALone"                                             ; set printer name
                          M669 K1                                                   ; select CoreXY mode
                          
                          ; Wait a moment for the CAN expansion boards to start
                          G4 S2
                          
                          ; Network
                          M552 S1                                                   ; enable network
                          ;M552 S2													  ; enable SSID
                          M586 P0 S1                                                ; enable HTTP
                          M586 P1 S0                                                ; disable FTP
                          M586 P2 S0                                                ; disable Telnet
                          
                          ; Drives315
                          M569 P0.0 S0                                              ; physical drive 0.0 goes backwards
                          M569 P0.1 S0                                              ; physical drive 0.1 goes backwards
                          M569 P0.2 S1                                              ; physical drive 0.2 goes forwards
                          M569 P121.0 S1                                            ; physical drive 121.0 goes forwards
                          M584 X0.0 Y0.3 Z0.2 E121.0                                ; set drive mapping
                          
                          M350 X16 Y16 Z16 E16 I1                                   ; configure microstepping with interpolation
                          M92 X100.00 Y100.00 Z640.00 E397.00                       ;
                          M566 X480.00 Y480.00 Z12.00 E300.00						  ; 
                          M203 X12000.00 Y12000.00 Z180.00 E3600.00                 ; set maximum speeds (mm/min) 
                          M201 X500.00 Y500.00 Z20.00 E1000.00                      ; set accelerations (mm/s^2)
                          M906 X1200 Y1200 Z1200 E950 I30                           ; set motor currents (mA) and motor idle factor in per cent
                          M84 S30                                                   ; Set idle timeout
                          
                          ; Axis Limits
                          M208 X0 Y0 Z0 S1                                          ; set axis minima
                          M208 X490 Y450 Z315 S0                                    ; set axis maxima
                          
                          ; Endstops
                          M574 X2 S1 P"121.io2.in"                                  ; configure switch-type (e.g. microswitch) endstop for high end on X via pin io0.in
                          M574 Y2 S1 P"!io2.in"                                     ; configure switch-type (e.g. microswitch) endstop for high end on Y via pin io1.in
                          M574 Z1 S2                                                ; configure Z-probe endstop for low end on Z
                          
                          ; Z-Probe
                          M558 P8 C"121.io0.in" H5 F120 T6000                       ; set Z probe type to switch and the dive height + speeds
                          G31 P500 X54.5 Y0 Z1.860                                  ; set Z probe trigger value, offset and trigger height
                          M557 X20:470 Y20:470 S50                                  ; define mesh grid
                          
                          ; Heaters
                          M308 S0 P"temp0" Y"thermistor" T100000 B4138              ; configure sensor 0 as thermistor on pin temp0
                          M950 H0 C"out0" T0                                        ; create bed heater output on out0 and map it to sensor 0
                          M307 H0 R0.500 K0.349:0.000 D5.16 E1.35 S1.00 B0          ; disable bang-bang mode for the bed heater and set PWM limit
                          M140 H0                                                   ; map heated bed to heater 0
                          M143 H0 S120                                              ; set temperature limit for heater 0 to 120C
                          
                          M308 S1 P"121.temp0" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 1 as thermistor on pin 121.temp0
                          M950 H1 C"121.out0" T1                                    ; create nozzle heater output on 121.out0 and map it to sensor 1
                          M307 H1 R3.865 K0.369:0.000 D2.12 E1.35 S1.00 B0 ;V24.1   ; disable bang-bang mode for heater  and set PWM limit
                          M143 H1 S280                                              ; set temperature limit for heater 1 to 280C
                          
                          ; Fans
                          M950 F0 C"121.out1" Q500                                  ; create fan 0 on pin 121.out1 and set its frequency
                          M106 P0 S0 H-1                                            ; set fan 0 value. Thermostatic control is turned off
                          M950 F1 C"121.out2" Q500                                  ; create fan 1 on pin 121.out2 and set its frequency
                          M106 P1 S1 H1 T45                                         ; set fan 1 value. Thermostatic control is turned on
                          
                          ; Tools
                          M563 P0 D0 H1 F0                                          ; define tool 0
                          G10 P0 X0 Y0 Z0                                           ; set tool 0 axis offsets
                          G10 P0 R0 S0                                              ; set initial tool 0 active and standby temperatures to 0C
                          T0
                          
                          ; filament monitor setup
                          M591 D0 P3 C"121.io1.in" S1 L25.3						  ; filament monitor connected to E0 endstop
                          ; Custom settings are not defined
                          
                          
                          droftartsundefined 1 Reply Last reply Reply Quote 0
                          • droftartsundefined
                            droftarts administrators @Jiarko
                            last edited by

                            @Jiarko Most likely, your Y motor is running in the wrong direction. You need to add a line for M569 for the new driver (0.3). Because S1 is the default, and you were using S0 on driver 0.1, which was the Y axis driver. So add M569 P0.3 S0 to config.g, in the Drives section, eg:

                            ; Drives315
                            M569 P0.0 S0                                              ; physical drive 0.0 goes backwards
                            M569 P0.1 S0                                              ; physical drive 0.1 goes backwards
                            M569 P0.2 S1                                              ; physical drive 0.2 goes forwards
                            M569 P0.3 S0                                              ; physical drive 0.1 goes backwards
                            M569 P121.0 S1                                            ; physical drive 121.0 goes forwards
                            M584 X0.0 Y0.3 Z0.2 E121.0                                ; set drive mapping
                            

                            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

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