I run half a dozen Duet but one of them started to give me a lot of headaches and only this one (unique hardware + configuration so no other to compare to).
issue: tool head 3 heater is always enabled. The software detects a thermal runaway but the heater stays enabled. The only option to stop the machine from catching fire is to remove the main power.
Hardware:
troubleshooting done (hardware):
- measuring the mosfets => good
- checking the driver for obvious issues with a multimeter => no issue found
- moving toolheads hotends around. Issue persists on #3 spot (4th toolhead) so it is unrelated to the tool head. disconnecting it entirely also causes the heater to stay on
- removing the SD-card => issue is gone.
- sometimes it works like it should. Most of the time it doesn't.
- on this particular unit there were some other minor anomalies regarding the WIFI earlier (wouldn't connect to the network) but those fixed themselves after a few rounds of resetting the wifi module, adding it to the wifi network again, waiting a few days for it fail once more.
**TL;DR Is my assumption correct that this indicated an issue with the Firmware from Duet which isn't just on this device but also on the newer Duet 3?
Did anybody has run into a similar issue and was able to resolve it?
In the wider picture: Is every duet product unsafe?**
This is an older Duet 2 but it runs the same/similar firmware as the current generation Duet 3. So one of the big questions is if all of the Duet products are unsafe. Would be bad as this has been my controller of choice meaning a lot of work to replace all of them.
Btw. If you buy a duet: don't expect ANY support from the manufacturer.
Here is the main config file:
spoiler
; Configurat; Configuration file for Duet WiFi / Ethernet
; executed by the firmware on start-up
; General preferences
M111 S0 ; Debugging off
G21 ; Work in millimetres
G90 ; Send absolute coordinates...
M83 ; ...but relative extruder moves
M555 P2 ; Set firmware compatibility to look like Marlin
; Network
; Read https://duet3d.dozuki.com/Wiki/Gcode#Section_M587_Add_WiFi_host_network_to_remembered_list_or_list_remembered_networks
M550 P"ToolChanger" ; Set machine name
M552 S1 ; Enable Networking
M586 P0 S1 ; Enable HTTP
M586 P1 S0 ; Disable FTP
M586 P2 S1 ; Enable Telnet
M667 S1 ; Select CoreXY mode
; Endstops
M574 X1 Y1 S3 ; Set X / Y endstop stall detection
M574 Z1 S2 ; Set Z endstop probe
M558 C"zstop" P8 X0 Y0 Z2 H3 F360 I0 T20000 ; Set Z probe type to switch, the axes for which it is used and the dive height + speeds
G31 P200 X0 Y0 Z-0.10 ; Set Z probe trigger value, offset and trigger height
M557 X10:290 Y20:180 S20 ; Define mesh grid
; Drive direction
M569 P0 S0 ; Drive 0 X
M569 P1 S0 ; Drive 1 Y
M569 P2 S1 ; Drive 2 Z
M569 P3 S0 ; Drive 3 E0
M569 P4 S1 ; Drive 4 E1
M569 P5 S1 ; Drive 5 E2
M569 P6 S1 ; Drive 6 E3
M569 P7 S0 ; Drive 7 COUPLER
M569 P8 S0 ; Drive 8 UNUSED
M569 P9 S0 ; Drive 9 UNUSED
M584 X0 Y1 Z2 C7 E3:4:5:6 ; Apply custom drive mapping
M208 X-35:328.5 Y-49:243 Z0:300 C0:260 S0 ; Set axis maxima & minima
M350 C8 I0 ; Configure microstepping without interpolation
M350 X16 Y16 Z16 E16:16:16:16 I1 ; Configure microstepping with interpolation
M92 X100 Y100 Z1600 C100 E655:655:655:655 ; Set steps per mm
M566 X400 Y400 Z30 C2 E300:300:300:300 ; Set maximum instantaneous speed changes (mm/min) "was 2 before"
M203 X35000 Y35000 Z1200 C5000 E3600:3600:3600:3600 ; Set maximum speeds (mm/min)
M201 X6000 Y6000 Z400 C400 E600:600:600:600 ; Set accelerations (mm/s^2)
M906 X2000 Y2000 Z1330 C400 E500:500:500:600 I30 ; Set motor currents (mA) and motor idle factor in percent
M84 S120 ; Set idle timeout
;Stall Detection
M915 C S5 F0 H200 ; Coupler
;Stall Detection
M915 X Y S3 F0 H400 R2 ; X / Y Axes
;M915 X Y S5 F0 H400 ; OLD X / Y Axes
; Heaters
M308 S0 P"bedtemp" Y"thermistor" A"Bed" T100000 B4725 C7.06e-8 ; Set thermistor
M950 H0 C"bedheat" T0 ; Bed heater
M140 H0 ; Add heater to bed after RRF3.01 RC10
M143 H0 S200 ; Set temperature limit for heater 0 to 225C
M308 S1 P"e0temp" Y"thermistor" A"T0" T500000 B4723 C1.19622e-7 ; Set thermistor
M950 H1 C"e0heat" T1 ; Extruder 0 heater
M143 H1 S350 ; Set temperature limit for heater 1 to 300C
M308 S2 P"e1temp" Y"thermistor" A"T1" T100000 B4725 C7.06e-8 ; Set thermistor
M950 H2 C"e1heat" T2 ; Extruder 0 heater
M143 H2 S300 ; Set temperature limit for heater 2 to 300C
M308 S3 P"e2temp" Y"thermistor" A"T2" T100000 B4725 C7.06e-8 ; Set thermistor
M950 H3 C"duex.e2heat" T3 ; Extruder 0 heater
M143 H3 S300 ; Set temperature limit for heater 3 to 300C
M308 S4 P"e3temp" Y"thermistor" A"T3" T100000 B4725 C7.06e-8 ; Set thermistor
M950 H4 C"duex.e3heat" T4 ; Extruder 0 heater
M143 H4 S300 ; Set temperature limit for heater 4 to 300C
; Tools
M563 P0 S"T0" D0 H1 F2 ; Define tool 0
G10 P0 X0 Y0 Z0 ; Reset tool 0 axis offsets
G10 P0 R0 S0 ; Reset initial tool 0 active and standby temperatures to 0C
M563 P1 S"T1" D1 H2 F4 ; Define tool 1
G10 P1 X0 Y0 Z0 ; Reset tool 1 axis offsets
G10 P1 R0 S0 ; Reset initial tool 1 active and standby temperatures to 0C
M563 P2 S"T2" D2 H3 F6 ; Define tool 2
G10 P2 X0 Y0 Z0 ; Reset tool 2 axis offsets
G10 P2 R0 S0 ; Reset initial tool 2 active and standby temperatures to 0C
M563 P3 S"T3" D3 H4 F8 ; Define tool 3
G10 P3 X0 Y0 Z0 ; Reset tool 3 axis offsets
G10 P3 R0 S0 ; Reset initial tool 3 active and standby temperatures to 0C
; Fans
M950 F1 C"fan1"
M950 F2 C"fan2"
M950 F3 C"duex.fan3"
M950 F4 C"duex.fan4"
M950 F5 C"duex.fan5"
M950 F6 C"duex.fan6"
M950 F7 C"duex.fan7"
M950 F8 C"duex.fan8"
M106 P0 S0 ; UNUSED
M106 P1 S255 H1 T70 ; T0 HE
M106 P2 S0 ; T0 PCF
M106 P3 S255 H2 T70 ; T1 HE
M106 P4 S0 ; T1 PCF
M106 P5 S255 H3 T70 ; T2 HE
M106 P6 S0 ; T2 PCF
M106 P7 S255 H4 T70 ; T3 HE
M106 P8 S0 ; T3 PCF
M593 F42.2 ; cancel ringing at 50Hz (https://forum.e3d-online.com/threads/accelerometer-and-resonance-measurements-of-the-motion-system.3445/)
;M376 H15 ; bed compensation taper
;tool offsets
; !ESTIMATED! offsets for:
; V6-tool: X-9 Y39 Z-5
; Volcano-tool: X-9 Y39 Z-13.5
; Hemera-tool: X-37.5 Y43.5 Z-6
G10 P0 X-9 Y39 Z-5.0 ; T0
G10 P1 X-9 Y38.7 Z-4.7 ; T1
G10 P2 X-8.9 Y38.5 Z-4.8 ; T2
G10 P3 X-9.1 Y38.5 Z-4.7 ; T3
;deselect tools
T-1
M572 D0 S0.02 ; pressure advance T0
M572 D1 S0.02 ; pressure advance T1
M572 D2 S0.02 ; pressure advance T2
M572 D3 S0.02 ; pressure advance T3
M575 P1 S1 B57600
M501; load config-override.g
config-overwrite:
spoiler
; config-override.g file generated in response to M500 at 2021-04-13 12:07
; This is a system-generated file - do not edit
; Heater model parameters
M307 H0 R1.331 C160.969:160.969 D2.79 S1.00 V24.4 B0
M307 H1 R2.634 C271.153:235.156 D6.07 S1.00 V24.3 B0
M307 H2 R1.953 C229.435:178.815 D5.00 S1.00 V24.3 B0
M307 H3 R1.858 C222.604:195.090 D5.31 S1.00 V24.4 B0
M307 H4 R1.612 C251.412:217.040 D7.48 S1.00 V24.4 B0
; Workplace coordinates
G10 L2 P1 X0.00 Y0.00 Z0.00 C0.00
G10 L2 P2 X0.00 Y0.00 Z0.00 C0.00
G10 L2 P3 X0.00 Y0.00 Z0.00 C0.00
G10 L2 P4 X0.00 Y0.00 Z0.00 C0.00
G10 L2 P5 X0.00 Y0.00 Z0.00 C0.00
G10 L2 P6 X0.00 Y0.00 Z0.00 C0.00
G10 L2 P7 X0.00 Y0.00 Z0.00 C0.00
G10 L2 P8 X0.00 Y0.00 Z0.00 C0.00
G10 L2 P9 X0.00 Y0.00 Z0.00 C0.00
M486 S-1