Intermittent extruder loss and stutters. 6HC/toolboard/RRF3.2
-
Hey all!
I am having an issue with a new duet 6HC with toolboard. I am getting some stuttering in print moves, and extrusion not working on the extruder (toolboard). When it happens, both issues show up at the same time. I also noticed that the extruder will retract and prime again during travel, but it will never extrude. The issue is very intermittent, and I feel that it is pointing towards a slicer issue or communication issue. I do not have any communication faults. I am leaning towards that due to the fact that I can pause the print, and from DWC I can extrude without issue. Can anyone give me a little guidance on where to go from here?
; Configuration file for Duet 3 (firmware version 3)
; executed by the firmware on start-up; General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"Duet 3" ; set printer name
M669 K1 ; select CoreXY modeG4 S1 ;wait for expansion boards to start
; Drives
M569 P0.0 S1 ; physical drive 0.0 goes forwards
M569 P0.1 S1 ; physical drive 0.1 goes forwards
M569 P0.2 S1 ; physical drive 0.2 goes forwards
M569 P0.3 S0 ; physical drive 0.2 goes forwards
M569 P0.4 S0 ; physical drive 0.2 goes forwards
M569 P0.5 S1 ; physical drive 0.2 goes forwards
M569 P121.0 S0 ; physical drive 121.0 goes forwards
M584 X0.1 Y0.0 Z0.2:0.3:0.5:0.4 E121.0 ; set drive mapping
M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
M92 X98.00 Y98.00 Z400.00 E426.00 ; set steps per mm
M566 X3000.00 Y3000.00 Z200.00 E200.00 ; set maximum instantaneous speed changes (mm/min)
M203 X10000.00 Y10000.00 Z8000.00 E1000.00 ; set maximum speeds (mm/min)
M201 X3000.00 Y3000.00 Z200.00 E200.00 ; set accelerations (mm/s^2)
M906 X1100 Y1100 Z1000 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Axis Limits
M208 X-200 Y-200 Z-1 S1 ; set axis minima
M208 X200 Y200 Z400 S0 ; set axis maxima; Leadscrew Locations
M671 X-322.5:-322.5:262.5:262.5 Y-250:300:300:-250 S20 F1.2 ; Z leadscrew positions; Endstops
M574 X2 S1 P"io0.in" ; X min active low endstop switch
M574 Y2 S1 P"io1.in" ; Y min active low endstop switch
M574 Z1 S2; Z-Probe
M558 P8 C"^!121.io0.in" H5 F300 T16000 ; set Z probe type to unfiltered switch and the dive height + speeds
M558 H15 ;*** Remove this line after delta calibration has been done and new delta parameters have been saved
G31 P500 X0 Y0 Z1.5 ; set Z probe trigger value, offset and trigger height
M556 S50 X0 Y0 Z0 ; set orthogonal axis compensation parameters
M557 X-200:200 Y-200:200 S100 ; define mesh grid; Heaters
M308 S0 P"temp3" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp3
M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0
M307 H0 B0 S0.50 ; disable bang-bang mode for the bed heater and set PWM limit
M140 H0 ; map heated bed to heater 0
M143 H0 S150 ; set temperature limit for heater 0 to 120C
M308 S1 P"121.temp0" Y"thermistor" T100000 B4138 ; 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
M143 H1 S350 ; set temperature limit for heater 1 to 350C; Fans
M950 F0 C"nil"
M950 F0 C"121.out2" 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.out1" 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; Custom settings are not defined
; Miscellaneous
M501 ; load saved parameters from non-volatile memory
T0 ; select first tool;FLAVOR:RepRap
;TIME:14241
;Filament used: 19.0959m
;Layer height: 0.2
;MINX:-29.257
;MINY:-39.222
;MINZ:0.2
;MAXX:115.616
;MAXY:95.857
;MAXZ:115
;Generated with Cura_SteamEngine 4.5.0
T0
M190 S60
M104 S200
M109 S200
M82 ;absolute extrusion mode
T0
G28M83 ;relative extrusion mode
G1 F4800 E-1.5
;LAYER_COUNT:575
;LAYER:0
M107
G1 F600 Z0.7
G0 F7200 X10.941 Y31.13 Z0.7
;TYPE:SKIRT
G1 F600 Z0.2
G1 F1920 E1.5
G1 F1800 X13.485 Y30.22 E0.1011
G1 X16.018 Y29.233 E0.10172
G1 X18.546 Y28.164 E0.1027
G1 X21.015 Y27.035 E0.10158
G1 X23.467 Y25.831 E0.10221
G1 X25.871 Y24.564 E0.10168
G1 X28.246 Y23.226 E0.102
G1 X30.605 Y21.806 E0.10303
G1 X32.863 Y20.36 E0.10033
G1 X35.117 Y18.824 E0.10206
G1 X37.354 Y17.205 E0.10333
G1 X39.47 Y15.581 E0.09981
G1 X42.768 Y12.855 E0.1601
G1 X43.316 Y12.391 E0.02687
G1 X45.162 Y10.855 E0.08986
G1 X45.585 Y10.494 E0.02081
G1 X45.986 Y10.168 E0.01934
G1 X47.358 Y9.043 E0.06639
G1 X48.097 Y8.428 E0.03597
G1 X49.464 Y7.312 E0.06603
G1 X51.466 Y5.627 E0.09791
G1 X52.566 Y4.691 E0.05404
G1 X54.923 Y2.751 E0.11423
G1 X55.766 Y2.048 E0.04107
G1 X56.17 Y1.7 E0.01995
G1 X57.122 Y0.911 E0.04627
G1 X59.162 Y-.85 E0.10084
G1 X61.17 Y-2.685 E0.10178
G1 X63.145 Y-4.595 E0.1028
G1 X65.053 Y-6.545 E0.10208
G1 X66.896 Y-8.543 E0.10171
G1 X68.377 Y-10.232 E0.08405
G1 X68.664 Y-10.567 E0.01651
G1 X69.579 Y-11.621 E0.05223
G1 X70.619 Y-12.843 E0.06004
G1 X71.075 Y-13.387 E0.02656
G1 X73.462 Y-16.222 E0.13867
G1 X75.793 Y-18.969 E0.13481
G1 X76.504 Y-19.829 E0.04175
G1 X79.49 Y-23.372 E0.17337
G1 X80.507 Y-24.593 E0.05946Cancelled printing file 0:/gcodes/VC_2020SpoolHolderRedu.gcode, print time was 0h 1m
3/1/2021, 5:20:37 PM M25
Printing paused at X-3.7 Y91.5 Z0.2
3/1/2021, 5:20:30 PM m122
=== Diagnostics ===
RepRapFirmware for Duet 3 MB6HC version 3.2.2 running on Duet 3 MB6HC v0.6 or 1.0 (SBC mode)
Board ID: 08DJM-956L2-G43S8-6JTDL-3SD6J-1S3YF
Used output buffers: 1 of 40 (18 max)
=== RTOS ===
Static ram: 149788
Dynamic ram: 62544 of which 148 recycled
Never used RAM 146352, free system stack 129 words
Tasks: Linux(ready,101) HEAT(blocked,297) CanReceiv(blocked,832) CanSender(blocked,348) CanClock(blocked,352) TMC(blocked,17) MAIN(running,1097) IDLE(ready,19)
Owned mutexes: Telnet(MAIN)
=== Platform ===
Last reset 00:02:40 ago, cause: software
Last software reset at 2021-03-01 17:17, reason: User, GCodes spinning, available RAM 146352, slot 0
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task Linu Freestk 0 n/a
Error status: 0x00
Aux0 errors 0,0,0
Aux1 errors 0,0,0
MCU temperature: min 51.3, current 51.4, max 52.3
Supply voltage: min 29.8, current 30.3, max 30.5, under voltage events: 0, over voltage events: 0, power good: yes
12V rail voltage: min 12.1, current 12.1, max 12.2, under voltage events: 0
Driver 0: position 8608, standstill, reads 59269, writes 3 timeouts 0, SG min/max 0/200
Driver 1: position -9329, standstill, reads 59268, writes 3 timeouts 0, SG min/max 0/287
Driver 2: position 80, ok, reads 59268, writes 3 timeouts 0, SG min/max 0/194
Driver 3: position 0, ok, reads 59268, writes 3 timeouts 0, SG min/max 0/183
Driver 4: position 0, ok, reads 59268, writes 3 timeouts 0, SG min/max 0/234
Driver 5: position 0, ok, reads 59268, writes 3 timeouts 0, SG min/max 0/193
Date/time: 2021-03-01 17:20:28
Slowest loop: 155.82ms; 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, maxWait 125409ms, bed compensation in use: none, comp offset 0.000
=== MainDDARing ===
Scheduled moves 188, completed moves 186, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state 3
=== AuxDDARing ===
Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== Heat ===
Bed heaters = 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
Heater 0 is on, I-accum = 0.1
Heater 1 is on, I-accum = 0.0
=== GCodes ===
Segments left: 0
Movement lock held by HTTP
HTTP* is idle in state(s) 21
Telnet* is doing "M122" 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 0, running macro
Aux2 is idle in state(s) 0
Autopause is idle in state(s) 0
Code queue is empty.
=== CAN ===
Messages queued 721, send timeouts 0, received 1696, lost 0, longest wait 1ms for reply type 6013, free buffers 48
=== SBC interface ===
State: 3, failed transfers: 0
Last transfer: 0ms ago
RX/TX seq numbers: 5808/5808
SPI underruns 0, overruns 0
Number of disconnects: 0, IAP RAM available 0x2c884
Buffer RX/TX: 0/0-0
=== Duet Control Server ===
Duet Control Server v3.2.2
HTTP:
Buffered code: M25
==> 24 bytes
Number of flush requests: 1
Code buffer space: 4096
Configured SPI speed: 8000000 Hz
Full transfers per second: 37.07
Maximum length of RX/TX data transfers: 3204/1512
File /opt/dsf/sd/gcodes/VC_2020SpoolHolderRedu.gcode is selected, paused
ok -
Your post says RRF3.3 but the M122 output is RRF 3.2.2, what are you running on the toolboard?
When you get an issue please send M122 and M122 B121 so we can see if there are any issues reported by the toolboard.
-
Sorry for that. It is 3.2 on both. Thanks for the quick reply.
m122 B121
Diagnostics for board 121:
Duet TOOL1LC firmware version 3.2.2 (2021-02-12)
Bootloader ID: not available
Never used RAM 3984, free system stack 48 words
HEAT 90 CanAsync 89 CanRecv 83 TMC 56 MAIN 218 AIN 64
Last reset 00:17:46 ago, cause: software
Last software reset data not available
Driver 0: position -3534, 426.0 steps/mm, standstill, SG min/max 0/16, read errors 0, write errors 1, ifcnt 59, reads 9098, writes 17, timeouts 0, DMA errors 0
Moves scheduled 1556, completed 1556, in progress 0, hiccups 0
No step interrupt scheduled
VIN: 30.2V
MCU temperature: min 39.6C, current 41.1C, max 47.5C
Ticks since heat task active 97, ADC conversions started 1062642, completed 1062641, timed out 0
Last sensors broadcast 0x00000002 found 1 101 ticks ago, loop time 0
CAN messages queued 12778, send timeouts 6, received 11172, lost 0, free buffers 36 -
Cura 4.5 is pretty out of date now. Try 4.8 maybe?
Try PrusaSlicer?I also notice you're using SBC mode. Would you be able to setup in standalone mode to test?
https://duet3d.dozuki.com/Wiki/Getting_Started_With_Duet_3#Section_Running_in_standalone_mode
-
@Phaedrux Thanks for the reply. I have tried 4.8, as well as KISS. They are all producing good looking gcode to me, although I am not sure if I am missing something special in start needed for RR3.2 or duet and the tool board. It is a v0.6 if that matters. I am also pretty unsure of how reasonable my config.g is, as this is my first corexy, triple z, and my first time with RR3.
I can try SBC mode tomorrow and report back the results.
I am really stumped by the whole extrudes are being sent in gcode, but it doesn't extrude when printing that gcode. The speeds and accels are reasonable to my knowledge, and it does do anything the firmware sends (like retracts on pause, and if I pause it in the middle of a print I can extrude with DWS). Is it correct that if this were a communication issues with CAN, I would see fault messages and more faults in the M122?
I can reboot over and over, and eventually I will be able to print just fine with the exact same file. The jerky movement in XY is also gone when it prints correctly. If I stop the print and restart it, it goes back to jerky XY motion and failing to extrude during the print until I play the reboot lottery again.
Are there any known bugs that would pertain to this? I looked back at the change logs a little bit, but the only thing I really noticed was the toolboard missing steps for some reason, and that it was fixed.
-
@hamel, please can you try try following:
- Try the same print in standalone mode instead of SBC mode.
- If you experience the same issue, install firmware 3.3beta1 on the 6HXC and the tool board, and try the print again. Just before printing, run M122 and also M122 B121, to clear any CAN error counts accumulated during the startup process. When you have printed enough to be sure that the issue is still occurring, run M122 and M122 B121 again, and post the results here. The 3.3beta1 firmware has improved diagnostics, and fixes an issue we have seen when the step rates are high.
-
@hamel said in Intermittent extruder loss and stutters. 6HC/toolboard/RRF3.2:
M566 X3000.00 Y3000.00 Z200.00 E200.00 ; set maximum instantaneous speed changes (mm/min)
M203 X10000.00 Y10000.00 Z8000.00 E1000.00 ; set maximum speeds (mm/min)
M201 X3000.00 Y3000.00 Z200.00 E200.00 ; set accelerations (mm/s^2)The extruder speed, jerk and acceleration are pretty low. This could lead to some speed consistency issues. Try increasing them.
M203 E6000
M201 E3000
M566 E3000 -
Thank you both for the help.
@Phaedrux I have changed them and tested with no difference.
@dc42 I have tried with 3.3.1beta on both boards, and I now have issues with the toolboard driver in all scenarios now. I cannot get it to extrude at all with firmware anymore. I do get some response from the driver, but it only vibrates, and does not move. I have connected a separate motor to it for testing, and it will not turn the motor, just jitters. To me that says that CAN is working, and there is an issue with the driver on the toolboard, or something in the config/setup that is causing it. I have tried changing the driver current up and down with no significant change to the symptoms. I am pretty sure it is wired correctly, as it was working fine two days ago. The issue presented after a few test prints that were working fine, yet had a step loss due to high XY accel settings. After adjusting the accel settings, the extruder drive started only working in DWC, and after this latest update to RRF3.3.1beta, I have lost all torque from the driver in all scenarios. At least I get some kind of response when commanded, but only jitters.
My M122s after clearing and having the issue present itself, as you requested:
m122
=== Diagnostics ===
RepRapFirmware for Duet 3 MB6HC version 3.3beta1 running on Duet 3 MB6HC v0.6 or 1.0 (SBC mode)
Board ID: 08DJM-956L2-G43S8-6JTDL-3SD6J-1S3YF
Used output buffers: 1 of 40 (11 max)
=== RTOS ===
Static ram: 148196
Dynamic ram: 61276 of which 708 recycled
Never used RAM 140492, free system stack 126 words
Tasks: Linux(ready,143) HEAT(delaying,302) CanReceiv(notifyWait,799) CanSender(notifyWait,359) CanClock(delaying,351) TMC(notifyWait,20) MAIN(running,924) IDLE(ready,20)
Owned mutexes: HTTP(MAIN)
=== Platform ===
Last reset 00:03:40 ago, cause: power up
Last software reset at 2021-03-02 19:36, reason: User, GCodes spinning, available RAM 140492, slot 1
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task Linu Freestk 0 n/a
Error status: 0x00
Aux0 errors 0,0,0
Aux1 errors 0,0,0
MCU temperature: min 44.1, current 45.7, max 45.8
Supply voltage: min 30.0, current 30.3, max 30.6, under voltage events: 0, over voltage events: 0, power good: yes
12V rail voltage: min 12.1, current 12.1, max 12.1, under voltage events: 0
Driver 0: position 0, standstill, reads 37576, writes 4 timeouts 0, SG min/max 0/1023
Driver 1: position 0, standstill, reads 37576, writes 4 timeouts 0, SG min/max 0/1023
Driver 2: position 2620, standstill, reads 37576, writes 4 timeouts 0, SG min/max 0/771
Driver 3: position 0, standstill, reads 37576, writes 4 timeouts 0, SG min/max 0/908
Driver 4: position 0, standstill, reads 37575, writes 4 timeouts 0, SG min/max 0/799
Driver 5: position 0, standstill, reads 37575, writes 4 timeouts 0, SG min/max 0/809
Date/time: 2021-03-02 19:55:57
Slowest loop: 84.44ms; fastest: 0.04ms
=== 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, maxWait 38383ms, bed compensation in use: none, comp offset 0.000
=== MainDDARing ===
Scheduled moves 707, completed moves 707, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== AuxDDARing ===
Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== Heat ===
Bed heaters = 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
Heater 0 is on, I-accum = 0.7
Heater 1 is on, I-accum = 0.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 1462, send timeouts 0, received 1276, lost 0, longest wait 5ms for reply type 6029, peak Tx sync delay 58715, free buffers 49 (min 48)
=== SBC interface ===
State: 4, failed transfers: 0
Last transfer: 2ms ago
RX/TX seq numbers: 7118/7118
SPI underruns 0, overruns 0
Number of disconnects: 0, IAP RAM available 0x2d410
Buffer RX/TX: 0/0-0
=== Duet Control Server ===
Duet Control Server v3.2.0
Code buffer space: 4096
Configured SPI speed: 8000000 Hz
Full transfers per second: 39.04
Maximum length of RX/TX data transfers: 2820/1592
File /opt/dsf/sd/gcodes/VC_test.gcode is selected, pausedm122 b121
Diagnostics for board 121:
Duet TOOL1LC firmware version 3.3beta1 (2021-02-14 16:34:04)
Bootloader ID: not available
Never used RAM 3976, free system stack 0 words
Tasks: Move(notifyWait,90) HEAT(delaying,91) CanAsync(notifyWait,63) CanRecv(notifyWait,75) CanClock(notifyWait,67) TMC(delaying,56) MAIN(running,254) AIN(delaying,63)
Last reset 00:03:36 ago, cause: power up
Last software reset data not available
Driver 0: position 43474, 426.0 steps/mm, standstill, SG min/max 0/48, read errors 0, write errors 0, ifcnt 12, reads 46552, writes 1, timeouts 0, DMA errors 0, steps req 56254 done 56254
Moves scheduled 531, completed 531, in progress 0, hiccups 0, step errors 0, maxPrep 490, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0
Peak sync jitter 8, peak Rx sync delay 206, resyncs 0, no step interrupt scheduled
VIN: 30.2V
MCU temperature: min 26.8C, current 40.4C, max 40.5C
Ticks since heat task active 17, ADC conversions started 215389, completed 215388, timed out 0
Last sensors broadcast 0x00000002 found 1 24 ticks ago, loop time 0
CAN messages queued 1162, send timeouts 0, received 1388, lost 0, free buffers 36, min 36, error reg 0
dup 0, oos 0, bm 0, wbm 0I am going to redo my SD now and test in standalone mode, although I am starting to question the toolboard's driver.
-
@hamel said in Intermittent extruder loss and stutters. 6HC/toolboard/RRF3.2:
I have connected a separate motor to it for testing, and it will not turn the motor, just jitters.
Are you sure your separate motor has the same wiring as the one you use on the extruder? I.e., phase pairs neighboring. Different motors by different manufacturers may have a different order of wires (can be fixed by changing the order of crimps in the connector).
-
@oliof Yes, the coil pairs are the same as the one that I tested with. Both act the same, and no wiring was changed since it was working properly.
-
@dc42 SD imager is giving me trouble, so I will make the SD at home tonight and test it tomorrow.
For a test I assigned the toolboard driver to the x axis, and I also get the same performance (lack of any torque to even move the motor alone).
-
Thanks @hamel, it does sound that there is a problem either with the driver or the motor connection. When you tested it with a different motor, did you use the same connector to plug into the tool board motor connector as when using the original motor, or did you use a different connector?
-
@dc42 Same connector. I have another I can test with. I was initially leading towards not being a wiring issue, as I was able to extrude with DWS earlier in a pause when it was not extruding in the print, but now with no function at all I agree that I should swap them out. I have a few here for my toolchanger that are known good. I'll report back tomorrow with a standalone SD test and a swap of the wires.
-
All, I just wanted to give an update. Standalone changed nothing. New cable changed nothing. It seems that my motor was the curprit. It must have been going bad, and something about the speed of the commands sent by DWC allowed it to work a little until it finally failed. Dead coil. New one on the way. Thanks for all of the help looking into this.
-
Thanks for the update, I'm glad you solved it.
It's rare for a motor coil to burn out, unless you have run it above its rated current for an extended period. My guess is that if you take the motor apart, you will find a bad connection between one of the windings and the connector if it has one, or the leads if it doesn't.
-
@dc42 Probably just a coincidence, but I mentioned in another thread that I've had 3 of my 6 extruder motors connected to expansion boards fail in the last 18 months. When the last one failed, I assumed that it was a bad batch so I replaced all 6 and I haven't had a failure since. Can you think of any reason other than I'm just unlucky and/or it was probably a bad batch of motors? (Motor currents always set to 85% of quoted rated current).
-
I did set to rated current during testing, but never over. I usually stick to 80% rated current, but I got desperate when troubleshooting and shot it up to 100% for a few tests. That might have done it in, as it isn't an especially nice stepper. I did tear it down, and one winding had a break about 5mm from the connection to the leads. I'll see if I can save it.
I have never had a motor burn up, so I didn't really focus on that. Thank you all for the prompt help in diagnosing this rather stupid problem.
-
@hamel said in Intermittent extruder loss and stutters. 6HC/toolboard/RRF3.2:
I did set to rated current during testing, but never over. I usually stick to 80% rated current, but I got desperate when troubleshooting and shot it up to 100% for a few tests. That might have done it in, as it isn't an especially nice stepper. I did tear it down, and one winding had a break about 5mm from the connection to the leads. I'll see if I can save it.
I have never had a motor burn up, so I didn't really focus on that. Thank you all for the prompt help in diagnosing this rather stupid problem.
Running at rated current should not cause a problem, because the rated current is normally quoted with both phases energised, whereas microstepping drivers only energise one phase at the full peak current at a time (and currents set by M906 in RRF are peak currents).
If the break was caused by excessive current, I would expect to see blackening of the wires.
-
Well, the issue has come back. Same symptoms. I get really bad motor movement with the gcode files while printing, but I can pause and extrude just fine with DWC. Any idea what I should be looking at next? I have swapped the motor to a much more powerful one that I just had lying around, and it can really crank out the extrudes in DWC, but when I go to print, it just stutters and skips steps. I have dropped the acceleration and jerk to 500, and I still have the issue. I do not think it is the settings, as I can extrude with those settings in DWC with no issue. When printing, I do not think the toolboard driver is giving good commands, but I have no idea why that would be.
; Configuration file for Duet 3 (firmware version 3)
; executed by the firmware on start-up; General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"Duet 3" ; set printer name
M669 K1 ; select CoreXY modeG4 S1 ;wait for expansion boards to start
; Drives
M569 P121.0 S1 ; physical drive 121.0 goes forwards
M569 P0.0 S1 ; physical drive 0.0 goes forwards
M569 P0.1 S1 ; physical drive 0.1 goes forwards
M569 P0.2 S1 ; physical drive 0.2 goes forwards
M569 P0.3 S0 ; physical drive 0.2 goes forwards
M569 P0.4 S0 ; physical drive 0.2 goes forwards
M569 P0.5 S1 ; physical drive 0.2 goes forwardsM584 X0.1 Y0.0 Z0.2:0.3:0.5:0.4 E121.0 ; set drive mapping
M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
M92 X98.00 Y98.00 Z400.00 E426.00 ; set steps per mm
M566 X2500.00 Y2500.00 Z200.00 E200.00 ; set maximum instantaneous speed changes (mm/min)
M203 X10000.00 Y10000.00 Z8000.00 E3000.00 ; set maximum speeds (mm/min)
M201 X3000.00 Y3000.00 Z200.00 E200.00 ; set accelerations (mm/s^2)
M906 X1100 Y1100 Z1000 E1200 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Axis Limits
M208 X-200 Y-200 Z-1 S1 ; set axis minima
M208 X200 Y200 Z400 S0 ; set axis maxima; Leadscrew Locations
M671 X-322.5:-322.5:262.5:262.5 Y-250:300:300:-250 S20 F1.2 ; Z leadscrew positions; Endstops
M574 X2 S1 P"io0.in" ; X min active low endstop switch
M574 Y2 S1 P"io1.in" ; Y min active low endstop switch
M574 Z1 S2; Z-Probe
M558 P8 C"^!121.io0.in" H5 F300 T16000 ; set Z probe type to unfiltered switch and the dive height + speeds
M558 H15 ;*** Remove this line after delta calibration has been done and new delta parameters have been saved
G31 P500 X0 Y0 Z1 ; set Z probe trigger value, offset and trigger height
M556 S50 X0 Y0 Z0 ; set orthogonal axis compensation parameters
M557 X-200:200 Y-200:200 S100 ; define mesh grid; Heaters
M308 S0 P"temp3" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp3
M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0
M307 H0 B0 S0.50 ; disable bang-bang mode for the bed heater and set PWM limit
M140 H0 ; map heated bed to heater 0
M143 H0 S150 ; set temperature limit for heater 0 to 120C
M308 S1 P"121.temp0" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin 121.temp0
M950 H1 C"nil"
M950 H1 C"121.out0" T1 ; create nozzle heater output on 121.out0 and map it to sensor 1
M307 H1 B0 S0.5 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S350 ; set temperature limit for heater 1 to 350C; Fans
M950 F0 C"nil"
M950 F0 C"121.out2" 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.out1" 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; Custom settings are not defined
; Miscellaneous
M501 ; load saved parameters from non-volatile memory
T0 ; select first toolm122
=== Diagnostics ===
RepRapFirmware for Duet 3 MB6HC version 3.3beta1 running on Duet 3 MB6HC v0.6 or 1.0 (SBC mode)
Board ID: 08DJM-956L2-G43S8-6JTDL-3SD6J-1S3YF
Used output buffers: 1 of 40 (10 max)
=== RTOS ===
Static ram: 148196
Dynamic ram: 61484 of which 500 recycled
Never used RAM 140492, free system stack 121 words
Tasks: Linux(ready,143) HEAT(delaying,302) CanReceiv(notifyWait,799) CanSender(notifyWait,359) CanClock(delaying,349) TMC(notifyWait,18) MAIN(running,616) IDLE(ready,20)
Owned mutexes: HTTP(MAIN)
=== Platform ===
Last reset 00:13:58 ago, cause: power up
Last software reset at 2021-03-05 23:49, reason: User, none spinning, available RAM 140492, slot 0
Software reset code 0x0012 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0440f000 BFAR 0x00000000 SP 0x00000000 Task Linu Freestk 0 n/a
Error status: 0x00
Aux0 errors 0,0,0
Aux1 errors 0,0,0
MCU temperature: min 28.9, current 51.2, max 51.3
Supply voltage: min 27.9, current 30.0, max 30.2, under voltage events: 0, over voltage events: 0, power good: yes
12V rail voltage: min 12.1, current 12.1, max 12.1, under voltage events: 0
Driver 0: position 0, standstill, reads 48788, writes 31 timeouts 0, SG min/max 0/271
Driver 1: position 0, standstill, reads 48788, writes 31 timeouts 0, SG min/max 0/505
Driver 2: position 22080, standstill, reads 48784, writes 35 timeouts 0, SG min/max 0/263
Driver 3: position 0, standstill, reads 48784, writes 35 timeouts 0, SG min/max 0/277
Driver 4: position 0, standstill, reads 48785, writes 35 timeouts 0, SG min/max 0/259
Driver 5: position 0, standstill, reads 48785, writes 35 timeouts 0, SG min/max 0/201
Date/time: 2021-03-08 15:16:32
Slowest loop: 171.53ms; 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, maxWait 180288ms, bed compensation in use: none, comp offset 0.000
=== MainDDARing ===
Scheduled moves 448, completed moves 448, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 15], CDDA state -1
=== AuxDDARing ===
Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== Heat ===
Bed heaters = 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
=== 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 0, running macro
Aux2 is idle in state(s) 0
Autopause is idle in state(s) 0
Code queue is empty.
=== CAN ===
Messages queued 8761, send timeouts 26, received 9733, lost 0, longest wait 2ms for reply type 6049, peak Tx sync delay 57602, free buffers 49 (min 47)
=== SBC interface ===
State: 4, failed transfers: 0
Last transfer: 1ms ago
RX/TX seq numbers: 29686/29686
SPI underruns 0, overruns 0
Number of disconnects: 0, IAP RAM available 0x2d410
Buffer RX/TX: 0/0-0
=== Duet Control Server ===
Duet Control Server v3.2.0
Code buffer space: 4096
Configured SPI speed: 8000000 Hz
Full transfers per second: 8.35
Maximum length of RX/TX data transfers: 2588/1520m122 b121
Diagnostics for board 121:
Duet TOOL1LC firmware version 3.3beta1 (2021-02-14 16:34:04)
Bootloader ID: not available
Never used RAM 3976, free system stack 0 words
Tasks: Move(notifyWait,90) HEAT(delaying,91) CanAsync(notifyWait,67) CanRecv(notifyWait,75) CanClock(notifyWait,67) TMC(delaying,56) MAIN(running,252) AIN(delaying,63)
Last reset 00:14:41 ago, cause: power up
Last software reset data not available
Driver 0: position 34448, 426.0 steps/mm, standstill, SG min/max 0/282, read errors 0, write errors 0, ifcnt 20, reads 47135, writes 20, timeouts 0, DMA errors 0, steps req 81994 done 81994
Moves scheduled 1234, completed 1234, in progress 0, hiccups 0, step errors 0, maxPrep 532, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0
Peak sync jitter 9, peak Rx sync delay 610, resyncs 1, no step interrupt scheduled
VIN: 29.9V
MCU temperature: min 25.8C, current 37.0C, max 42.1C
Ticks since heat task active 249, ADC conversions started 878201, completed 878201, timed out 0
Last sensors broadcast 0x00000002 found 1 5 ticks ago, loop time 0
CAN messages queued 10272, send timeouts 0, received 9157, lost 0, free buffers 36, min 35, error reg 0
dup 0, oos 0, bm 0, wbm 0 -
If it's an intermittent issue, then the most likely causes are:
- Bad crimp connection in the motor cable. Are you using the same cable as before?
- Bad solder joint between the driver chip and the PCB. Axz the pads of the driver under underneath the chip, it's impossible to tell whether the soldering is good on all pads other than by X-ray; although if you can look at the edges of the chip using microscope, you might get a clue.
- Bad solder joint between the motor connector and the PCB. Unlikely, but not impossible.