After updating to 3.4.0beta2: faulty heater 1, -273.1C.
-
@dc42 said in After updating to 3.4.0beta2: faulty heater 1, -273.1C.:
@pixelpieper thanks.
I've run your configuration on my bench system and I still don't get a significant error in the temperature reading. A 1K resistor (simulating a PT1000 sensor) gives me a reading of -1.4C which is close enough to 0C. I re-ran calibration and ended up with H-7 L-13 which are within the normal range. So the issue doesn't appear to be configuration-dependent.
Please run the following two commands on your system, with firmware 3.4.0beta2 installed on the tool board, and report the responses:
m122 b121 p1007 a{0x806020}
m122 b121 p1007 a{0x4200442c}as my problem is very similar to pixelpieper's, here are my results
m122 b121 p1007 a{0x4200442c} Address 0x4200442c value 0x00000607 m122 b121 p1007 a{0x806020} Address 0x00806020 value 0x19149fbe
-
@cadetc thanks, that's useful. All my tool boards have the same ADC calibration parameters, but your is different.
Are you using a thermistor or a PT1000 with the tool board?
-
@dc42
I have Original E3D Hemera as my print head and whatever was originally installed is connected to the toolboard -
@dc42 I checked the specs and it says it's a thermistor
-
@dc42
Surprisingly, there have been no problems with it before and I started with RRF 3.2 and in the meantime by the time I got to 3.4b2 I had had all the transitional versions of the software including beta versions -
@dc42
Another thing that comes to my mind is that when I came back from 3.4b2 to 3.3 and did anoter recalibration L and H values were definitely different than the "factory" values that I noted before doing the calibration at 3.4b2.
Now to make sure that factory values are used I have them saved in config-override.
Can the fact that other values are stored in Non-volatile memory (left over from calibration attempts made by me) and actually other values are used - included in config-override.g - - have an impact on other values than in your toolboards? -
@cadetc said in After updating to 3.4.0beta2: faulty heater 1, -273.1C.:
Can the fact that other values are stored in Non-volatile memory (left over from calibration attempts made by me) and actually other values are used - included in config-override.g - - have an impact on other values than in your toolboards?
That should not be the case.
You can override the values stored in NVM by sending your own M308 L and H values. In my experience, the correct calibration values are normally in the range -20 to +20.
-
@dc42 Sorry for the late reply, this week has been crazy... - here are the values & my firmware version
12.8.2021, 19:59:41 m122 b121 p1007 a{0x4200442c} Address 0x4200442c value 0x00000607 12.8.2021, 19:59:21 m122 b121 p1007 a{0x806020} Address 0x00806020 value 0x190cefbe 12.8.2021, 19:58:54 M115 B121 Duet TOOL1LC firmware version 3.4.0beta2+1 (2021-08-08 13:53:53) 12.8.2021, 19:58:24 Board 121 starting firmware update
P.S.: beautiful undocumented peek command
-
I have the same issue with 1 of my printers: 4~5ºC negative difference to real temp and ~3ºC jumping around in under 5s (ex: -23.5º ~ 26.4º)
@dc42 said in After updating to 3.4.0beta2: faulty heater 1, -273.1C.:
- Send M308 S1 (assuming the tool board thermistor is Sensor 1) and record the result, in particular the H and L values.
M308 S1 Sensor 1 (Extruder) type Thermistor using pin 20.temp0, reading 27.5, last error: sensor not ready, T:100000.0 B:4725.0 C:7.06e-8 R:2200.0 L:0 H:0
- Send M122 B121 and record the reported VIN value
M122 b20 Diagnostics for board 20: Duet TOOL1LC firmware version 3.3 (2021-06-15 16:12:58) Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1) VIN: 24.3V
- Switch the tool board firmware to 3.4beta2.
- Send M308 S1 again, check that it reports the same H and L
M308 S1 Sensor 1 (Extruder) type Thermistor using pin 20.temp0, reading 22.1, last error: sensor not ready, T:100000.0 B:4725.0 C:7.06e-8 R:2200.0 L:0 H:0
- Send M122 and check that the reported VIN value is the same as before
M122 B20 Diagnostics for board 20: Duet TOOL1LC firmware version 3.4.0beta2+1 (2021-08-08 13:53:53) Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1) VIN: 24.4V
- Run the calibration procedure described at https://duet3d.dozuki.com/Wiki/Calibrating_thermistor_and_PT1000_readings on the tool board thermistor input. If it's tricky to do the short-circuit calibration test, just do the open-circuit calibration, which should be sufficient to correct the reading at room temperature.
- Send M308 S1 again to see the new H and L values
M308 S1 Sensor 1 (Extruder) type Thermistor using pin 20.temp0, reading 829.6, last error: short-circuit in sensor, T:100000.0 B:4725.0 C:7.06e-8 R:2200.0 L:-70 H:19
- Check whether the readings are now correct.
The reading is more accurate but still lower and jumping around: M308 S1 Sensor 1 (Extruder) type Thermistor using pin 20.temp0, reading 25.6, last error: sensor open circuit, T:100000.0 B:4725.0 C:7.06e-8 R:2200.0 L:-70 H:19
I am assuming that you do not have H and L parameters in your M308 commands in config.g, so it will use the values stored in NVRAM.
I do not, and my other printer with the same hardware Duet3 6HC + Toolboard v1.0, firmware and bootloader does not seem to have the same issue (haven't printed yet).
-
@jbarros thanks for that data. It seems that some tool boards work well with the new firmware, including all of mine and one of yours, while others give errors and when calibrated the L value is either very negative or out of range.
Please run the following two commands on your system, with firmware 3.4.0beta2 installed on the tool board, and report the responses (replace B121 by the CAN address of then tool board, if different):
m122 b121 p1007 a{0x806020}
m122 b121 p1007 a{0x4200442c} -
@dc42 said in After updating to 3.4.0beta2: faulty heater 1, -273.1C.:
@jbarros thanks for that data. It seems that some tool boards work well with the new firmware, including all of mine and one of yours, while others give errors and when calibrated the L value is either very negative or out of range.
Please run the following two commands on your system, with firmware 3.4.0beta2 installed on the tool board, and report the responses (replace B121 by the CAN address of then tool board, if different):
m122 b121 p1007 a{0x806020}
m122 b121 p1007 a{0x4200442c}On the "bad" Toolboard:
M122 B20 p1007 a{0x806020} Address 0x00806020 value 0x19344fff M122 B20 p1007 a{0x4200442c} Address 0x4200442c value 0x00000707
On the "good" Toolboard:
M122 B20 p1007 a{0x806020} Address 0x00806020 value 0x19546fff M122 B20 p1007 a{0x4200442c} Address 0x4200442c value 0x00000707
Thank you for looking at this and I have 3 more Toolboards (that I wish now they were v1.1 ), all v1.0, if required for any testing.
-
@jbarros @CadetC @pixelpieper does any of you live in UK?
-
@dc42 said in After updating to 3.4.0beta2: faulty heater 1, -273.1C.:
@jbarros @CadetC @pixelpieper does any of you live in UK?
If this were an usual year I'd say we were a British colony at this time of the year but alas no, I live in Portugal
PS: I have a close relationship with one of your partners here, let me know if you want me to send you something through them (B2B shipping).
-
@dc42 said in After updating to 3.4.0beta2: faulty heater 1, -273.1C.:
@jbarros @CadetC @pixelpieper does any of you live in UK?
Unfortunately I don't live in the UK, in my case it's Poland
-
@dc42 sorry, I am in Switzerland...
-
Living in France.
-
@dc42
So what do you think? Are our problems caused by software bugs or could it be a hardware problem? What's the prognosis?
Should I return my toolboard as faulty under warranty? Or is there a chance that it will work as it should? -
@cadetc I hope to find time to look into this again tomorrow.
-
@dc42
m122 b121 p1007 a {0x4200442c}
Address 0x00000000 value 0x20008000m122 b121 p1007 a {0x806020}
Address 0x00000000 value 0x20008000 -
@sotidii said in After updating to 3.4.0beta2: faulty heater 1, -273.1C.:
@dc42
m122 b121 p1007 a {0x4200442c}
Address 0x00000000 value 0x20008000m122 b121 p1007 a {0x806020}
Address 0x00000000 value 0x20008000Please run those commands again, without a space between 'a' and '{'.