Main Site Documentation

Thermistor ADC values eratic


I am trying to set up my board to read 6it thermistors via the 6 ADC ports. I followed the schematic and equations I found here :

The readings I get are erratic with a standard deviation of >9F at a steady temperature , which is unusable.
What could I be doing wrong? I need consistent readings with a standard deviation of 1F or less. What can I try?


Hi Syd,

can I ask how you’re reading the samples, and how you’ve got the termistors connected to the Ain ports and power? You must make sure, on a Fez, that you don’t connect to 5v but to 3v3 otherwise you may damage the ADC. A lot of that other circuit to me seems unnecessary, and I’d ditch it for simplicity in the initial stages; just connect the thermistor between 3v3 and the ADC ports to see if that has an impact.

Have you tried modeling the individual termistors by only connecting one at a time (GND all the other Ain ports) and take many individual samples and see how the variance of the samples is? You can then move the termistor to different input ports and making sure the readings also look the same and vary to an equivalent degree. i’d also suggest that to start with you only read in the Ain values and do no conversion/calculations so we can see how that is varying. Show us some code and how the data appears, it may give hints about what is going on.


A small change to allow +5V supply would be to exchange the fixed resistor and the thermistor. With a fixed resistor high enough the voltage is below 3.3V and therefore save for the Panda.
Drawback would be that you have to do the calculations differently than in the library.


Looks like the problem lay in my mediocre soldering. I kept staring at it with a magnifying glass until I finally spotted a small spot between the power rail and ground that was sparking when powered up. A clean circuit setup seems to work!