As I'm trying to read multiple DS18B20 sensors via onewire, I'm trying to use a sketch which uses the DallasTemperature.h library.
Trying to download the thing from Dallas Temperature Control Library - MilesBurton.com but some wiki-user changed all the download links to downloadranking.com effectively deleting the file from the wiki.
I have not been able to access the Dallas Temp.sensor library ( April2014) and wonder if this problem has been worked around.
Unzipping with Windows just leads to a low-res PDF icon.
Is there a copyright issue here? john
Well! This is very interesting for me. I did not realize that there is a library for these micros available to handle the Dallas one wire interface. A few months ago I was playing around with interfacing to a bin temperature sensor setup. The sensor configuration is made up of over 150 individual one wire sensors connected to a single Dallas on wire buss. I more or less gave up on the idea of achieving reliable readings from the buss because of timing and other problems that I was experiencing setting up the Dallas one wire protocol.
The onewire library is part of the arduino development platform. While there are many add-on libraries, onewire comes with the core install and includes two little example programs that make it easy to get going. Arduino has their own bootloader and you can burn their bootloader on any atmega but it's easier to use one of their development boards to get started. They also like to use FT232 chips for the USB serial setup so might as well get one of those too.
The hard programming part with onewire is dealing with multiple sensors and having to do a the binary search to discover their addresses. This is handled for you in the onewire library. The example that comes with the library searches for all available devices and then reads/reports temperature from each one. So you can use the example program to verify communication with your sensor array and check temps before you start writing your specific application.
The wire library (aka I2C) is the built-in that I was confusing with onewire and it makes using I2c devices easy as pie. Another add-on is the DHT11/22 library that is very handy because those sensor interfaces are similar to onewire but different enough to need their own drivers.
A couple of years ago I came across a really good eBay deal on DS18b20's so I bought a bag of them. As I was exploring arduino and hooking up everything I had to it I used as many of the DS18b20's as would fit on a small breadboard. No problems until I added the micro SD card and ran out of memory. A little more programming and the SD card is now an I2C slave and works great. The one thing you will notice about arduino compared to writing all your own code for the nerdkit is arduino librarys have a rather large footprint so you won't be able to fit as much on a single mpu with arduino. Another difference is most of the time you'll be using the serial interface to display data on your PC instead of the nerdkit LCD but when you do want to use a LCD with arduino there is an library for it too.
Dallas Temperature is a hardware-specific library that handles lower-level functions. It must be paired with the One Wire Library in order to communicate with any one-wire device, not just the DS18B20. Install this library as well.
Hi please upgrade your OneWire library to the current version 2.3.4 then your sketch should compile. You can use the Arduino IDE library manager to do this. I tested on 2.3.3 and 2.3.4 and both worked for me.
df19127ead