calculating thermistor coefficients


 
I'd like to use an inkbird probe as the pit probe.

I can see the latest snapshot firmware includes them, but Byrans comment suggests they aren't accurate over 200F

[www] Adds support for Inkbird thermistor probes used in models IBT-2X, IBT-4XS, IBT-6X. I calibrated one of these from 45F to 200F and it should be within about 1F across that range. I wouldn't recommend using one for a pit probe because I can not do the correlation up to temps above boiling.

Is there a reason the correlation cant be done for higher temps?
I have multiple probes, so can run one in the inkbird and heatermeter side by side and measure at small temperature increments?
Or is it much more complicated than that?
 
Last edited:
I can't remember why I didn't do them in the toaster oven like I did with the Thermoworks. I think I got some weird results that threw off the temperatures at food probe temps when I calibrated them from 400F down to room temp.

You can do your own correlation but the math is a bit complicated, you have to measure the resistance at dozens of points across the curve. The curve is non-linear so you can't just pick a few points and hope to approximate it. See: Inkbird probe curve vs Thermoworks

Once you have your table of resistances and temperatures (in Kelvin), just use something to curve fit it to the equation (where A, B and C are the values you put into the config):
T = 1 / (A + B * ln R + C * (ln R)^3)

If you're handy with SSH, HeaterMeter can help you out. Put the known probe in PIT, the unknown probe in FOOD1, tie them together so be certain they are reading the exact same temperature, and use the command `lmclient LMUP,start`. Then slowly traverse through the entire temperature range you want to correlate and execute `lmclient LMUP,fit` and it will spit out the values of A, B, and C. Finally, return everything to normal with `lmclient LMUP,stop`. So easy, right?!
:coolkettle:
 
Last edited:
Thanks @Bryan Mayland. So simple... or not :oops:

I've sent a message to one of the inkbird reps asking if she is able to help. She has asked me to clarify exactly what I need to know, and said she will do her best.

Do you have an example of what the coefficient data should look like, maybe for one of the Thermoworks probes?
 
The only probes we ever received data for was the original Maverick ET-72/73 probes and it came in the form of a temperature to resistance chart (that was a PDF scan which I can't seem to google any more). I guess technically what you're looking for is the datasheet for the thermistor used, which would contain all of the characteristics needed to calculate the coefficients, but even just a table of resistance to temperature that contains enough datapoints to cover the range is good (30-50?).
 
Couple questions.
First, I am not good at SSH, but I tend to dig in and learn until I get it or I just totally screw something up. So, is there a preferred terminal program for the PC that is noob friendly?

Second, how slow is slowly? Is this in the magnitude of annealing titanium (0.6°F/hr), or letting your car warm up (50°F/min)?

Thanks.
 
Second, how slow is slowly? Is this in the magnitude of annealing titanium (0.6°F/hr), or letting your car warm up (50°F/min)?
haha "Slowly" means "as slowly as needed so that you're reasonably sure both probes are reading the same temperature".

Like, you don't want to just hit them both with a blowtorch for 5 seconds and then dunk them in ice water. You want them the be at the same temperature because the software measures the temperature of one, then instantly assigns that temperature to whatever the resistance of the other is. If you're going too fast, then one might be reacting to temperature change more quickly or more slowly and assigning that temperature to the other's resistance would make it correlate incorrectly. I usually wrap them up tightly together, put them in the toaster oven set to 400F and when the temperature has stabilized for 5 minutes, I turn off the toaster oven, start the correlation, and let them return to room temperature for as long as it takes.

I also use PuTTY for all my SSHing. I see it is also available for $1 on the Windows Store but don't pay for it because that's people just trying to sell you free open source software to make a buck off someone else's work.
 
I also use PuTTY for all my SSHing. I see it is also available for $1 on the Windows Store but don't pay for it because that's people just trying to sell you free open source software to make a buck off someone else's work.

If that's going to the developer, I wouldn't have a problem with that..... but I'd be willing to bet a cup of coffee that Simon Tatham doesn't see a cent of it.
 
Thanks for the reply. I appreciate the insight. It makes sense.

If I do something like this, would you be interested in the results? Is there an online repository for such things? Or is that just too much of a hassle for the returns?
 
Are you doing them for Inkbird probes? I probably would not take any updates to those coefficients because I think they're good where they are. If you're doing a new set of probes and have an exact name and model number I'd add them to the dropdown list in the webui.
 
They are probes I bought a while back to replace ones on an old no name thermometer. Chinese stuff off Amazon. Probably not worth it because of all the turn over of those vendors I would guess...
 
Well for what it's worth, I calculated the coefficients for this:
https://www.amazon.com/gp/product/B08J8C2QJX/?tag=tvwb-20
Supposedly they are replacements for ThermoPro probes.

and got the following:
"a":8.9091269e-04,
"b":1.8663516e-04,
"c":1.9269387e-07,
"n":1980,
"e":33

Is there any way to save them to my own preset on the Heatermeter config? Or do I have to enter them each time I swap out the probe?
Also do I need to do anything to compensate between Farenheidt and Centigrade?

Thanks!
 
You did it, nice!

There's no way to save custom coefficients that aren't currently in use. There is a shortcut to populating all three fields at once though, just put 8.9091269e-04,1.8663516e-04,1.9269387e-07 in the first field and it will fill all of them in. If you're fairly confident in how well they correlate, I'll consider adding them to the dropdown list.

The coefficients are all Celsius (well, Kelvin actually) so there's no changes needed when switching units.
 
Sorry for dropping in like this, but i have a question. @Bryan Mayland, you mentioned:
Put the known probe in PIT, the unknown probe in FOOD1, tie them together so be certain they are reading the exact same temperature

Does this approach also work with a thermocouple?
I've got some GrillEye Pro probes here and I'd like to try this approach, but i do not own any of the thermistors listed for referencing.
 
It doesn't matter what the Pit probe is, it just has to be one that already works with HeaterMeter. When you switch the mode with `LMUP,start` it makes the Pit probe output degrees Celsius and the other probes output resistance which is all that is needed to perform the correlation. This is the same thing you'll see if you switch the temperature units to "Ohms" in the new configuration page dropdown for units.
 
I tried calculating my 'GrillEye Pro' thermistors today.

grilleye-probe.png

I did two measurements:

  1. Fired up my Kamado from 30C up to 245C.

    The output:
    JSON:
    {"a":5.5926730e-04,"b":2.4771895e-04,"c":-3.3759711e-08,"n":1716,"e":37}

  2. Let my Kamado cool from 240C to 28C The output that run:
    JSON:
    {"a":7.9220348e-04,"b":2.0504160e-04,"c":1.5239354e-07,"n":1909,"e":33}

Next, i filled in the first output into Probe 1 'Custom' and fired up the remaining coals. The result is the period between 18:14 and 18:58, which actually seems pretty acurate. The difference between the thermocouple and the thermistor is 2C at most, which i think is pretty acceptable considering both probes can have slight deviations to some degree.

After 18:58 i entered the second set of codes into Probe 1 'Custom'. The temperature narrowed down a bit more, but not much. The results are pretty much the same. And then.... I ran out of coal! Will do a long run soon.

I'm pretty pleased with the results for this thermistor!

This screenshot is scaled to 1 hour, so you see every little detail in temperature.

1611425911476.png
 
Last edited:
Wow, looks pretty much perfect to me! I think cool downs work better in general for doing correlation because they happen more slowly (probe temperatures stay closer together) and are less volatile.

I really should slap a webpage on the process since it is really just a few buttons to start / monitor / stop it and all the hard part I've already done. You're the first person to ever use it apart from me though so nice work and I'm glad it worked.
 
it worked like a charm and it's very easy to perform.

My learning point:
Disconnect the damper! My very first attempt failed because the high resistance values triggered an 'overshoot' response, closing the air inlet, which in return smothered the fire. After disconnecting the damper everything went great.
 
Well for what it's worth, I calculated the coefficients for this:
https://www.amazon.com/gp/product/B08J8C2QJX/?tag=tvwb-20
Supposedly they are replacements for ThermoPro probes.

and got the following:
"a":8.9091269e-04,
"b":1.8663516e-04,
"c":1.9269387e-07,
"n":1980,
"e":33

Is there any way to save them to my own preset on the Heatermeter config? Or do I have to enter them each time I swap out the probe?
Also do I need to do anything to compensate between Farenheidt and Centigrade?

Thanks!
Thanks for doing this - these numbers might be pretty helpful to me!

I actually bought a ThermoPro TP826 to have some sort of monitoring system before I finish building my HeaterMeter. Would be nice to be able to use those probes as a backup. It also might be nice to eventually have the ThermoPro probes as a preset because they've become ubiquitous on Amazon and are much easier to get than either Maverick or Thermoworks.
 

 

Back
Top