Spurious heater faults
-
Hi,
Recently I started printing with ASA which requires a higher bed temperature (85c). Every single print was getting a heater fault, so I did another PID tune of the bed at 100c. Every single print still gets a heater fault.
The only way I've found to avoid the heater faults is to preheat the bed, first to 60c or 70c then finally to my target temperature. After that I can start the print without fault.
What diagnostic information do you need to debug this?
Happy to try any other troubleshooting steps, I went through these before: https://docs.duet3d.com/en/User_manual/Troubleshooting/Heater_faults
Also it always (like 100%) triggers a heater fault unless I preheat the bed manually. So these heater faults are not really spurious, but reliable
-
Just thought of a hack for this... I might put M562 in daemon.g if there's no solution...
-
What exactly is the heater fault?
What firmware & board?
What kind of bed heater?
How is the heater configured? (post config.g)
What command are you issuing for PID?There have been quite a few changes to heating over the last few firmware versions.
Without all the details it's impossible to give advice.
However I have found that for the nozzle heater I have, the PID values I get from RRF3.4 cause excessive overshoot when initially heating, so I had to manually tweak them a bit to avoid errors from going more than 15 degrees above the target value.
I haven't had the same issue on my bed though (240v) -
- Heat is rising too slowly
- It's an aluminum bed, it's a railcore so fairly large 300x300. The printer is enclosed.
- Keenovo heater.
- See below
M303 H0 S100
Config.g:
;General Setup - RailCore RRF on a SBC for Duet3 M929 S2 ; Enable Logging G21 ; Work in millimetres G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves ; Stepper configuration M569 P0 S1 D3 ; Drive 0 X / Rear M569 P1 S0 D3 ; Drive 1 Y / Front M569 P2 S1 ; Drive 2 Z Front Left M569 P3 S1 ; Drive 3 Z Rear Left M569 P4 S1 ; Drive 4 Z Right M569 P5 S1 ; Drive 5 Extruder ;Axis configuration M669 K1 ; corexy mode M584 X0 Y1 Z2:3:4 E5 ; Map X to drive 0 Y to drive 1, Z to drives 2, 3, 4, and E to drive 5 ;Leadscrew locations M671 X-15:-15:336 Y20:277:150 S7.5 M350 X16 Y16 Z16 E16 I1 ; set 16x microstepping for axes with interpolation M906 X1400 Y1400 Z1200 E800 I80 ; Set motor currents (mA) ;M906 X1200 Y1200 Z1200 E800 I80 ; Set motor currents (mA) M201 X2500 Y2500 Z100 E1500 ; Accelerations (mm/s^2) M203 X24000 Y24000 Z900 E3600 ; Maximum speeds (mm/min) M566 X800 Y800 Z100 E1500 ; Maximum jerk speeds mm/minute M208 X288 Y305 Z338 ; set axis maxima and high homing switch positions (adjust to suit your machine) M208 X-10 Y0 Z0 S1 ; set axis minima and low homing switch positions (adjust to make X=0 and Y=0 the edges of the bed) M92 X200 Y200 Z1600 E837 ; steps/mm ; End Stops M574 X1 S1 P"io1.in" ; Map the X endstop to io1.in M574 Y1 S1 P"io2.in" ; May the Y endstop to io2.in ; Thermistors M308 S0 P"temp0" Y"thermistor" A"bed_heat" T100000 B4240 H0 L0 ; Bed thermistor - connected to temp0 M308 S1 P"temp1" Y"thermistor" A"e0_heat" T100000 B4725 C7.06e-8 H0 L0 ; duet3 e3d thermistor - connected to e0_heat ;M308 S1 P"temp1" Y"thermistor" A"e0_heat" T500000 B4723 C1.196220e-7 H0 L0 ; _RRF3_ slice thermistor M308 S2 P"temp2" Y"thermistor" A"keenovo" T100000 B3950 H0 L0 ; Keenovo thermistor - connected to temp2 ;Define Heaters M950 H0 C"out0" T0 ; Bed heater is on out0 M950 H1 C"out1" T1 ; Hotend heater is on out1 ;Define Bed M140 H0 M307 H0 R0.246 K0.112:0.000 D30.62 E1.35 S1.00 B0 ; Bed, with enclosure tuned at 100c ; M307 H0 B0 R0.238 C1055.6 D38.24 S1.00 V24.0 ; Bed, with enclosure tuned at 60c ; M307 H0 R0.225 K0.135:0.000 D45.28 E1.35 S1.00 B0 ; Bed, no enclosure tuned at 60c M307 H1 R2.489 K0.564:0.000 D6.51 E1.35 S1.00 B0 V24.0 ; Hotend with 5015 fan, with enclosure ; M307 H1 R2.370 K0.536:0.000 D7.36 E1.35 S1.00 B0 V24.0 ; Hotend with 5015 fan, no enclosure M570 S360 ; Hotend may be a little slow to heat up so allow it 180 seconds M143 S295 ; Set max hotend temperature ; Mesh bed level grid M557 X102.5:227.5 Y92.65:207.65 P2:2 ; Fans M950 F0 C"out4" ; Layer fan on "out4" connector M106 P0 S0 ; Layer Fan M950 F1 C"out5" ; Hotend fan on "out5" connector M106 P1 S255 H1 T50 ; enable thermostatic mode for hotend fan ; M106 P1 S0 ; Filter fans M950 F2 C"out9" M106 P2 S0 M950 F3 C"out8" M106 P3 S0 ; Tool definitions M563 P0 D0 H1 F0 ; Define tool 0 G10 P0 S0 R0 ; Set tool 0 operating and standby temperatures ; BLTouch ; larger probe offset = nozzle closer to the bed M558 P9 C"io7.in" H5 R1 F120 T6000 A5 S0.02 B1 ; define the bltouch input on io7.in M950 S0 C"io7.out" ; define the bltouch servo on io7.out ;G31 X2 Y38.15 Z1.38 P25 ; set the offsets for the bltouch G31 X2 Y38.15 Z1.15 P25 ; set the offsets for the bltouch ; Calibrate MCU Temperature M912 P0 S-8.7 ; Stealthchop M98 P"stealthchop/config.g" T0 ; select first hot end
-
cc @Phaedrux maybe?
-
Can you try removing
M307 H0 R0.246 K0.112:0.000 D30.62 E1.35 S1.00 B0 ; Bed, with enclosure tuned at 100c
from your config.g and re-running the tuning process withM303 H0 S100
and this time take a screen shot of the tuning process after a while so we can see the graph?Be sure to start the tuning process from ambient temp.
-
Thanks!
Still running the tuner, can post results when done. Just realized that my config.g has "B4240" for the bed thermistor, when I think it should be B3950. Could that be the cause?
-
I think the problem is that it is using the wrong thermistor value, as per the graph the keenovo thermistor vs bed thermistor are way different when they should be the same. This is my mistake.
Thank you Phaedrux!
-
-
-
Hmm, got another heater fault today despite having changed the thermistor value and retuning.
-
Are you copy and pasting the results into your config?
Have you tried using M500 to save them to config-override.g and then adding M501 to the end of your config to load the values at startup?It seems like the values aren't actually applied. Can you send
M307 H0
in the gcode console and see what values it is actually using.Is it perhaps your part cooling fan coming on and causing the temp to drop? Or is the enclosure temp different during a print versus when it's tuned?
-
Yep I do copy/paste the line into config.g. It looks like the values are applied correctly too:
In my config.g:
M307 H0:
-
What does the temp graph look like when the error occurs? It seems weird that it expects a rate of 0.28 but actually saw a rate of 0. Is the thermistor not making good contact?
-
-
This post is deleted! -
@arnold_r_clark said in Spurious heater faults:
never reach the same conclusion twice
How much variation are you seeing?
-
This post is deleted! -
This post is deleted!