BBQ / Meat temperature wifi probe with ESPHome and Home Assistant

@bvansambeek to be honest, I’m still a bit in doubt, and here’s where it comes from: Most if not all k-type thermocouples I’ve come across either come without a connector or with the yellow, 2 pin connectors. I have not seen any which are listed as a thermocouple being sold with a regular jack plug.

Looking at the Heatermeter (similar, DIY product) they also talk about being able to use regular probes, but that they are usually thermistor types (HeaterMeter Probes - CapnBry/HeaterMeter Wiki). They also mention the Mavericks as reference products, which also happens to be a product often referenced on Aliexpress. Finally, most thermocouples list much higher temp ranges than most of the probes with 2.5mm jacks on ali (which often get to 400 degree Celcius max, whereas thermocouples tend to go > 700 degree Celcius)

Having said that, apparently you are getting some data out of the MAX6675, so either I’m wrong (which is likely, and is what I hope as it would make my search a lot easier), or it spits out numbers which do not actually correlate with the actual temperature…

As said, I just hope I am wrong, but sharing my own findings so far here :slight_smile:

I was going to edit my previous to add, I also have a maverick but the probe is bad. the ali express read 132 in it and the inkbird reads 174 when it should be around 80 so I do not know for sure, but I do not think the maverick probes will work with the max

Is not there a way to “check” a probe with an ohm meter. thermosisters read something and thermocouple do not? I will try

@Aza Well sad to say looks like you are correct. For whatever reasons my meat probes work very well with ambient air,

The k-type thermocouple I got all have a nut to attach the probe. So am I correct in thinking that the shielded cable would not do well in a bbq grill?

For now I am using an Inkbird with an esp32 and OpneMQTTGateway

Although I am not certain, the metal/braided cables are often used inside Q’s, so I think the thermo couple versions will also work that way. The thermocouples with the nut at the end are simply intended to be used on the side of a vat/barrel or something…guess you can also use them inside a BBQ.

In the meantime I’ve started testing some other setups and so far they all seem to be working. Using ESPhome I used the standard ADC pins to get a regular inkbird probe running (NTC). Additionally, I added a max6675 board (to the same ESP32) with a thermo couple. I tested those 2 probes simultaneously, and next to that used the original inkbird with the other inkbird probe I had and all three probes resulted in more or less similar values. So test was a success :slight_smile:

Next tests will be using an ADS1115 attached to an ESP instead of the onboard ADC channels (which often are mentioned as being inaccurate) and using a max31855 for the thermo couple (which is supposed to be the upgrade for the max6675). Both of course connected to an ESP32.

Btw, the NTC probes (likely your inkbird, maverick and aliexpress probes) could all have/will likely have different ‘B-values’. As such, they are not interchangable, and when using those in an ESP32 setup would need to be customized. Using ESPhome, however, this is quite easy to do as the esphome log will provide you with the resistance values needed for calibration which you can combine with temperature readings from a secondary thermometer (I used my inkbird for that).

@Aza
Thanks I saw all that adc and b value stuff but thought it would be more than I was willing to tackle :slight_smile: But perhaps with esphome it would be doable.

I would be keen to see your code and schematic once you get it all sorted with the ads1115

Any reason it would not work with a wemos d1 mini leaving out the MAX or would a Max also fit with the ads?

Thanks,
Grey

Thanks. I just picked up an Inkbird IBT-4x with 4 probes and the have gotten ESPHome/HA to find them. I might just use this to link to an ESP based PID fan controller to maintain BBQ temp.

In a thermocouple, the wires are not just plain copper. They are 2 different alloys that react to heat changes slightly differently. They meet at the probe tip and “magically” (through physics) produce a small amount of micro-current. Since the wires are of a known fixed length and a known alloy composition, they should also have a known fixed resistance. Using Ohm’s Law, the MAX 6675 can read the resulting voltage of the micro-current that is generated at any given temperature at the tip. Changing the composition or length of the wires will change the resistance and the rest of the calculation.
On the other hand, a thermistor works by measuring changes in resistance of the element at the probe tip. So kinda the other way around compared to a thermocouple. But the variable resistance elements might not tolerate as wide a temperature range as the bi-alloy junction in a thermocouple. At least this is my very basic understanding of it.

But the way, I reached out to the Yummly folks again and they seemed to be more receptive to opening up their protocol if there was enough interest from the Home Automation community. So if anyone else has any interest, please let them know.

No experience with the D1 mini’s (or the ESP8266’s which it houses for that matter) but I don’t see a reason why it wouldn’t work as esphome can work with it and the ADS1115 only needs I2C (which a quick google search told me the D1 mini’s have). From what I gathered so far the 8266’s are more powerfriendly, so you might be able to run it off a battery for a longer period of time if you would so desire :slight_smile:

@bvansambeek sorry for hijacking your thread! But hope our ramblings might provide some insights…

I was not able to recreate the first “working” test setup.
I think I did not test that enough and thought it was working.
It seems that the probes are not all k-type probes and that there is a fast variety of probes.
That would make it impossible to achieve the goal I sat out to achieve, I will therefore abandon this project and build an ESPHome ESP32 Bluetooth hub and buy an inkbird.

1 Like

@bvansambeek Have you considered writing a “curve fitting” method to calibrate the values? I have the same issue, and I’m determining its value at several different known temperatures to compensate for it.

You mean like this? Sensor Component — ESPHome

1 Like

It was a long time ago, but I believe the readings of the porbes using the MAX6675 was giving random values. Not actual temperature.

@nickrout Yes. I did not know there was a way to do this in esphome. I was working on a custom function, but this is much better. I have a bbq fan project that I want to use any off the shelf thermocouple or temp probe, and this looks like a great way to calibrate it. Thanks for sharing! I was originally desigining my project to be standalone, but am thinking a HA integration would be better after working with it for a few weeks now. Here’s my project… https://github.com/RyanOC/PitmasterIOT

1 Like