How can I calibrate the temperature of my bed
-
@infiniteloop
understand, ask him directly or do I need to contact @droftarts? -
@axiom cooking dinner at the moment! Can you post a picture of how you have wired the bed temp sensor to the daughterboard and Duet?
Ian
-
@droftarts said in How can I calibrate the temperature of my bed:
cooking dinner at the moment!
bon appétit!
-
-
@axiom Thx. @droftarts will have a look at the photos … after dinner.
-
@infiniteloop Guten Appetit!
-
@axiom when you measured the resistance of the sensor at 20C using a multimeter, are you sure it read 106 ohms, not 106 kohms? If it's 106 ohms, it's a PT100. If it's 106 kohms, it's a 100K thermistor.
-
@dc42 You are right, it is 106 kilo ohms and not ohms... sorry for the wrong statement..
-
@dc42 wenn i am starting the bed heater it shows "hardware error no sensor" without starting it shows 2000 degrees
-
@axiom said in How can I calibrate the temperature of my bed:
@dc42 You are right, it is 106 kilo ohms and not ohms... sorry for the wrong statement..
So if it's 106 kilo ohms it is a thermistor and should not be connected to the PT100 daughterboard. Connect it to the mainboard instead and change your config.g to use values for a thermistor.
-
it is 106 kilo ohms and not ohms
Ok, thermistor. So, for a single heater with thermistor, this is what works:
M308 S0 P"bedtemp" Y"thermistor" R4700 T100000 B3950 ; configure sensor 0 as thermistor on pin bedtemp
Now, you have to decide what to do with four thermistors and four heaters. Let's assume you want to control the bed as a single unit - I've understood that you wired all heaters to "Bed Heat", i.e. this connector:
As you have four 24V PSUs, one for each heater, how do you control these? The proper way to do this is to put a SSR (type DC/DC) between the outcome (-) of each PSU and its heater - if you use a single SSR to switch mains power of all PSUs, you risk their early demise: as the signal from "Bed Heat" is pulsed, it switches rapidly between on and off. You can however use the SSR on mains to power the PSUs. How to do this is described in the last paragraph of this link.Now, the thermistors: You should use all of them for a combined reading. How this works is outlined in the documentation under Using multiple temperature sensors for a single heater.
I tend to recommend solution 1 (connect them in series), but never tried that with 4 thermistors… at 400 kOhm, risk of interference with power signals is high. Maybe a serial/parallel combination is better in this case: two thermistors each in parallel, i.e. connected as pairs in series. -
@infiniteloop said in How can I calibrate the temperature of my bed:
Unfortunately I'm not at the output yet. I have now connected the PT100 daughterboard (see photo above) and entered the following value:; Heaters
M308 S0 P"spi.cs1" Y"rtd-max31865" R4700 T100000 B3950 ; configure sensor 0 as PT100 on pin spi.cs1
M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0
M307 H0 B1 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit
M140 H0 ; map heated bed to heater 0
M143 H0 S120 ; set temperature limit for heater 0 to 120C
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 S1.00 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S280 ; Set temperature limit for heater 1 to 280C
M308 S2 P"e1temp" Y"thermistor" T100000 B4138 ; configure sensor 2 as thermistor on pin e1temp
M950 H2 C"e1heat" T2 ; create nozzle heater output on e1heat and map it to sensor 2
M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
M143 H2 S280 ; Set temperature limit for heater 2 to 280C2000 degrees and the error message: failed to read seonsor: sensor hardware error are displayed in the console
-
@infiniteloop said in How can I calibrate the temperature of my bed:
or do I have to send back the 2 daughter boards because they are not suitable for these thermistors? -
The PT100 daughterboards are of limited value unless you have PT100 sensors to go with them. You can't just configure them into being something else.
-
@axiom Then I omit the daughterboardas.
Then the safest thing is to connect the thermistors in series?
However, I didn't quite understand the description of how to declare all 4 pieces in the code -
@infiniteloop said in How can I calibrate the temperature of my bed:
The proper way to do this is to put a SSR (type DC/DC) between the outcome (-) of each PSU and its heater
The same should also work with mosfets for each part?
-
@axiom said in How can I calibrate the temperature of my bed:
mosfets for each part?
Moin. Yes, absolutely.
Daughterboards: as @Phaedrux told you, these are of "limited value" with thermistors. That's an understatement - you can't attach thermistors to them. Instead, attach the thermistors to "bedtemp".
I'll post how to wire the four thermistors - give me a minute …
-
@axiom Here are two of the "better" options how to wire the thermistors:
Left, it's a serial arrangement, resulting in a high impedance of 400 kOhm. As I wrote earlier, risk of interference with power signals may be high.
To the right, you see a serial/parallel combination: to the Duet, that arrangement looks exactly like a single thermistor.
In either case, the "open ends" at the bottom of my artwork are meant to be connected with "bedtemp".
-
@infiniteloop II opted for the serial/parallel combination, but where exactly do I have to specify half the resistance in the code (that's what it says in the description)?
Here my code:
Heaters
M308 S0 P"bedtemp" Y"thermistor" R4700 T100000 B3950 ; 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 B1 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit
M140 H0 ; map heated bed to heater 0
M143 H0 S120 ; set temperature limit for heater 0 to 120C
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 S1.00 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S280 ; set temperature limit for heater 1 to 280C
M308 S2 P"e1temp" Y"thermistor" T100000 B4138 ; configure sensor 2 as thermistor on pin e1temp
M950 H2 C"e1heat" T2 ; create nozzle heater output on e1heat and map it to sensor 2
M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
M143 H2 S280 ; set temperature limit for heater 2 to 280CI stopped the autotuning because the cables got so hot!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-
@infiniteloop My mistake, I did the math again...I have to solder on a thicker cable extension...