Accurate thermometer

I need an accurate thermometer for my research (-10~110 C), because the commercial ones are not programable . I would like to have a +-0.001 C accuracy one (maybe it is not possible at all ). But after checking around, all I have found are at best +-0.1 one (tmp117). I found some with 24bit ADC in it but only claim +-0.1 C accuracy ( TSYS01), which confuses me quite a lot, why a 24bit ADC can only achive a +-0.1 C accuracy?

Then I think it might be a good idea to build one. I have chosen a good NTC thermoresistor and a good 24bit ADC. What else do I need ? Maybe need a good bridge circuit to read the value of the NTC resistor and a stable voltage reference? Any better idea?

Note the reading doesn't have to be very fast. 0.24 Hz final reporting rate is fine.

So far the best commercial one I have found is this:

I think 0.001 c accuracy might not be possible...

Seriously, you expect +-0.001 C from an NTC?

maybe I made a misleading statement, I meant I would like to make it (the whole system) as accurate as possible, I was considering something like PT100. But I found even an A+ grade one could not do that. Plus, a small value resistor like the pt100 makes it very sensitive to the accuracy of the other resistors in the circuit.

Since I don't need this thing to be super fast. I guess I can read the NTC fast and average the readings. As long as the repeatability of this NTC is good, I can get something close.

Yeah, what are you measuring? Seems like the merest of external influences would blow past 0.001 degrees, like looking at it cross-eyed even,

Tell us more about your project/research!

Abject curiosity.


A good error calculation and correction might also help.

Accuracy has been discussed. Maybe resolution would be the next. Plenty of ADC bits give a better resolution. Calibrate the system and then go.

0.001 degree means I just want to make it as best as I can do. It doesn't have to be 0.001, it can also be 0.00001 if it is easier :smiley:

It is about molecular behavior. My teacher told me to do so... And he said the budget is not a problem. But I think he means if I can make one he will buy the parts for me, not the commercial ones....

in vacuum, I try to reduce any external influence.

What is your method of calibration of the thermometer you are going to construct? How linear does it need to be?

I guess I need I don't need it to be that accurate, I need it to be repeatable. Yes, repeatable!

It doesn't have to be linear.

What is your project?
You need to work out what accuracy and what resolution you need?

Also how are you going to calibrate it, if you want 0.001C resolution, you need to have it calibrated to 0.001C or higher tolerance.

If you are looking at changes in temperature instead of absolute values, then it would be an easier proposition.

Tom... :smiley: :+1: :coffee: :australia:

We really do get some strange requests here. :dizzy_face:

But the real question is - why are you here?

This is an Arduino forum.

It is not a request Paul. It is just a discussion. Maybe I underestimated the challenge of the accuracy of this measurement, but the world is making its progress. Even the expected goal is not possible today, doesn't mean it is not achievable at all. After all it is not against the 2nd law of thermoal dynamics.

Why am I here? I think the reason I am here is the same as the reason of a lot of other people. Even the queastion I asked is naive, it still has its value. Other people later can check the result of this thread and save time on their similar project. I think that is part of the spirit of opensouce hardware, isn't it?

My impression of arduino platform is that it can do a lot things, together with other circuits, it can do almost anything other mcu based systems can do.

I’m still on the question of why the accuracy ?

That .001 figure means that if you walk into the room, the reading will change.

Maybe better if you insulate and set the DUT temperature as needed, then track relative variations.

Perhaps something like IR to get the calibration set points- then track the relative changes.

Recheck the initial calibration at the end, and average / correct the results for that drift.

The OP has only said it is about molecular behaviour.

@joedodo if you wouldn't have to kill us for having done, please tell us more about what things you are measuring the temperature of exactly, and the physical circumstances in which they find themselves.

Are these temperatures typically measured by any pedestrian devices like you are thinking about? Sounds more involved, like real scientists determine temperatures of molecules in a totally different way. About which I know nothing, but probably not a meat thermometer, even if it could do 0.001 degree.

Still curious.


I would like to have a +-0.001 C accuracy one (maybe it is not possible at all ).

Of course it is possible, you just have not looked very hard.

You pay for accuracy, because someone has to calibrate each instrument against a certified standard.

As a very rough guide, cost goes up by at least a factor of ten for each factor of ten improvement in accuracy. So, if a $100 thermometer is certified for +/- 0.1 C, expect to pay $10-100K for +/- 0.001 C.

Here is one report: IR Thermometer Reads to 0.001°C with Accuracy, Stability | Electronic Design

Yes. I am checking out the IR solution, too. Yes, I care about the variation more than the absolute value.

Thanks for the constructive reply :grinning: The reason I would like to choose arduino over the commercial ones for this is exactly its flexibility. I do expect the algorithm part and the control part of this system are complex.

NTC's are not that stable. Even if you could calibrate it to some better thermometer they will not maintain the stability you request (not even close).

The best thermal resistor you can purchase (reasonably) is a Platinum Resistor usually P100 (could be P500). Google them.

At the same time you should get a good understanding or accuracy, resolution, repeatability and perhaps hysteresis.

The accuracy your request also requires a considerable amount of physical application effort. If you were actually able to measure to within 0.01 °C you still have to deal with thermal lag in the sensor and maybe the medium. You will be hard pressed to hold anything to within 0.01°C long enough to take a measurement.

Before you start your research you should go through a statistic analysis of your possible readings/results and see what you need to actually make you results statistically significant.
I've done this in the past but don't recall the approach I used.

which confuses me quite a lot, why a 24bit ADC can only achive a +-0.1 C accuracy?

This would be with what sensor and what ADC?

thanks John for your insight. Initially I would like to choose NTC is because of its relatively large resistance (~10k). This resistance makes the wire resistance less important and makes the design easier. Now maybe I will start using pt100/1000 series.

The one I mentioned with a 24bit adc in it is TSYS01. I wonder why it claims only 0.1 c accuracy. Maybe just because it has not been calibrated to a better one? Or maybe the resistor component in it is not stable/repeatable enough to achieve a better one.

That is quite possibly the reason… repeatability.

That’s why I introduced the idea of using start-finish calibration set points, then tracking the relative variation over time.

It’s certainly not a simple question, and I doubt it’s going to be cheap, but the Arduino will likely be the least of your problems!

Up above, others have suggested the precision probes are out there, but I suspect most of us have never - if ever needed better than 0.1C absolute resolution.

I’m sure we can help - once you’ve identified a sensing mechanism.