Replies: 2 comments
-
I've not used the ESPHome driver, but I am somewhat familiar with these Maxim devices. I've used the dallas 1-wire bus version, but I believe these all operate in a similar fashion. I interpret the ESPHome documentation to mean that the reference temperature is the cold-junction compensation temperature sensor. This isn't used for calibration purposes, it's an artifact of how thermocouples work. The voltage generated by the thermocouple (hot) junction sensor is offset from the cold junction. That is, you have the two dissimilar metals that come together at the sensor, and then the those two different wires come back together at the other end where you measure the voltage. Thus, you need to know the temperature of the "cold" end, away from the sensor to correctly interpret the voltage and turn that into a temperature. You normally do not need to worry about this. Reading the cold-junction compensation sensor might be interesting to know what the temperature of the PCB is that the device is soldered to. Or you might decide to use a more complex cold-junction compensation algorithm, which in theory could provide you more accurate results, especially if there's a large difference in temperature. But that also means you need to do a REALLY GOOD job of designing the PCB layout so that the terminals/connector that the thermocouple wires are connected to are very good thermal coupling to the MAX31855 device so it can accurately measure the cold end temperature and do a better job than the internal compensation algorithm. So many words, mostly that say you can ignore the reference temperature/cold junction temperature measurement and leave it to the MAX31855 to perform the cold junction compensation for you (as it does by default) when it hands you back the measurement. One random thing, unrelated to your question. The MAX31855 device will be pissed off and give you alarms which may manifest as crazy temperatures if the thermocouple wires are not electrically isolated from the MAX31855 power supply rails. LIke if there's a common ground connection with the thing you're measuring the temperature of and the thermocouple junction is in electrical contact with it. |
Beta Was this translation helpful? Give feedback.
-
Here is an example yaml to get TC measured temperature (with cold junction compensation already applied) and reference temperature, which in theory is the temperature of the cold junction (the MAX31855 IC) Think of "reference_temperature" like another sensor, it needs an additional line to define it's sensor name. Alternately you can use id, see 2nd example
or if you only want to define an ID
|
Beta Was this translation helpful? Give feedback.
-
In the esphome.io documentation of the MAX31855, the optional configuration variable
reference_temperature
is defined. I think i understand what its supposed to be used for; Calibration of the sensor connected to the MAX31855. Unfortunately I'm a bit perplexed about it's actual use. Do I add a dallas temperature sensor and assign it an ID of dallas_01 and then call it like this:reference_temperature: dallas_01
??? btw... that doesn't work.... it throws a dictionary error. The actual MAX31855 Datasheet talks about cold junction compensation using the die temp of the MAX31855 IC does this have something to do with that?Beta Was this translation helpful? Give feedback.
All reactions