Erratic M109
-
FIRMWARE_NAME: RepRapFirmware for Duet 2 WiFi/Ethernet FIRMWARE_VERSION: 2.04 ELECTRONICS: Duet WiFi 1.02 or later + DueX5 FIRMWARE_DATE: 2019-11-01b1
apparently it's not the latest but close enough
if I set M109 manually it seems to be working... I'm pretty confused... I swear it was working before.
-
okay... I'm a bit ashamed but in my defense the docs are not completely clear
the wiki for M143 says "S Maximum permitted temperature". Apparently the maximum permitted temperature is actually what you define in the S parameter minus 1 (I guess you should give it a good +5 margin anyway).
If you set the temp (with 109) to the max temperature the duet just ignores the command but keeps executing the following gcode. Shouldn't the machine just stop or maybe give an error that tells you we reached a soft temperature limit?
It took me more time than I'd like to admit... my bad... I'll see myself out... sowwy.
-
@matt3o said in Erratic M109:
If you set the temp (with 109) to the max temperature the duet just ignores the command but keeps executing the following gcode. Shouldn't the machine just stop or maybe give an error that tells you we reached a soft temperature limit?
Yes, there should be an error message.
-
@dc42 it's a warning regarding a faulty thermistor, it would be nice that if the maxtemp is reached the duet would just say so
-
@matt3o said in Erratic M109:
the wiki for M143 says "S Maximum permitted temperature". Apparently the maximum permitted temperature is actually what you define in the S parameter minus 1 (I guess you should give it a good +5 margin anyway).
I didn't realise you had M143 set, but then you didn't post your whole config.g! However, well done for working it out. I'd give it a larger margin that just 5 degrees, to allow for overshoot; I'd say 5-10%, so for 260C you probably want the limit to be 280C.
Not sure why you didn't get a warning message. I'll test tomorrow.
Ian
-
I didn't remember I actually set M143, it was an initial configuration and it was set to a very conservative value. I've set it to 290C now.
@droftarts said in Erratic M109:
Not sure why you didn't get a warning message. I'll test tomorrow.
you get a warning but so generic that it was of little use to me. Also the docs put me off a little.
-
@matt3o I've tested this on RRF 2.05.1 (2020-02-09b1), and it works correctly. I set M143 S100, then M109 S99. As temperature overshoots a little (105C), triggered error at 100C, turned off heater and set fault condition. Also works when setting temperature in DWC. The following is copied from console, so is in reverse order, newest first.
13/02/2020, 14:45:31 Error: Heating fault on heater 1
13/02/2020, 14:45:29 M109 S99
13/02/2020, 14:44:31 M109 S100 [Checked to see if setting the temperature limit would turn on... it didn't]
13/02/2020, 14:40:19 M143
Temperature protection item 1 is configured for heater 1 and supervises heater 1 to generate a heater fault if the temperature exceeds 100.0°C
13/02/2020, 14:40:15 M143 H1 S100I also tested this with the bed heater, and it works the same.
Can you try the same in RRF 2.04, and let me know the response? Then update to the latest RRF https://github.com/dc42/RepRapFirmware/releases/tag/2.05.1 and check it works as expected?
You can see the current setting for any heater by sending M143 H[heater number]:
13/02/2020, 15:18:47 M143 H1
Temperature protection item 1 is configured for heater 1 and supervises heater 1 to generate a heater fault if the temperature exceeds 100.0°C
13/02/2020, 15:18:44 M143 H0
Temperature protection item 0 is configured for heater 0 and supervises heater 0 to generate a heater fault if the temperature exceeds 25.0°CIan
-
@droftarts thanks for checking, can you try to set M109 == M143 ?
I'll try to update to 2.05 or 3 at this point
-
@matt3o Yes, I tried setting M109 == M143 (and higher temps), and it does ignore it without warning. On the bed heater you get a warning if you try and set the bed temp at or higher than M143 setting:
Error: Temperature 60.0°C too high for heater 0
13/02/2020, 15:08:35 M143 H0 S25I've flagged this as a bug in 2.05.1 to @dc42
Ian
-
okay so I'm not a complete idiot, it is indeed a bug