Use this forum to chat about hardware specific topics for the ESP8266 (peripherals, memory, clocks, JTAG, programming)

User avatar
By leenowell
#80312 Hi

Due to the perceived accuracy issues of the onboard ADC I thought I would get an external one to compare the results. I plan to connect to a probe (thermistor) to read the temperature. I don't know much about ADCs and see there seem to be many to chose from. I only need 1 channel and would like it to be accurate to at least 0.5 Deg C. Only other criteria is that it consumes a small amount of power as it will be battery powered.

Any suggestions?

Thanks in advance

Lee.
User avatar
By rudy
#80319 ADS1015 is one option. I bought one quite a while ago but have never got around to try it.
https://www.aliexpress.com/item/ADS1015 ... 31914.html

As far as thermistor accuracy. Make sure you read the spec sheet understand what the accuracy is over the temperature range you are interested in. Many thermistors have accuracy specified at 25 degrees C, and the further you deviate from that temperature the greater the error allowance. You can get thermistors that have an accuracy specified over a wider range and they will cost more.

I did a quick search on Digikey and they had ±1°C and ±0.2°C parts. No ±0.5°C listings. I did a search for 1K @ 25°C as I thought that would be a common value.

https://www.digikey.com/product-detail/ ... ND/8549128

https://media.digikey.com/pdf/Data%20Sh ... KC3-BG.pdf

The company I work for manufactures a range of temperature controllers and almost all use thermistors as the sensing device. We pot the thermistors with an epoxy based resin in a plastic cap. Along with making it more durable it also makes a larger thermal mass. This slows the response and adds some hysteresis into the system which is desirable in our applications. The larger thermal mass also eliminates self heating of the thermistor from the sense current.

If you want quick response you would use the thermistor as is, but consider that it might repost a slightly higher temperature due to self heating. Using a higher resistance thermistor (and series resistor) will reduce the current and might be a prefered option.
User avatar
By leenowell
#80322 Thanks for you quick and very informative response Rudy much appreciated. A couple of quick questions if I may.
1. I see it does differential ADC would this help in this scenario. I have the 1k in series with a resistor (1k I believe but can check).
2. If I understand the amplifier correctly, is the idea that I would tune my voltage divider to have my temp range in the middle of the curve and then use the amplifier to extend that to full digital range?
3. At the moment I have a 10k resistor between the ADC probe and ground which seems to have helped stabilise the onboard ADC reading. Would you suggest the same here?

The challenge I have is that my project is a meat thermometer and have not been able to source probes with a pointy end on their own and therefore with a data sheet. I have had to buy cheap sets (probe that plugs into a digital reader) and then try and manually callibrate them using the Steinhart Equations.

Thanks once again for your help

Lee.
User avatar
By rudy
#80334
leenowell wrote:1. I see it does differential ADC would this help in this scenario. I have the 1k in series with a resistor (1k I believe but can check).


I would not bother with the differential mode and just use the chip as an 11 bit A/D. That will give you more than enough precision for your application.


2. If I understand the amplifier correctly, is the idea that I would tune my voltage divider to have my temp range in the middle of the curve and then use the amplifier to extend that to full digital range?


Yes. The further from the middle produces less resolution, due to the logarithmic nature of the thermistor.


3. At the moment I have a 10k resistor between the ADC probe and ground which seems to have helped stabilise the onboard ADC reading. Would you suggest the same here?


No, because it will also reduce the sensitivity. What I would do is use a RC filter between the A?D input and the thermistor-resistor voltage divider. This will filter out some noise and provide a lower AC impedance to the A/D input.


The challenge I have is that my project is a meat thermometer and have not been able to source probes with a pointy end on their own and therefore with a data sheet. I have had to buy cheap sets (probe that plugs into a digital reader) and then try and manually calibrate them using the Steinhart Equations.


More work but perfectly acceptable. Calibration with the sensor is preferred, but not practical in a production context. I need tight tolerances for interchangeability.

The following is something I came across a while ago. I'm referring it based on what I remembered from it. About pull up resistor values for thermistors.

https://arduino.stackexchange.com/quest ... hermistors

I wish I had more time right now. I would like to try out the A/D with a food temperature probe. I have recently done more cooking and baking and I would like to have an electronic thermometer rather than the analog dial one I have.