Duet 3 Mini 5+ Resetting when bed heater turned on
-
Hi,
I am in the process of getting my duet 3 mini 5+ board set up with my printer. I've got all the connections hooked up, motors, end stops, probe, all working perfectly. I have done the PID tune on the hot end, but when I went to turn on the heated bed from DWC there is a couple second pause and then the board performs a reset. I've triple checked my wiring to make sure everything is in the right place which it is.
I can't figure out what the problem is and I'm hoping for some help.
Here is the Printer Diagnostics report from M122
M122
=== Diagnostics ===
RepRapFirmware for Duet 3 Mini 5+ version 3.4.0 (2022-03-15 18:59:15) running on Duet 3 Mini5plus WiFi (standalone mode)
Board ID: 1YMFA-V196U-D65J0-40KMJ-2G03Z-7VX94
Used output buffers: 3 of 40 (40 max)
=== RTOS ===
Static ram: 103684
Dynamic ram: 114184 of which 0 recycled
Never used RAM 23844, free system stack 204 words
Tasks: NETWORK(ready,12.5%,226) HEAT(notifyWait,0.0%,358) Move(notifyWait,0.0%,363) CanReceiv(notifyWait,0.0%,942) CanSender(notifyWait,0.0%,372) CanClock(delaying,0.0%,339) TMC(delaying,0.7%,114) MAIN(running,85.0%,414) IDLE(ready,0.9%,29) AIN(delaying,0.8%,273), total 100.0%
Owned mutexes: WiFi(NETWORK)
=== Platform ===
Last reset 00:00:27 ago, cause: power up
Last software reset at 2022-06-04 18:10, reason: User, GCodes spinning, available RAM 23844, slot 2
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00000000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
Error status: 0x04
Aux0 errors 0,0,1
MCU revision 3, ADC conversions started 27351, completed 27351, timed out 0, errs 0
Step timer max interval 752
MCU temperature: min 23.2, current 25.2, max 25.4
Supply voltage: min 24.3, current 24.3, max 24.4, under voltage events: 0, over voltage events: 0, power good: yes
Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0
Events: 0 queued, 0 completed
Driver 0: standstill, SG min 0, read errors 0, write errors 0, ifcnt 10, reads 1409, writes 10, timeouts 0, DMA errors 0, CC errors 0
Driver 1: standstill, SG min 0, read errors 0, write errors 0, ifcnt 10, reads 1409, writes 10, timeouts 0, DMA errors 0, CC errors 0
Driver 2: standstill, SG min 0, read errors 0, write errors 0, ifcnt 9, reads 1410, writes 9, timeouts 0, DMA errors 0, CC errors 0
Driver 3: standstill, SG min 0, read errors 0, write errors 0, ifcnt 9, reads 1410, writes 9, timeouts 0, DMA errors 0, CC errors 0
Driver 4: standstill, SG min 0, read errors 0, write errors 0, ifcnt 10, reads 1409, writes 10, timeouts 0, DMA errors 0, CC errors 0
Driver 5: not present
Driver 6: not present
Date/time: 2022-06-04 18:12:41
Cache data hit count 51305826
Slowest loop: 10.10ms; fastest: 0.13msHere is the Heater Section of my config.g
; 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.443 K0.617:0.000 D11.83 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"temp1" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin temp1
M950 H1 C"out1" T1 ; create nozzle heater output on out1 and map it to sensor 1
M307 H1 R2.972 K0.448:0.498 D5.19 E1.35 S1.00 B0 V24.3 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S300 ; set temperature limit for heater 1 to 280C -
Photos of the bet wiring? Details about the bed heater and power supply?
Did you capture that M122 as soon as the Duet came back up? The reset cause thinks that the power was just turned off. So if that was captured after the problem it could be due to a short with the wiring, or the PSU faulted.
-
@phaedrux Sure I'll attach a photo here - sorry if its a bit messy I will clean up the wires once everything is actually working. In the picture I have the thermistor connected to temp2 (i thought maybe it was an issue with temp0 but its not, same problem)
The heat bed is the 24V Ender-3 Max (CR10S) print bed 320mm x 310mm. Black + Red Wires going to the corresponding screw terminals you have listed in the duet 3 mini 5+ wiring diagram. Power supply is meanwell 24v LRS-350.
It is consistently reporting 24.3V from the DWC, and when I double check it with multimeter it is the same.
It seems that the results vary when I turn the heater on. Either
-
the bed starts to heat up, and then the DWC reports a fault saying
"Heater 0 fault: temperature rising too slowly: expected 1.66°C/sec measured 0.36°C/sec" which I'm thinking could be the problem? I don't think there is any the bed would be heating at 1.66 degrees per second. I have the exact same one on another printer and it definitely does not heat that fast. Is there something I'm missing in the config which is making the firmware think it should be heating this quickly? My M308 is S0 P"temp2" Y"thermistor" T100000 B4138 -
If the above doesn't occur then there will be the delay as I previously I described, and then it will just perform the reset where it disconnects, and then restarts again.
As a side note, I tried hooking up another 24v heat bed that I have laying around and the same problem occurred so I don't think its an issue with a fault in the wiring.
-
-
@phaedrux And with regard to the M122 command, yes when the board simply decides to reset that is where that M122 command came from.
In the case where it starts to heat up but then has the heater fault error it gives me this "Heater 0 fault: temperature rising too slowly: expected 2.19°C/sec measured 0.46°C/sec".
For whatever reason it seems like the "expected" is way too high, and also seems to change every time I try it which doesn't seem to make any sense.
-
@derks10 said in Duet 3 Mini 5+ Resetting when bed heater turned on:
The heat bed is the 24V Ender-3 Max (CR10S) print bed 320mm x 310mm.
Do you know what the wattage and amperage is for that bed heater? At 24 volts and that size it could be quite substantial. You may be exceeding the capacity of the power supply, or exceeding the limits of the mosfet on the Duet.
Need more details on the heater to determine if that's the case.
Once we confirm that your bed and power supply are going to get along we can address the other error.
@derks10 said in Duet 3 Mini 5+ Resetting when bed heater turned on:
the bed starts to heat up, and then the DWC reports a fault saying
"Heater 0 fault: temperature rising too slowly:Have you tried doing a PID tune on the bed yet?
M303 H0 S60
to tune it. See if it can make it through the process. It can take a long time for a slow heating bed. Be patient. -
@phaedrux The bed is 220 watt, 24 volts, which would be what, 9 amp? That should not be any issue for the power supply or the board.
The power supply is LRS350-24V which is 14.6amp (https://www.meanwell.com/productPdf.aspx?i=459 see the 24V specs 3rd from right on page 2). I have the same exact heatbed, with the same power supply running on my ender-3 max printer and it works perfectly fine without issue.
Last night I also tried hooking up an external mosfet between the duet and the heat bed because I was thinking exactly what you're suggesting however the same problem occurred.
I did try to run a PID tune on the bed, and it actually did make it through the process once. However then once I copied the M307 line over the config.g restarted the board, and then tried turning the heater on again it went back to having the same problem.
Ultimately it seems to me that leaves two options. My first thought would be its something in the config, or firmware setup. Its not an AC heatbed so as i'm sure you know they typically heat up roughly 0.5-1 degree per second (1 degree being very quick as that would mean its at 60degrees in a minute). More likely it should be around 0.2-0.5 degrees per second. However, as I posted before whenever the heater fault error occurs it is saying that it expects the bed to heat up at a rate of 2.19 degrees celcius per second which is crazy for a heat bed.
I apologize for the long responses - its very frustrating that I can't get the thing to work. I've even gone and compared config files to my config.g from the duet2 wifi I have running on my E3D Toolchanger with no noticable differences that I can see which would cause a problem. And yes both are running on RRF 3.4 so the heatbed configs should be comparable.
Thanks again - Erlich!
-
@derks10 if the M122 report after the uncommanded reset always indicates the reset reason as "power up" then it means the power to the Duet was cut. The most likely reasons for this are:
- A bad connection between the power supply and the Duet VIN terminals.
- The bed heater has too low a resistance, so it is drawing too much current, which causes the PSU to cut out. If you have a multimeter, I suggest you measure the resistance of the bed heater.
- The bed heater has a short to ground (perhaps only after heating for a short while), so it is drawing too much current and the PSU is cutting out.
- The PSU has gone bad and is cutting out at too low a current. We have seen this type of problem before.
-
@dc42 Okay well, I will go over all of the connections again, and measure resistance on the heat bed.
Do you have any thought on the "expected 2.19°C/sec" heating from the heater fault error? It says measured at 0.46 degrees/sec which seems to be exactly what it should be to me. Is there a way that I could reduce the expected heating rate so that I don't get the heater fault?
Thanks
-
@dc42 I will also give this a try again
https://duet3d.dozuki.com/Wiki/Tuning_the_heater_temperature_control
it seems like you have specifically noted this issue so, I will let you know what happens. I have tried running the autotune already but I didn't adjust the R and D value after so I'll give that a go.
- Erlich
-
@derks10 said in Duet 3 Mini 5+ Resetting when bed heater turned on:
Is there a way that I could reduce the expected heating rate so that I don't get the heater fault?
Yes, tune the heater so it knows exactly what to expect. But the heater needs to work without resetting the machine first.