Arduino Thermometer Program (Multiple Sensors)

A new file “Thermometer Two” has been added to support multiple remote LM34 temperature sensors. Each sensor may be toggled on/off. This is useful for someone that wants to monitor multiple locations (i.e. Upstairs, downstairs, attic, front, rear). This version does NOT support recording to EEPROM but it will run on either the ATMega168 or ATMega328.

I have released my Arduino Thermometer project to Public Domain.

Plan “A” was an attempt to use the internal temperature sensor to report current temperature back to the PC. It was a miserable failure. Temperatures were reported but I was never able to develop a reliable correlation between the internal temperature and the air temperature.

Plan “B” uses a external LM34 temperature sensor and is a complete success.

What you end up with is an Arduino microcontroller programed to be a sophisticated thermometer that can report its readings back to a computer via a standard USB connection. These reports may be generated at periodic times from one minute to 24 hours. The device is “user” calibrated and may be programed to report any combination of raw readings, Celsius readings or Fahrenheit readings. The device may be used in a “self-storage mode” where it is run from an alternate power source (battery) and stores from 440 to 7,040 consecutive readings in its internal memory. Both “wear leveling” and “data reduction” are implemented to conserve storage space and extend the life of the internal EEPROM. Over 30 commands have been defined and implemented to allow the connected computer to control the device via a standard terminal program.

A PC application to “capture” the data from the Arduino is included as well. This application was written in FreeBasic and provides for interactive control as well sending all the data received from the Arduino to a TAB delimited text file.

The main PDF project file is nearly 300 pages long. It contains all the steps I went through in learning the Arduino environment, language and finally developing the Thermometer One application. The document was written on the basis of “assume nothing” and should be appropriate for a complete novice. The document begins with loading the Arduino IDE and running the “blink” program. It then moves on to “Hello World”. Experienced Arduino users will probably what to skip the beginning and start with the section: Thermometer Program, Plan “B”.

All software files are available as a separate download and include full source.

Enjoy :slight_smile: