Driver 121.0 Errors
-
I am using Driver 0 on one toolboard for my xtruder motor. I keep getting this error: Driver 121.0 warning: phase A short to ground, phase B short to Vin, phase A may be disconnected How do I fix this?
-
-
The obvious thing to check would be the wiring to ensure the phases are properly matched. But all 3 errors together hints at perhaps some damage to the driver.
Double check your wiring.
What are the specs of the motor?
Please share your config.g and the results of M122 and M122 B121 after the errors have occurred. -
@phaedrux The wiring is correct, I am using an E3D Hemera. The two wires for each phase are continuous.
; Configuration file for Duet 3 MB 6HC (firmware version 3.3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.12 on Mon Sep 05 2022 02:51:18 GMT-0700 (Pacific Daylight Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Materializer" ; set printer name ; 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 P121.0 S1 ; physical drive 121.0 goes forwards M584 X0.0 Y0.1 Z0.2:0.3 E121.0 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X80.00 Y80.00 Z800.00 E409.00 ; set steps per mm M566 X900.00 Y900.00 Z60.00 E120.00 ; set maximum instantaneous speed changes (mm/min) M203 X6000.00 Y6000.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 X800 Y800 Z800 E1100 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout M671 X15:275 Y150:150 S0.5 ; Axis Limits M208 X10 Y0 Z0 S1 ; set axis minima M208 X295 Y320 Z250 S0 ; set axis maxima ; Endstops M574 X2 S1 P"io0.in" ; configure switch-type (e.g. microswitch) endstop for high end on X via pin io0.in M574 Y2 S1 P"io1.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 M950 S0 C"121.io0.out" ; create servo pin 0 for BLTouch M558 P9 C"121.io0.in" H5 F600 T12000 A3 S0.03 R0.4 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X50 Y-15 Z2.5 ; set Z probe trigger value, offset and trigger height M557 X35:215 Y35:195 S50 ; define mesh grid ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B3950 ; 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 M140 H0 ; map heated bed to heater 0 M143 H0 S100 ; set temperature limit for heater 0 to 120C M308 S1 P"121.temp0" Y"pt1000" ; configure sensor 1 as PT1000 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 S450 ; set temperature limit for heater 1 to 300C ; 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 S"E3D Hemera" 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 T0 ; select first tool M501
M122
m122 === Diagnostics === RepRapFirmware for Duet 3 MB6HC version 3.4.1 (2022-06-01 21:09:01) running on Duet 3 MB6HC v1.01 or later (SBC mode) Board ID: 0JD2M-999AL-D25S0-7JKD2-3SS6M-T52V2 Used output buffers: 1 of 40 (12 max) === RTOS === Static ram: 151000 Dynamic ram: 65912 of which 0 recycled Never used RAM 133760, free system stack 199 words Tasks: SBC(ready,0.5%,460) HEAT(notifyWait,0.0%,321) Move(notifyWait,0.0%,257) CanReceiv(notifyWait,0.0%,772) CanSender(notifyWait,0.0%,356) CanClock(delaying,0.0%,339) TMC(notifyWait,7.6%,92) MAIN(running,91.8%,1231) IDLE(ready,0.0%,30), total 100.0% Owned mutexes: HTTP(MAIN) === Platform === Last reset 00:56:47 ago, cause: power up Last software reset at 2022-09-25 00:46, reason: AssertionFailed, GCodes spinning, available RAM 133400, slot 2 Software reset code 0x4123 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x2041b54c Task MAIN Freestk 1689 ok Stack: 00000002 ffffffff 00484c9f 20429870 ffffffff 32dad356 2042d704 20419a8c 2042da9c ffffffff 00000000 32dad356 00484cbf 2041b59c 20429f48 fffc000a 00482a7f 2042da98 0045c99b 00000000 2042da9c 00000000 2041b5ac 00000101 20424000 a5a5a5a5 0000001f Error status: 0x00 Step timer max interval 158 MCU temperature: min 28.5, current 49.5, max 49.6 Supply voltage: min 24.0, current 24.0, 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.3, under voltage events: 0 Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Events: 8 queued, 8 completed Driver 0: standstill, SG min 0, mspos 8, reads 31594, writes 14 timeouts 0 Driver 1: standstill, SG min 0, mspos 8, reads 31594, writes 14 timeouts 0 Driver 2: standstill, SG min 0, mspos 8, reads 31594, writes 14 timeouts 0 Driver 3: standstill, SG min 0, mspos 8, reads 31594, writes 14 timeouts 0 Driver 4: standstill, SG min 0, mspos 8, reads 31597, writes 11 timeouts 0 Driver 5: standstill, SG min 0, mspos 8, reads 31597, writes 11 timeouts 0 Date/time: 2022-09-25 10:15:34 Slowest loop: 64.01ms; 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 0, maxWait 1230219ms, bed compensation in use: none, comp offset 0.000 === MainDDARing === Scheduled moves 6, completed 6, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 6], 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 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 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 30508, received 67589, lost 0, boc 2 Longest wait 3ms for reply type 6053, peak Tx sync delay 6, free buffers 50 (min 48), ts 17040/17038/0 Tx timeouts 0,0,0,0,0,0 === SBC interface === Transfer state: 5, failed transfers: 0, checksum errors: 0 RX/TX seq numbers: 1782/1782 SPI underruns 0, overruns 0 State: 5, disconnects: 0, timeouts: 0 total, 0 by SBC, IAP RAM available 0x2b880 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: 3.81, max time between full transfers: 259.0ms, max pin wait times: 74.2ms/21.6ms Codes per second: 0.00 Maximum length of RX/TX data transfers: 3244/880
m122 b121
m122 b121 Diagnostics for board 121: Duet TOOL1LC rev 1.1 or later firmware version 3.4.1 (2022-06-01 21:16:39) Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1) All averaging filters OK Never used RAM 2624, free system stack 45 words Tasks: Move(notifyWait,0.0%,111) HEAT(notifyWait,0.4%,103) CanAsync(notifyWait,0.0%,65) CanRecv(notifyWait,0.0%,74) CanClock(notifyWait,0.0%,65) ACCEL(notifyWait,0.0%,61) TMC(delaying,3.0%,57) MAIN(running,91.7%,349) IDLE(ready,0.0%,26) AIN(delaying,4.9%,142), total 100.0% Last reset 00:57:19 ago, cause: power up Last software reset data not available Driver 0: pos 17178, 409.0 steps/mm,phase A short to ground, phase B short to Vin, stalled, standstill, SG min 0, read errors 0, write errors 0, ifcnt 22, reads 15910, writes 22, timeouts 1, DMA errors 0, CC errors 0, failedOp 0x71, steps req 17178 done 17178 Moves scheduled 6, completed 6, in progress 0, hiccups 0, step errors 0, maxPrep 453, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0 Peak sync jitter -1/5, peak Rx sync delay 214, resyncs 0/0, no step interrupt scheduled VIN voltage: min 24.3, current 24.4, max 24.4 MCU temperature: min 26.1C, current 40.8C, max 41.8C Last sensors broadcast 0x00000002 found 1 51 ticks ago, 0 ordering errs, loop time 0 CAN messages queued 68253, send timeouts 0, received 30800, lost 0, free buffers 37, min 37, error reg 0 dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 307, adv 37057/37168 Accelerometer: LIS3DH, status: 00 I2C bus errors 0, naks 3, other errors 0
-
@Phaedrux I reduced extruder current from 1100 to 800. Now I get : Driver 121.0 warning: phase A short to ground, phase A may be disconnected. The stepper wiring is correct.
m122 b121 Diagnostics for board 121: Duet TOOL1LC rev 1.1 or later firmware version 3.4.1 (2022-06-01 21:16:39) Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1) All averaging filters OK Never used RAM 2204, free system stack 45 words Tasks: Move(notifyWait,0.0%,103) HEAT(notifyWait,0.4%,91) CanAsync(notifyWait,0.0%,57) CanRecv(notifyWait,0.0%,74) CanClock(notifyWait,0.0%,65) ACCEL(notifyWait,0.0%,61) TMC(notifyWait,3.0%,57) MAIN(running,91.7%,351) IDLE(ready,0.0%,26) AIN(delaying,4.9%,142), total 100.0% Last reset 00:16:19 ago, cause: software Last software reset data not available Driver 0: pos 6135, 409.0 steps/mm,phase A short to ground, stalled, standstill, SG min 0, read errors 0, write errors 1, ifcnt 25, reads 31089, writes 13, timeouts 1, DMA errors 0, CC errors 0, failedOp 0x6a, steps req 6135 done 6135 Moves scheduled 6, completed 6, in progress 0, hiccups 0, step errors 0, maxPrep 353, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0 Peak sync jitter -1/4, peak Rx sync delay 216, resyncs 0/0, no step interrupt scheduled VIN voltage: min 24.1, current 24.2, max 24.6 MCU temperature: min 41.1C, current 47.1C, max 47.1C Last sensors broadcast 0x00000002 found 1 10 ticks ago, 0 ordering errs, loop time 0 CAN messages queued 20994, send timeouts 0, received 9486, lost 0, free buffers 37, min 37, error reg 0 dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 302, adv 35803/74640 Accelerometer: LIS3DH, status: 00 I2C bus errors 0, naks 3, other errors 0 === Filament sensors === Interrupt 4 to 9us, poll 8 to 1646us Driver 0: pos 0.00, errs: frame 1 parity 0 ovrun 0 pol 0 ovdue 0
m122 === Diagnostics === RepRapFirmware for Duet 3 MB6HC version 3.4.1 (2022-06-01 21:09:01) running on Duet 3 MB6HC v1.01 or later (SBC mode) Board ID: 0JD2M-999AL-D25S0-7JKD2-3SS6M-T52V2 Used output buffers: 1 of 40 (12 max) === RTOS === Static ram: 151000 Dynamic ram: 66772 of which 0 recycled Never used RAM 132780, free system stack 140 words Tasks: SBC(ready,0.6%,472) HEAT(notifyWait,0.0%,321) Move(notifyWait,0.0%,257) CanReceiv(notifyWait,0.0%,772) CanSender(notifyWait,0.0%,356) CanClock(delaying,0.0%,339) TMC(notifyWait,8.1%,58) MAIN(running,89.6%,1229) IDLE(ready,1.5%,30), total 100.0% Owned mutexes: HTTP(MAIN) === Platform === Last reset 00:16:55 ago, cause: software Last software reset at 2022-09-25 16:55, reason: User, FilamentSensors spinning, available RAM 133332, slot 0 Software reset code 0x000d HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0044a000 BFAR 0x00000000 SP 0x00000000 Task SBC Freestk 0 n/a Error status: 0x00 Step timer max interval 172 MCU temperature: min 44.8, current 47.4, max 47.7 Supply voltage: min 23.7, current 23.8, max 24.4, under voltage events: 0, over voltage events: 0, power good: yes 12V rail voltage: min 12.2, current 12.2, max 12.3, under voltage events: 0 Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Events: 7 queued, 7 completed Driver 0: standstill, SG min 0, mspos 728, reads 56706, writes 17 timeouts 0 Driver 1: standstill, SG min 0, mspos 984, reads 56706, writes 17 timeouts 0 Driver 2: standstill, SG min 0, mspos 200, reads 56706, writes 17 timeouts 0 Driver 3: standstill, SG min 0, mspos 200, reads 56706, writes 17 timeouts 0 Driver 4: standstill, SG min 0, mspos 8, reads 56713, writes 11 timeouts 0 Driver 5: standstill, SG min 0, mspos 8, reads 56713, writes 11 timeouts 0 Date/time: 2022-09-25 17:12:48 Slowest loop: 72.78ms; 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 5, maxWait 195921ms, bed compensation in use: mesh, comp offset 0.000 === MainDDARing === Scheduled moves 341, completed 341, 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 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 Heater 0 is on, I-accum = 0.3 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 === Filament sensors === Extruder 0: no data received === CAN === Messages queued 9812, received 21741, lost 0, boc 0 Longest wait 4ms for reply type 6024, peak Tx sync delay 13, free buffers 50 (min 48), ts 5080/5079/0 Tx timeouts 0,0,0,0,0,0 === SBC interface === Transfer state: 5, failed transfers: 0, checksum errors: 0 RX/TX seq numbers: 41173/41173 SPI underruns 0, overruns 0 State: 5, disconnects: 0, timeouts: 0 total, 0 by SBC, IAP RAM available 0x2b880 Buffer RX/TX: 0/0-0, open files: 0 === Duet Control Server === Duet Control Server v3.4.1 File /opt/dsf/sd/gcodes/Calibration & Test Prints/CE5P_20220925_Calibration_Cat_aka_Calicat.gcode is selected, paused Code buffer space: 4096 Configured SPI speed: 8000000Hz, TfrRdy pin glitches: 0 Full transfers per second: 40.61, max time between full transfers: 968.6ms, max pin wait times: 47.6ms/8.4ms Codes per second: 15.31 Maximum length of RX/TX data transfers: 3768/1504
My toolboard is mounted directly to the E3D Hemera
-
Can you please try adding a
G4 S5
command to the start of your config.g? This adds a short pause to allow expansion boards to startup before the config is executed.Did this driver ever work? If it had, has anything changed or happened recently?
When and where did you get the toolboard?
-
@tratoon said in Driver 121.0 Errors:
The stepper wiring is correct.
I'm sorry, but given that incorrect wiring is a known cause of this type of error, we need supporting evidence such as photos. If we can confirm that the wiring is correct, we will replace the boar under warranty.
-
@dc42 I can send photos. I plugged stepper motor cable to another tool board I am using and it works so I will send photos of it connected to first board that has errors
-
@phaedrux driver never worked got it a few weeks ago from filastruder
-
@dc42 I have the pictures:
I just swapped the toolboard for another one I had on hand and it works. So it is probably that the toolboard had a defective driver.
-
Please send an email to warranty@duet3d.com and CC your reseller. Include a link to this forum thread and the details of your original purchase. You'll receive a reply with a form to fill out.
-
@phaedrux Hello, I also have another Duet tool board! that has an issue. One of the pins for the VOUT selection for OUT 1 & OUT 2 came soldered improperly. Here is an image:
I am hoping to get a refund/replacement for this one
-
Hello,
It seems you have:
1x 1LC with no issues
1x 1LC with a short to ground issue
1x 1LC that is working, but one pin header is slightly slantedIs that correct?
I can only find two boards ordered by you from Filastruder.
-
@elmoret One has a defective driver. I will look more into if it is improper soldering or bent pins on the other one. I would l like to return the one with driver issues while receiving replacement instead of sending both boards at the same time so that way I minimize downtime of my printer. It is 2 toolboards, you listed 3