M143 issue
-
I'm having issue with a bed thermistor not really reaching the set temp (example: setting it to 110c is really more like 85c, even after a period of time). To experiment, I've temporarily raised my max bed temp to 140c and am monitoring it closely.
What I've noticed is if I put the following in my config, it is not processed. I have to manually run it to allow me to go this high or else my heater faults..
M143 H0 S140
Is this by design? if so, I'd think an error would be thrown.. Is there a better way to handle this scenario? Thanks
-
https://duet3d.dozuki.com/Wiki/Gcode#Section_M143_Maximum_heater_temperature
If the heater is a bed or chamber heater then the M143 command must come after the M140 or M141 command that declares the heater as a bed or chamber heater.if you bed takes a long time to heat you might have to increase the dead time. see
https://duet3d.dozuki.com/Wiki/Tuning_the_heater_temperature_control#Section_RRF_3_x_Error_Heater_0_fault_temperature_rising_much_more_slowly_than_the_expected_1_7_C_sec -
@Veti Thanks! unfortunately, my issue is a bad thermistor as it never reaches temp.. and I've been too busy with other testing to stop and replace it.
-
could it be a wrong setting for the thermistor?
-
@Veti it's only one of 3 machines with the issue, so I don't think so.. I'll get that sorted here soon.
My real issue is setting the max bed temp of 140 isn't really all that high and feels like a bug.. especially since there are filaments out there that require higher than that.
Also, M140 is before M143 for my bed heater and I'm not using M141 yet in my config..
M140 H0 ; Maps heated bed to heater 0 M143 H0 S140 ; Sets temperature limit for heater 0 to 120C
-
If you send M98 P"config.g" int he gcode console do you get any errors?
What firmware version and board are you using?
-
We are using Duet3 / RPi combo running 3.2b1. I've never noticed any errors when running config.g through M98 as we have a macro that is doing specifically that.. however, I can run it again once a machine frees up.
-
The reason for sending M98 P"config.g" is to see any error messages that get thrown which may get suppressed during initial startup. It's a good way to catch syntax errors.
-
The only hardcoded limits are -10.0C < temp_limit < 2000.0C, at least in rrf v3.2. Default limit is 125C I think for the bed, but it shouldn't reject higher values.
More likely to be some weirdness with command ordering or initialization timings.
-
I just ran M98 P"config.g" and the only thing logged is:
Warning: M307: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 365C
Could this be related? I haven't looked into how to resolve this yet..
-
@oozeBot said in M143 issue:
Also, M140 is before M143 for my bed heater and I'm not using M141 yet in my config..
Is your M950 H0 command before both the M140 command and the M143 H0 command?
If you run M98 P"config.g" do you see any error messages?
-
Full snippet - not sure why I didn't post it earlier.. sorry.
And yes, these are crappy thermistors.. but this one is especially bad, which is what led me to test in this way.
;== Bed Heater ========================= M308 S0 P"temp0" Y"thermistor" T100000 B3950 ; Configures sensor 0 as thermistor on pin temp0 M950 H0 C"0.out7" T0 ; Creates bed heater output on out1 and map it to sensor 0 M307 H0 B0 S1.00 ; Disables bang-bang mode for the bed heater and set PWM limit M140 H0 ; Maps heated bed to heater 0 M143 H0 S140 ; Sets temperature limit for heater 0 to 120C M307 H0 A241.5 C374.3 D1.8 S1.0 V24.0 B0 ; Applies auto-tune results
-
@oozeBot said in M143 issue:
I just ran M98 P"config.g" and the only thing logged is:
Warning: M307: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 365C
Could this be related? I haven't looked into how to resolve this yet..
-
@Phaedrux @dc42 - I just did a hard reboot and ran the following command:
echo heat.heaters[0].max
which returned 125. It's only when I run M143 H0 S140 again will the setting change..
And about the M307 issue, yeah - these are mains heaters and are quite powerful. They are protected with a thermal fuse.
-
Maybe M307 resets the M143 settings. Test this by moving the M143 after the M307.
-
@dc42 that fixed it! But wouldn't the M307 loaded into config-override.g instead still load in this same order? I can test if needed..
-
@oozeBot said in M143 issue:
@dc42 that fixed it! But wouldn't the M307 loaded into config-override.g instead still load in this same order? I can test if needed..
Yes, that will be a problem. I will log it as a bug.
-
@dc42 I just experienced this in 3.2B3 where I had to run "M143 H0 S140" again to get the default to increase above 125. Here is my current config. This was working in 3.2B1 after moving M143 after M307.. Thanks
;== Bed Heater ========================= M308 S0 P"temp0" Y"thermistor" T100000 B3950 ; Configures sensor 0 as thermistor on pin temp0 M950 H0 C"0.out1" T0 ; Creates bed heater output on out1 M307 H0 B0 S1.00 ; Disables bang-bang mode for the bed heater and set PWM limit M140 H0 ; Maps heated bed to heater 0 M307 H0 A241.5 C374.3 D1.8 S1.0 V24.0 B0 ; Applies auto-tune results M143 H0 S140 ; Sets temperature limit
-
@dc42 just bumping this as 3.2B3 is definitely not accepting the following command when run from my config. There is no config-override.g. I must run M143 H0 S140 twice to get the updated value to stick.. see above for my current config.
-
@oozeBot, please provide your whole config.g file.