Arduino Compatible Temperature Sensors

I have been searching for a while but the internet seems to be doing me no luck.

Is there anyone who knows what temperature sensors are compatible with Arduino, it doesn't matter if it is I2C or not, or does anyone know what I should be looking out for.

This is just so I am able to compare sensors and find out which one is more suitable for my project.

Many Thanks

What is the temperature range of interest? That is a very important consideration.

LM35 >> −55°C to 150°C >> analog output

DS18B20 >> -55°C to +125°C >> One Wire output (digital)

Thermistor >> −100 °C and 300 °C >> analog output

Thermocouple >> Up to very high temperatures >> requires cold junction and amplifier, can be digital output.

Its more just I am wanting to know if there is any tell tale sign a sensor will work with Arduino just as i have a good few salvaged parts and not sure if there usable or not.

and i have found some sensors online but they don't specify if they work with Arduino or not.

Pretty much any sensor can be made to work with an Arduino. It may take external hardware. And there are libraries that facilitate using many sensors.

If you have part numbers, Google can help to find data sheets for the parts. Without data sheets you are in the dark.

If you give us the part numbers or links to the pages that you found, we can tell you what you need to be able to use the sensors in terms of hardware and software. We may, also, be able to point you to tutorials.

Thanks for that mate, How much of a rabbit hole is it trying to create your own library for Arduino, do you think it would be worth it if there wasn't a one compatible.

Arduino is a general purpose machine. It'll interface with most anything that can be converted into a logic level or 0-5v analog voltage.
Some devices have drivers. common temp devices are:

  • DHT-11Temp/Humidity, low cost, low accuracy (blue housing)
  • DHT-22 Same as DHT-11 but more accurate and expensive (white housing)
  • BME280 Temp/Humidity/Baro, more accurate than DHT's, I2C

Thanks for that one @madmark2150

The path is to write a program (sketch) that does all of what you want. Once you have the variables and functions defined, it is not real hard to turn that into a library. There is a learning curve but there are a lot of tutorials to help.

Oh nice, sounds alot harder to do hahaha, I am a mechanical engineer by trade. just do the electrical as a hobby.

Thanks for all your help there mate.

No problem, you are welcome.

I am a test engineer by trade (retired) and a hobbyist. I just started learning C++ a few years ago and learn new things most every day. I have made several libraries and it is really not as hard as it looks. I venture to say that if I can do it, most anyone can.

1 Like

I use the BME's. They're tiny (about 1 cm sq) and very accurate (you might still want to code a calibration offset). My only complaint with the BME is that the driver crashes if there is no device found (cable off) - your sketch will STOP if the BME isn't there. No way to gracefully recover I've found.

Hi,

The DS18B20 is a good easy to use general purpose temperature sensor accurate to about +/- 0.5deg.

The ones I am using at present are the "ClosedCube_Si7051" and find them fairly accurate.

If you search for driver libraries for them, they will provide you with example sketches to use from which you can roll your own.

The DS18B20 requires an external resistor and the wire run from it to the Arduino can be quite long.

The Si7051 uses i2C and the the connecting wires need to be fairly close to the Arduino.

Cheers

If you get the sensor to work in a stand-alone sketch (program code) then you do not need to create a library... there is no reason. Libraries are created to assist others or to simplify your reuse in future projects... a kind of scalability thing.

A specialized Google search will give a significant amount of hits:

Arduino temperature sensors
(after the early ads)

Hello mrburnette,

As I see it. The original poster is not up to your knowledge yet and may find it difficult to work without libraries.

Would you care to share a sketch using say the DS18B20 without a library ?

Cheers.

As I see it, from a complete reread, it was you who suggested the DS18B20; I gave a link to a Google search specifying a number of potential sensors.

As there is already a library for the DS18B20, why would I (you or Op) wish to flatten to a non-class?

The point of my post was in the context:

At the above time, the Op can choose to stop with a working/basic sketch or go through exercise to write a library: for fun, a learning exercise.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.