Heater faults - done everything in the ways of tuning
So I've been battling this issue for a couple weeks now - I'd say 1/4 of the time I can get my print head heater cartridge to not throw a fault code (usually saying it's rising too slowly). I've tried everything I can in the ways of PID tuning, raising the PWM percentage as high as 0.9. When it's allowed to heat up, it heats up pretty quick. But most of the time, it starts and either nothing happens (temp doesn't change at all) or it starts rising slowly at first, then progresses quickly to the target temp.
Somewhere I had read a way to increase the thresh hold time in which it will throw a fault, but haven't found a way to just decrease the minimum degreesC/s before it throws a fault. The heat cartridge works just fine in my old RAMPS setup - and I've also tried using it with a DC-DC solid state relay (similar to how I have my heated bed set up) - and I've noticed, with the heated bed, when I tell it to start heating up, the PWM signal is applied immediately (there's an LED on the relay showing it's triggered). With the hot end though, sometimes the relay will never come on, implying that there is no voltage being applied to the H1 pins at all, then proceeds to throw a fault about it rising too slow. Sometimes, it takes a few seconds before it starts - and I have to cross my fingers that it will get past maybe 90C so I can actually reach temp and try to print.
Anyone else have similar issues Any solutions I haven't tried? I've also tried a second heater cart of the same time (ultimater) and nothing. Also, there is no part cooling fan.
EDIT: Also, when trying to do the tuning, I got this a lot: Auto tune cancelled because starting temperature is not stable. This normally happened when I tried to start the tuning at around 35C (while ambient temps are closer to 22) and for whatever reason, as noted above, there just isn't voltage triggering my SSR - so of course it's unstable, it's not receiving any power!
When you run auto tuning, the firmware waits a few seconds before turning the heater on to check that the reading is stable. If the heater is much above room temperature, it will be cooling down and so not stable.
If when you tune you get a message that the temperature is not increasing, the workaround is to temporarily increase the dead time. For example, send M307 H1 D30.
Have you successfully run auto tuning on the extruder heater? If so, what M307 values did it produce?
I'm wondering whether you have a bad connection in the extruder heater circuit. Check that the terminal block screws are tight.
LeonMF last edited by
In addition to what @dc42 said, make sure your thermistor is stable. I had a lot of problems with heater faults until I realized that my thermistor was pinched by a wire tie, resulting in unstable readings.
I will check both of those and get back to you. It seems like the thermister (well, it's actually PT100 thermocouple) using the expansion board. the M307 command might be what I need to get it working decently - it really just might be a lower power heater. Once I'm able to print, I'm going to work towards making a silicon sleeve for it to maybe help with that.
So just as an update to this (for anyone else who may stumble along this) - part of my problem was that I had assumed running the autotune would automatically save those values to the config (or some other system option save location) but you do have to manually go in after the fact and put the M307 command into the config - so part of my problem was every time I'd reset my machine (either to change settings, install something, etc etc) it was defaulting to whatever standard tuning it has, which just isn't reliable for my heaters. Works OK for my heated bed - but to be fair, it's a silicon matt hooked up to a SSR plugged into the wall - it's very responsive and very fast to heat up no matter what.
Here are the values I ended up using in the config M307 H1 A188.5 C66.1 D11.8 B0. It doesn't look terribly odd. I am testing currently wether I need to use M307 H1 D30 as an override setting or if what the PID tuning picked up will work OK.
Ther thermocouple seems to be stable - no spikes, responsive to touch and accurate to my IR thermal gun.
In firmware 1.17 you can run M500 after auto tuning. This will write the necessary M307 command to the config-override.g file. Then use the M501 command near the end of config.g to run config-override.g.