Arduino weather station
My first Arduino project (and the project that finally pushed me over the edge to get an Arduino) was to capture and log data from a wireless outdoor temperature/humidity sensor. I've had a wireless weather station for a few years, and it works well, but it always bothered me that I was getting all this data every day but not able to record it, unless with pencil and paper. When I saw that this had been done and written up in the book Practical Arduino, I figured it was time to try it.
All I needed to get started was an Arduino board and an RF receiver that cost less than $6. The code from the Practical Arduino project didn't work for me unmodified, but with the help of their source code and another detailed description of the sensor data format, I was able to decode the packets from my sensor, a TX4U.
I have since added a pressure sensor for recording barometric pressure and a DS1631 digital temperature sensor for monitoring indoor temperature. Both additional sensors use the I2C protocol for communication, and I used some code from Interactive Matter for the pressure sensor. The sensors have been installed on a prototype shield. Now I have it connected to a Raspberry Pi, which uploads data to ThingSpeak every minute. The plot below uses their public API.
Source code is available at GitHub.