Oversampling with Thermistor

Hey guys,

I am attempting to create a very precise temperature control system which is currently being limited by the resolution of my thermistor. The thermistor has a range of 100 C, and the 10-bit ADC on the Arduino only gives a resolution of around 0.1 C, but I am hoping to increase that to 0.01 C. While researching the topic I came across a method called oversampling which, from what I understand, increases the sampling frequency to increase the number of bits you can get out of the ADC. I found a good example here:Arduino Forum

To get the desired resolution, I would need to increase the ADC from 10-bit to 14-bit. Is this plausible using the code on the link? Are there any other crucial steps I am overlooking?

Thanks in advance!

Read AVR121.

Yea, I found that after making this post and it answered most of my questions. So the only thing that I could possibly need is some external noise-generating device if the thermistor doesn't inherently have enough noise?

The easiest way to dither a signal is to add white noise directly to the signal, but in
most cases the user does not have, or does not want to have, this kind of noise signal
in the measuring environments. A more available method is to set up one of the
counters in the AVR to produce a PWM signal and then low-pass filter this ‘noise’ to
appear as a DC with a ripple peak-to-peak value of a few LSB. An example of such a
filter’s details and component values are shown in Figure 3-5.

So, noise itself could be generated by arduino, no need for "external" sources/devices, just few resistors/cap.

Other way around, to get an incredible 20-bits resolution, is build delta-sigma ADC, read more in microchip AN700.
"Make a Delta-Sigma Converter Using a Microcontroller’s Analog Comparator Module".
I haven't seen yet someone make similar with atmel's hardware, but 'd like to see.

Note: method only good for slow varying signals, temp/humidity/pressure etc., unfortunately not applicable for audio projects -(;