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

    E3D Roto + Duet Roto Toolboard - Stepper motor stalling

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    7
    30
    799
    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.
    • arturolazundefined
      arturolaz
      last edited by

      I'm currently using the E3D roto extruder coupled with an Duet Roto Toolboard and Duet 3 6HC. I haven't been able to print ABS in my closed chamber custom printer, after 15-20 minutes the extruder stepper motor just stops working, I have verified the extruder fan is working properly, the current for the motor is correctly set as well.

      I have been using the E3D Roto for a while without issues in the same setup but recently got the Duet Roto toolboard installed. I noticed the toolboard is rated for 70C MAX but I have also seen the issue at 60C. If I let the printer cool down, I can restart the test again and again pointing to a temperature issue. Is there anything I can do?

      Attached my config.g

      ; General preferences
      G90                                                ; send absolute coordinates...
      M83                                                ; ...but relative extruder moves
      M550 P"Arturo's Hypercube Evo"                     ; set printer name
      M669 K1                                            ; select CoreXY mode
      M80 C"pson"	   								       ; ATX Control
      G4 S2 ; wait for expansion boards to start
      
      
      ; Network
      M551 P"reprap"                                     ; set password
      M552 I1 S1                                         ; enable WiFi Module
      M586 P0 S1                                         ; enable HTTP
      M586 P1 S0                                         ; disable FTP
      M586 P2 S0                                         ; disable Telnet
      
      ; Drives
      M569 P0.2 S1                                       ; physical drive 2 goes forwards - Z1
      M569 P0.3 S1                                       ; physical drive 3 goes forwards - Z2
      M569 P0.4 S1                                       ; physical drive 4 goes forwards - X
      M569 P0.5 S1                                       ; physical drive 5 goes forwards - Y
      M569 P121.0 S1                                     ; physical drive 0 @ CAN address 121 goes forwards
      M584 X0.4 Y0.5 Z0.2:0.3 E121.0                     ; set drive mapping
      M350 X16 Y16 Z16 E16 I1                            ; configure microstepping with interpolation
      ;M350 E16 I0
      M92 X80.52 Y80.52 Z400.00 E2682                    ; set steps per mm //116.512 for V6 Bowden //409 for Hemera = 3272 for x128 microstepping Hemera E397
      M566 X500.00 Y500.00 Z500.00 E150.00               ; set maximum instantaneous speed changes (mm/min) Z160
      M203 X18000.00 Y18000.00 Z1000.00 E5000            ; set maximum speeds (mm/min) Z600
      M201 X500.00 Y500.00 Z500.00 E3000.00              ; set accelerations (mm/s^2)
      M906 X1200 Y1200 Z1200 E500 I30                    ; set PEAK motor currents (mA) and motor idle factor in per cent //E500 for E3D Roto 
      M84 S30                                            ; Set idle timeout
      
      ; Axis Limits
      M208 X0 Y0 Z0 S1                                   ; set axis minima
      M208 X267 Y230 Z245 S0                             ; set axis maxima
      
      ; Endstops
      M574 X1 S1 P"121.io1.in"                           ; configure active-high endstop for low end on X via Toolboard CAN address 121 on port io1
      M574 Y2 S1 P"io8.in"                               ; configure active-high endstop for low end on Y via pin ystop
      M574 Z1 S2                                         ; configure Z-probe endstop for low end on Z
      
      ; Z-Probe
      M950 S0 C"121.io0.out"                             ; create servo pin 0 for BLTouch
      M558 P9 C"121.io0.in" H5 F120 T6000                ; set Z probe type to bltouch and the dive height + speeds
      ;G31 P25 X60.1 Y2.9 Z1.16                          ; set Z probe trigger value, offset and trigger height // Numeros positivos - Entre mas chico mas separado el noozle de la cama 2.97 para Hemera Z2 para V7
      G31 P25 Z1.48
      
      ; Scanning Z probe
      M558 K1 P11 C"121.i2c.ldc1612" F36000 T36000       ; configure SZP as probe 1, type 11, on CAN address 121
      M308 A"SZP coil" S10 Y"thermistor" P"121.temp2"    ; thermistor on SZP coil
      G31 K1 Z2 Y0 X25.6                                 ; define probe 1 offsets and trigger height
      M558.2 K1 S15 R135895
      
      ; Bed
      M308 S0 P"temp0" Y"thermistor" T100000 B4138       ; configure sensor 0 as thermistor on pin bedtemp
      M950 H0 C"out0" T0                                 ; create bed heater output on bedheat and map it to sensor 0
      M143 H0 S120                                       ; set temperature limit for heater 0 to 120C
      M140 H0											   ; Enable Heated Bed
      
      ; Filament Heater
      M308 S1 P"121.temp1" Y"thermistor" T100000 B4725 C7.060000e-8      ; configure sensor 1 as thermistor on pin e0temp
      M950 H1 C"121.out0" T1                                             ; create nozzle heater output on e0heat and map it to sensor 1
      M307 H1 R3.915 K0.435:0.000 D2.60 E1.35 S1.00 B0 V24.0             ; M307 H1 R1.269 K0.289:0.099 D7.36 E1.35 S1.00 B0 - V6 Fan 100%
      M307 H0 R0.908 K0.263:0.000 D9.12 E1.35 S1.00 B0                   ; E3D High Voltage Bed Fan ON 100%
      
      ; Layer Fan
      M950 F0 C"121.out1" Q25000                         ; create fan 0 on pin out1 and set its frequency
      M106 P0 C"Layer Fan:" S0.0 H-1                     ; set fan 0 value, "S0" off by default. Thermostatic control is turned off
      
      ; Fans
      ; Extruder Fan
      M950 F1 C"121.out2" Q500                           ; create fan 1 on pin out2 and set its frequency
      M106 P1 C"Extruder Fan" S255 H-1                   ; set fan 1 value. Thermostatic control is turned off
      
      ; Tools
      M563 S"Nozzle Revo V7" P0 D0 H1 F0                 ; define tool 1
      G10 P0 X0 Y0 Z0                                    ; set tool 0 axis offsets
      G10 P0 R0 S0                                       ; set initial tool 0 active and standby temperatures to 0C
      
      ; Miscellaneous
      M575 P1 S1 B57600                                  ; enable support for PanelDue
      M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
      M564 H0                                            ;
      ;M572 D0 S0.05                                     ; Linear Advance for E3D Roto
      ;M572 D0 S0.55									   ; Linear Advance for V7 PLA Bowden
      ;M955 P0 C"spi.cs4+spi.cs3"                         ; Accelerometer Support
      ;M593 P"zvd" F43.2
      
      T0
      
      jay_s_ukundefined dc42undefined 2 Replies Last reply Reply Quote 0
      • jay_s_ukundefined
        jay_s_uk @arturolaz
        last edited by

        @arturolaz there is this as well about the Roto itself
        c2fbc9fe-0a2a-4b40-9181-fbdfa703cd27-image.png

        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

        arturolazundefined elmoretundefined 2 Replies Last reply Reply Quote 0
        • dc42undefined
          dc42 administrators @arturolaz
          last edited by dc42

          @arturolaz when it stops working, use M122 B121 to check whether the driver is reporting over-temperature, or the CPU temperature s reporting very hot. Note, the CPU temperature may need to be calibrated.

          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
          • arturolazundefined
            arturolaz @jay_s_uk
            last edited by arturolaz

            @jay_s_uk said in E3D Roto + Duet Roto Toolboard - Stepper motor stalling:

            @arturolaz there is this as well about the Roto itself
            c2fbc9fe-0a2a-4b40-9181-fbdfa703cd27-image.png

            @jay_s_uk Yeah 😕 I know I am overstressing it, I just can't get around the fact that I have used it before in the same conditions and had no issues until I included the Duet Roto toolboard

            @dc42 said in E3D Roto + Duet Roto Toolboard - Stepper motor stalling:

            @arturolaz when it stops working, use M122 B121 to check whether the driver is reporting over-temperature, or the CPU temperature s reporting very hot. Note, the CPU temperature may need to be calibrated.

            @dc42 Here is the console output for M122 B121 while the extruder stepper is failing. How can the CPU temperature can be calibrated?

            m122 b121
            Diagnostics for board 121:
            Duet TOOL1RR firmware version 3.5.4 (2024-11-24 10:43:09)
            Bootloader ID: SAME5x bootloader version 2.9 (2023-10-06)
            All averaging filters OK
            Never used RAM 164400, free system stack 174 words
            Tasks: Move(3,nWait 7,0.0%,132) HEAT(2,nWait 6,0.1%,112) CanAsync(5,nWait 4,0.0%,66) CanRecv(3,nWait 1,0.0%,73) CanClock(5,nWait 1,0.0%,63) ACCEL(3,nWait 6,0.0%,65) TMC(2,delaying,1.4%,17) MAIN(1,running,96.8%,314) IDLE(0,ready,0.0%,29) AIN(2,nWait 2,1.7%,211), total 100.0%
            Owned mutexes:
            Last reset 00:25:32 ago, cause: software
            Last software reset data not available
            Driver 0: pos 0, 2682.0 steps/mm, stalled, SG min 0, temp 69.9C, read errors 0, write errors 0, ifcnt 52, reads 40354, writes 0, timeouts 0, DMA errors 0, steps req 0 done 251658
            Moves scheduled 16084, completed 16083, in progress 1, hiccups 0, segs 24, step errors 0, maxLate 0 maxPrep 18, maxOverdue 9, maxInc 3, mcErrs 0, gcmErrs 0, ebfmin 0.00 max 1.00
            Peak sync jitter -8/4, peak Rx sync delay 181, resyncs 0/0, no timer interrupt scheduled
            VIN voltage: min 24.0, current 24.0, max 24.1
            MCU temperature: min 46.4C, current 68.2C, max 68.4C
            Last sensors broadcast 0x00000402 found 2 138 ticks ago, 0 ordering errs, loop time 0
            CAN messages queued 1646, send timeouts 0, received 1585, lost 0, errs 0, boc 0, free buffers 38, min 38, error reg 0
            dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 297, adv 36296/74679
            Accelerometer: LIS2DW, status: 00
            Inductive sensor: raw value 36818440, frequency 3.43MHz, current setting 15, ok
            Integrated filament monitor not present
            I2C bus errors 0, naks 0, contentions 0, other errors 0
            
            dc42undefined 2 Replies Last reply Reply Quote 0
            • dc42undefined
              dc42 administrators @arturolaz
              last edited by

              @arturolaz those temperatures look OK. I'm wondering whether the grounding between the tool board and the extruder motor body may be missing. If you have a multimeter, try disconnecting the tool board connector and measuring the resistance between the VIN ground pin on the tool board and the stepper motor body. It should be 50kohms if both mounting screws are connecting.

              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

              arturolazundefined 1 Reply Last reply Reply Quote 0
              • arturolazundefined
                arturolaz @dc42
                last edited by

                @dc42 My bad, there is no connection between them as the way I created the fan shroud requires the mounting screw not touching the toolboard but instead coming from the shroud. I have now read the wiring notes from the docs and will be trying it.

                How can this cascade to a motor stall?

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

                  @arturolaz extruding filament builds up static charge. If it is allowed to build up on the extruder motor body, it may flash over to the stepper motor wires. From there it flows into the stepper motor driver and may trigger the short circuit detection in the driver.

                  See also this thread https://forum.duet3d.com/topic/37882/extruder-stopping-mid-print-fixed-after-reboot.

                  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

                  arturolazundefined 1 Reply Last reply Reply Quote 0
                  • arturolazundefined
                    arturolaz @dc42
                    last edited by

                    @dc42 Understood. I did the test grounding the metal body of the Roto through a wire soldered to the V- terminal of the power connector in the toolboard with a 100k serial resistor but it didn't work, it failed just like before even without reaching 70C

                    1 Reply Last reply Reply Quote 0
                    • arturolazundefined
                      arturolaz
                      last edited by

                      @dc42 I've been reading about CoolStep and I think it is the next step, unless you have another idea for me to try before.

                      Are there any special considerations when implementing CoolStep for the extruder? Most of the documentation is oriented for the other motors

                      1 Reply Last reply Reply Quote 0
                      • arturolazundefined
                        arturolaz
                        last edited by

                        I haven't been able to conrrectly configure stall detection for the extruder, I just found this post from some years ago https://forum.duet3d.com/post/102570 so I'm running out of options if CoolStep can't be implemented...

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

                          @arturolaz I doubt that CoolStep is the solution because I am not convinced that the driver is overheating. How quickly after the driver stopped extruding did you take the M121? If the driver really is shutting down because of overheating then it will cool down fairly quickly.

                          BTW your M121 report says that the driver on the tool board is stalled:

                          Driver 0: pos 0, 2682.0 steps/mm, stalled, SG min 0, temp 69.9C, read errors 0, write errors 0, ifcnt 52, reads 40354, writes 0, timeouts 0, DMA errors 0, steps req 0 done 251658

                          If you haven't set the stall detection threshold using M915 then that doesn't necessarily mean that it has stopped moving, but it does suggest that it was under high load when last commanded to move.

                          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

                          arturolazundefined 1 Reply Last reply Reply Quote 0
                          • arturolazundefined
                            arturolaz @dc42
                            last edited by

                            @dc42 I sent the command as soon as I realized it was failing, 2minutes difference top, at that point I hadn't enabled anything related to stall detection.

                            Quick update of my tests:

                            • Disconnected the Roto motor from the Roto toolboard and rewired it to use a Duet3 stepper driver - Still failing
                            • Printed the exact same test print but now with PLA hoping that the ABS ambient temperature was the trigger of the motor failure but it also failed
                            • Inspected the whole motor assembly but found no issues apart from maybe insufficient grease on the gears (waiting for the grease to test)

                            At this point I'm almost sure the motor or some configuration is the problem but I can't find the root cause of it

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

                              @arturolaz what mode are you running the driver in? Send M569 P121.0 to check.

                              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

                              arturolazundefined 1 Reply Last reply Reply Quote 0
                              • arturolazundefined
                                arturolaz @dc42
                                last edited by

                                @dc42 these are the current settings:

                                
                                M569 P121.0
                                Driver 121.0 runs forwards, active low enable, mode spreadCycle, ccr 0x00053, toff 3, tblank 0, hstart/hend/hdec 5/0/0, pos 8
                                
                                
                                1 Reply Last reply Reply Quote 0
                                • dc42undefined
                                  dc42 administrators @arturolaz
                                  last edited by

                                  @arturolaz said in E3D Roto + Duet Roto Toolboard - Stepper motor stalling:

                                  How can the CPU temperature can be calibrated?

                                  Turn the printer off and give it time to reach ambient temperature. Read the ambient temperature from a thermometer. Turn the printer on and immediately use M122 to get a report from the board of interest. That report includes the CPU temperature. Compare it with ambient and calculate the correction required.

                                  Currently, only the main board CPU temperature calibration can be stored, using the M912 command.

                                  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

                                  arturolazundefined 1 Reply Last reply Reply Quote 0
                                  • arturolazundefined
                                    arturolaz @dc42
                                    last edited by

                                    @dc42 the Duet3 control board is not installed inside the closed chamber as the roto toolboard is. How can this calibration affect the outcome of the printing tests?

                                    Is there anything off in the M69 P121.0 report?

                                    1 Reply Last reply Reply Quote 0
                                    • arturolazundefined
                                      arturolaz
                                      last edited by

                                      For anyone following.

                                      I just measured the coils resistance in "hope" for them to be out of spec but they are not. Both measured 7.6 ohms at room temperature.

                                      I haven't been able to print ABS nor PLA. I will keep trying tweaking the configuration but I feel that I have tried everything.

                                      1 Reply Last reply Reply Quote 0
                                      • elmoretundefined
                                        elmoret @jay_s_uk
                                        last edited by

                                        @jay_s_uk said in E3D Roto + Duet Roto Toolboard - Stepper motor stalling:

                                        @arturolaz there is this as well about the Roto itself
                                        c2fbc9fe-0a2a-4b40-9181-fbdfa703cd27-image.png

                                        That's a PLA limit, to avoid jams in the hotend.

                                        Notepadundefined arturolazundefined 2 Replies Last reply Reply Quote 0
                                        • Notepadundefined
                                          Notepad @elmoret
                                          last edited by

                                          @elmoret Can confirm, E3D testing is always a "worst case" recommendation. The max motor amperage is only if they are pushing ultra high flow high pressure, in a 50+C heated chamber, for extreme lengths of time.
                                          You may want to raise your amperage as that would give you more force available.

                                          The real bamboo printer manufacturer

                                          1 Reply Last reply Reply Quote 0
                                          • arturolazundefined
                                            arturolaz @elmoret
                                            last edited by

                                            @elmoret This problem started while printing ABS but I have since reverted to testing with PLA with the same results, the motor keeps stalling after 15-20 minutes of printing when coming from a cold start and sooner on later prints.

                                            @Notepad I have also tested with the absolute max current E3D recomends, 0.6A peak with the same result, I think anything beyond that might risk damaging the coils.

                                            I will open a case with E3D to be sure the motor is not damaged at this point.

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