Arduino – One Wire Digital Temperature Sensor – DS18B20

The one wire Digital Temperature Sensor – DS18B20 from Maxim (formerly Dallas) is a great chip for measuring temperature in your projects. Luckily, there is a Dallas Temperature library for the arduino which makes using this sensor very easy.

Arduino - One Wire Digital Temperature Sensor - DS18B20The most recent version of this library can be found at

We used version 3.6.0 for this tutorial which can also be downloaded here

Download a copy of the library. In it you will find two folders

Drag and drop the DallasTemperture folder into your arduino/libraries folder

If you dont already have the OneWire library then you will need to copy that folder into the libraries folder also.

Now, before we get to the programming part, lets wire up our temperature sensor. The DS18B20 can be powered by between 3.0V and 5.5V so you can simply connect its GND pin to 0V and the VDD pin to +5V from the Arduino. However, the DS18B20 can also extract its power from the data line which means we only effectively need two wires to connect it up. This makes it great for use as an external sensor.

So we will use the 2 wire method. Simply connect both the GND and VDD pins to 0V (yes both). Then connect the DQ pin to pin 2 on the Arduino board (can be any Arduino digital pin)

Arduino - One Wire Digital Temperature Sensor - DS18B20

A 4K7 ohm pullup resistor is required on the DQ pin to pull it up to 5V

Here is our sensor setup on a breadboard

Here’s a closeup. The brown wire connects pins 1 and 3 together, and the black wire connects them both to 0V. The orange wire is our signal wire to pin 2 on the Arduino, and there is a 4K7 pullup resistor to 5V


For more detail: Arduino – One Wire Digital Temperature Sensor – DS18B20

About The Author

Scroll to Top
Read previous post:
Traffic Light Stoplight LED Scarf – Safety Scarf of Righteousness using arduino

Multipurpose like a traffic light, this one keeps you warm and blinks to make you more visible in the night....