Fork me on GitHub

Project Notes

#585 DS1822 1-Wire Reading

Basic interrogation of a DS1822 using 1-wire protocol and results display on a Nokia 5110 LCD.



The DS1822 is an economy 1-Wire digital thermometer with a range of -55°C to +125°C, at ±2.0°C Accuracy from -10°C to +85°C.

It comes in TO-92 packaging and may be powered directly (using three pins), or take parasitic power from the data line (using two pins).


Basic Operation

The sequence of operations boils down to this:

  • Send a search request on the wire to find a device
  • Get the device address and ensure the family code is as expected
  • Issue conversion command (0x44)
  • Wait for conversion, then read the conversion scratchpad from the device
  • Process the data received

Family Codes

Model Code
DS18S20 0x10
DS18B20 0x28
DS1822 0x22




The Program

The Arduino sketch is found in DS1822.ino. It uses:

  • OneWire library for temperature sensor communication
  • u8glib library for driving a simple display on a Nokia 5110 screen.

The sketch was written to work with the DS1822, but it can also handle DS18S20 and DS18B20 devices.

Credits and References

About LEAP#585 SensorsArduinoLCD
Project Source on GitHub Project Gallery Return to the LEAP Catalog

This page is a web-friendly rendering of my project notes shared in the LEAP GitHub repository.

LEAP is just my personal collection of projects, usually involving an Arduino or other microprocessor in one way or another. Some are full-blown projects, while many are trivial breadboard experiments, intended to learn and explore something interesting (IMHO!).

The projects are usually inspired by things found wild on the net, or ideas from the sources such as:

Feel free to borrow liberally, and if you spot any issues do let me know. See the individual projects for credits where due. There are even now a few projects contributed by others - send your own over in a pull request if you would also like to add to this collection.