Solved Thermister problems: Duet Wifi Board v1.0
-
I have an older version Duet Wifi:
-Hdwr version 1.0.
-Power Vin = 12vdc
-Firmware v3.3
After upgrading the firmware to 3.3, everything worked fine. However, I had a very slow "Bed Heater" and wanted to speed the heat cycle up by going to 24vdc (Bed Heater was always slow even before the firmware upgrade- thought now would be a good time to change that). Didn't see anything that said this wouldn't work as the Duet3d Wifi board appeared to be spec'd up to 24vdc input.I my system up to 24vdc and everything appeared to work, the bed heated up much quicker and was stable at just under 5amps. I shut the system down for the night. Today the unit came online but the DWC shows both temperature sensors are reading +2000 deg.
I changed the power Vin - reverted back to 12vdc and the DWC shows a reading -273.1 deg. I check my thermistor readings and they are fine. I removed the two thermistors from the connector and the readings don't change... still -273.1deg. My 5v and 3.3v LEDs are on, NO fault light, and I can home my all three axies. I have included my M122 readings:
*******************************M122 starts here **************************************
m122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 3.3 (2021-06-15 21:44:54) running on Duet WiFi 1.0 or 1.01
Board ID: 08DAM-999TL-MQ4SD-6J1F6-3S46N-TNB7Y
Used output buffers: 3 of 24 (12 max)
=== RTOS ===
Static ram: 23876
Dynamic ram: 75292 of which 0 recycled
Never used RAM 15248, free system stack 184 words
Tasks: NETWORK(ready,14.2%,237) HEAT(delaying,0.0%,342) Move(notifyWait,0.1%,364) MAIN(running,85.6%,442) IDLE(ready,0.1%,29), total 100.0%
Owned mutexes: WiFi(NETWORK)
=== Platform ===
Last reset 00:30:06 ago, cause: power up
Last software reset time unknown, reason: User, GCodes spinning, available RAM 15248, slot 2
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
Error status: 0x00
Aux0 errors 0,0,0
Step timer max interval 0
MCU temperature: min 24.4, current 30.9, max 31.7
Supply voltage: min 0.6, current 1.7, max 1.8, under voltage events: 0, over voltage events: 0, power good: no
Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0
Driver 0: position 0, ok, SG min/max not available
Driver 1: position 0, ok, SG min/max not available
Driver 2: position 0, ok, SG min/max not available
Driver 3: position 0, ok, SG min/max not available
Driver 4: position 0, ok, SG min/max not available
Driver 5: position 0
Driver 6: position 0
Driver 7: position 0
Driver 8: position 0
Driver 9: position 0
Driver 10: position 0
Driver 11: position 0
Date/time: 2021-10-05 23:49:27
Cache data hit count 4294967295
Slowest loop: 8.72ms; fastest: 0.12ms
I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
=== Storage ===
Free file entries: 10
SD card 0 detected, interface speed: 20.0MBytes/sec
SD card longest read time 1.0ms, write time 0.0ms, max retries 0
=== Move ===
DMs created 83, maxWait 0ms, bed compensation in use: none, comp offset 0.000
=== MainDDARing ===
Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== AuxDDARing ===
Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== Heat ===
Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
=== GCodes ===
Segments left: 0
Movement lock held by null
HTTP is idle in state(s) 0
Telnet is idle in state(s) 0
File is idle in state(s) 0
USB is idle in state(s) 0
Aux is idle in state(s) 0
Trigger is idle in state(s) 0
Queue is idle in state(s) 0
LCD is idle in state(s) 0
Daemon is idle in state(s) 0
Autopause is idle in state(s) 0
Code queue is empty.
=== Network ===
Slowest loop: 15.44ms; fastest: 0.00ms
Responder states: HTTP(2) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions
HTTP sessions: 1 of 8- WiFi -
Network state is active
WiFi module is connected to access point
Failed messages: pending 0, notready 0, noresp 0
WiFi firmware version 1.26
WiFi MAC address 60:01:94:08:f0:7a
WiFi Vcc 3.38, reset reason Turned on by main processor
WiFi flash size 4194304, free heap 25024
WiFi IP address 192.168.1.192
WiFi signal strength -42dBm, mode 802.11n, reconnections 0, sleep mode modem
Clock register 00002002
Socket states: 0 0 0 0 0 0 0 0
- WiFi -
-
@wurth51 said in Thermister problems: Duet Wifi Board v1.0:
Supply voltage: min 0.6, current 1.7, max 1.8, under voltage events: 0, over voltage events: 0, power good: no
what this M122 report sent with either the 12V or 24V power supply on?
there is no particular reason that temperature measurements would work differently with 12V VIN rather than 24V Vin. Did you swap the heaters from 12V versions to 24V versions?
-
@t3p3tony The M122 readings are with the 12v supply. I did not swap out the Nozzle heater, I did swap out the Bed Heater.
-
@wurth51 thanks. Ok so there is an issue with the voltage monitoring (which uses the analog input, the same as the temperature monitoring) if you are getting 0V when the 12V power supply is on.
Do you mind triple checking that you get ~0V with VIN set to 12V please
-
@t3p3tony My mistake, I took those readings using the USB only. Here's the M122 dump with 12Vin:
(Another NOTE: All three heater's read -273.1C even though I only have two of them hooked up. I activated the 3rd heater in the RRF config tool for troubleshooting as it is a known open circuit.)
M122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 3.3 (2021-06-15 21:44:54) running on Duet WiFi 1.0 or 1.01
Board ID: 08DAM-999TL-MQ4SD-6J1F6-3S46N-TNB7Y
Used output buffers: 3 of 24 (17 max)
=== RTOS ===
Static ram: 23876
Dynamic ram: 75292 of which 0 recycled
Never used RAM 15248, free system stack 184 words
Tasks: NETWORK(ready,13.8%,237) HEAT(delaying,0.0%,330) Move(notifyWait,0.1%,364) MAIN(running,85.9%,441) IDLE(ready,0.2%,29), total 100.0%
Owned mutexes: WiFi(NETWORK)
=== Platform ===
Last reset 00:05:19 ago, cause: power up
Last software reset time unknown, reason: User, GCodes spinning, available RAM 15248, slot 2
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
Error status: 0x00
Aux0 errors 0,0,0
Step timer max interval 0
MCU temperature: min 30.1, current 30.4, max 31.2
Supply voltage: min 12.1, current 12.2, max 12.3, under voltage events: 0, over voltage events: 0, power good: yes
Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0
Driver 0: position 0, standstill, SG min/max not available
Driver 1: position 0, standstill, SG min/max not available
Driver 2: position 0, standstill, SG min/max not available
Driver 3: position 0, standstill, SG min/max not available
Driver 4: position 0, standstill, SG min/max not available
Driver 5: position 0
Driver 6: position 0
Driver 7: position 0
Driver 8: position 0
Driver 9: position 0
Driver 10: position 0
Driver 11: position 0
Date/time: 2021-10-07 20:50:08
Cache data hit count 4294967295
Slowest loop: 15.88ms; fastest: 0.17ms
I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
=== Storage ===
Free file entries: 10
SD card 0 detected, interface speed: 20.0MBytes/sec
SD card longest read time 1.4ms, write time 0.0ms, max retries 0
=== Move ===
DMs created 83, maxWait 0ms, bed compensation in use: none, comp offset 0.000
=== MainDDARing ===
Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== AuxDDARing ===
Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== Heat ===
Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
=== GCodes ===
Segments left: 0
Movement lock held by null
HTTP is idle in state(s) 0
Telnet is idle in state(s) 0
File is idle in state(s) 0
USB is idle in state(s) 0
Aux is assembling a command in state(s) 0
Trigger is idle in state(s) 0
Queue is idle in state(s) 0
LCD is idle in state(s) 0
Daemon is idle in state(s) 0
Autopause is idle in state(s) 0
Code queue is empty.
=== Network ===
Slowest loop: 201.64ms; fastest: 0.08ms
Responder states: HTTP(0) HTTP(0) HTTP(1) HTTP(0) FTP(0) Telnet(0), 0 sessions
HTTP sessions: 1 of 8- WiFi -
Network state is active
WiFi module is connected to access point
Failed messages: pending 0, notready 0, noresp 2
WiFi firmware version 1.26
WiFi MAC address 60:01:94:08:f0:7a
WiFi Vcc 3.38, reset reason Turned on by main processor
WiFi flash size 4194304, free heap 23528
WiFi IP address 192.168.1.192
WiFi signal strength -61dBm, mode 802.11n, reconnections 0, sleep mode modem
Clock register 00002002
Socket states: 2 4 4 0 0 0 0 0
- WiFi -
-
@wurth51 ok, well it's good that you have the VIN being detected.
What happens with the reading in the third input if you test the thermistors there?
What command are you using to set them up?
-
@t3p3tony Hi. I assume you are referring to the config settings for the thermistors. If not please let me know what to do to get the info for you. Really appreciate your assist on this.
config.g**
Configuration file for Duet WiFi (firmware version 3.3)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool v3.3.3 on Sun Oct 03 2021 21:00:10 GMT-0700 (Pacific Daylight Time); General preferences
M575 P1 S1 B57600 ; enable support for PanelDue
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"Duett Valcano" ; set printer name; Network
M551 P"xxxxxxxxxxxx" ; set password
M552 S1 ; enable network
M586 P0 S1 ; enable HTTP
M586 P1 S0 ; disable FTP
M586 P2 S0 ; disable Telnet; Drives
M569 P0 S1 ; physical drive 0 goes forwards
M569 P1 S1 ; physical drive 1 goes forwards
M569 P2 S1 ; physical drive 2 goes forwards
M569 P3 S1 ; physical drive 3 goes forwards
M569 P4 S1 ; physical drive 4 goes forwards
M584 X0 Y1 Z2 E3:4 ; set drive mapping
M350 X16 Y16 Z16 E16:16 I1 ; configure microstepping with interpolation
M92 X64.50 Y64.50 Z754.00 E640.00:640.00 ; set steps per mm
M566 X900.00 Y900.00 Z60.00 E120.00:120.00 ; set maximum instantaneous speed changes (mm/min)
M203 X6000.00 Y6000.00 Z180.00 E1200.00:1200.00 ; set maximum speeds (mm/min)
M201 X500.00 Y500.00 Z20.00 E250.00:250.00 ; set accelerations (mm/s^2)
M906 X800 Y800 Z800 E800:800 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Axis Limits
M208 X0 Y0 Z0 S1 ; set axis minima
M208 X210 Y210 Z180 S0 ; set axis maxima; Endstops
M574 X1 S1 P"xstop" ; configure active-high endstop for low end on X via pin xstop
M574 Y1 S1 P"ystop" ; configure active-high endstop for low end on Y via pin ystop
M574 Z1 S1 P"zstop" ; configure active-high endstop for low end on Z via pin zstop; Z-Probe
M558 P0 H5 F120 T6000 ; disable Z probe but set dive height, probe speed and travel speed
M557 X15:190 Y15:195 S20 ; define mesh grid; Heaters
M308 S0 P"bedtemp" Y"thermistor" T100000 B4092 ; configure sensor 0 as thermistor on pin bedtemp
M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0
M307 H0 B0 R0.206 C505.8 D3.68 S1.00 V12.5 ; created for bed PID after running M303 Sept2021
;M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit
M140 H0 ; map heated bed to heater 0
M143 H0 S85 ; set temperature limit for heater 0 to 85C
M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0temp
M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
M307 H1 B0 R1.446 C274.7 D8.49 S1.00 V11.4 ; created based on M303 command Sept2021
;M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S280 ; set temperature limit for heater 1 to 280C; Fans
M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on; Tools
M563 P0 S"Right" D0 H1 F0 ; define tool 0
G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C
M563 P1 S"Left" D1 H1 F0 ; define tool 1
G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets
G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C; Custom settings are not defined
-
M308 S0 P"bedtemp" Y"thermistor" T100000 B4092 ; configure sensor 0 as thermistor on pin bedtemp .... M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0temp
Those look right. Please add the following line:
M308 S2 P"e1temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0temp
A new sensor should appear in the "extras" tab on DWC. Now try plugging each of the bed and e1 thermistors in there to see what readings you get.
Also try shorting (using a jumper) across the bedtemp and e0 temp inputs to see if the reading changes from -273 to 2000.
-
@t3p3tony said in Thermister problems: Duet Wifi Board v1.0:
M308 S2 P"e1temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0temp
Ok.... that brought all three thermisters up on the interface. I shorted each one out and there was no change to the readings. Held constant at -273.1 deg. Looks like a component failure??? Is this repairable? Board is way out of warranty.
-
@wurth51 if they all read -273 then it sounds like the VSSA fuse has failed. https://duet3d.dozuki.com/Wiki/Connector_and_spare_part_numbers#Section_VSSA_fuse
-
Thank you very much for responding to this post. It was in fact the fuse (took me awhile to find it). Did a quick bypass on the fuse and all the thermistors immediately started reading normal. I will with the article you provided to put a permanent solution in place.
Not sure how to mark this thread as "closed/solved"!
-
A big thanks to T3P3Tony for their assistance in getting me past the software being the problem and to dc42 for pointing me to the hardware solution.
It's a great day to be a Duet user.
-
@wurth51 worth considering how the VSSA fuse was blown. It is a PTC fuse that should reset itself after time when it triggers so if it failed it may have been exposed, or repeatedly exposed, to a high enough current to cause it to fail. Its there to protect the VSSA input on the temperature headers from a high voltage which is sometimes caused when the hotend (or bed) heater wiring shorts to a temperature wiring. Worth checking your wiring! from your first post It sounds like you might have an issue with using a 12V heater at 24V as well which is not recommended.
-
@t3p3tony he has a v1.0 board so the fuse isn't a PTC self-resetting one. Nevertheless, there must have been a short or transient of some sort to cause it to blow.
-
Got the little resettable fuse and 10k resistor installed. Board is now working fine.
The article you referred me to indicated that the firmware would respond to a "short" based on the installation of the 10k resistor. Can you elaborate on what I would expect to see should the fuse blow?
Thanks
-
@wurth51 if you get a short between Vssa and a higher voltage then you should get a message on the DWC console warning you of the short.