One Wire Digital Temperature Sensor - DS18B20

$4.50 Inc. GST
7 Available Now
(More Available Soon)

This is the latest DS18B20 1-Wire digital temperature sensor from Maxim IC. Reports degrees C with 9 to 12-bit precision, -55C to 125C (+/-0.5C). Each sensor has a unique 64-Bit Serial number etched into it - allows for a huge number of sensors to be used on one data bus. This is a wonderful part that is the corner stone of many data-logging and temperature control projects.


  • Unique 1-Wire interface requires only one port pin for communication
  • Each device has a unique 64-bit serial code stored in an onboard ROM
  • Multidrop capability simplifies distributed temperature sensing applications
  • Requires no external components
  • Can be powered from data line. Power supply range is 3.0V to 5.5V
  • Measures temperatures from -55°C to +125°C (-67°F to +257°F)
  • ±0.5°C accuracy from -10°C to +85°C
  • Thermometer resolution is user-selectable from 9 to 12 bits
  • Converts temperature to 12-bit digital word in 750ms (max.)
  • User-definable nonvolatile (NV) alarm settings
  • Alarm search command identifies and addresses devices whose temperature is outside of programmed limits (temperature alarm condition)
  • Applications include thermostatic controls, industrial systems, consumer products, thermometers, or any thermally sensitive system


(SparkFun product SEN-00245)

2 comments on "One Wire Digital Temperature Sensor - DS18B20"
  1. There are only two really easy and good choices for temperature sensors if you care somewhat about accuracy and use an Arduino: The SHT-15 (superb, if you won lotto), and the DS18B20.

    Any number of DS18B20 can be connected in parallel on the same cable. It needs GND, data, and Vcc, and if you are careful and get the right DS18B20, the Vcc is not needed. One 4.7kOhm pull-up is required for the whole cable, even if the datasheet promises "no external components". You need the OneWire and DallasTemperature libraries. For this price and ±0.5°C accuracy (max error) between -10°C and +85°C, which pretty much covers the domestic range, it's pretty good.

    The alternatives aren't as good on the Arduino, with the ATmega328P's bad reference and even worse ADC. Assuming -10°C to 70°C:

    LM335 - gives 2.63V to 3.43V, which is no good for the Arduino's ADC, and the sensor still needs calibrating. Blow that.

    LM35 - would probably work with the 328P internal reference, but costs more than a DS18B20 for less performance, so why bother?

    TMP36 - works quite well with the 1.1V reference once you get the reference calibrated, but needs a decent unity-gain buffer op-amp at its output if you want to drive any length of cable. I recommend an Analog Devices AD8628, but by now you spent more than a DS18B20 would cost for less accuracy, so why bother.

    TMP05 - if you've got too much time, go right ahead. Unless you've got a very special good reason for this one, why bother.

    SHT-15 - wow what a device, never mind the cost. Pity sparkfun goofed by not accounting for the SF1 filter cap.
  2. Fantastic advice Volker, thanks very much for taking the time to comment I'm sure that will be useful for many people.

Comment on this product

Just so you know; all our prices include GST, orders over $100.00 qualify for free shipping. Everything that is in stock (green tick icon) ships overnight on CourierPost. A lot of things that have the "blue question mark" stock icon are actually available now direct from our suppliers, please feel free to ask us if you aren't sure.

All our products are sourced through official channels, and come with a manufacturers warranty. Here's our returns policy if you'd like to read it before purchasing.