Skip to main content

Thermostat project (take 2)

Yes I am still on the thermostat kick. I just got my new humidifier installed today which is probably why I am still looking at my thermostat project. After some consideration I have decided that I'm going to scrap the whole gumstix idea. The reason I'm doing this is simply because I don't need that much computing power bolted to my wall. I've decided that the thermostat itself should be an Arduino using I2C to talk to a Temperature and Humidity sensor. Then I would have to design the circuit that would turn the furnace on and off. I have found some good documentation of how a regular thermostat works so it shouldn't be much of an issue getting that going. The Arduino would control the furnace and air conditioner, fan and humidifier. One added feature (the whole point of the project) would be to use the USB interface on the Arduino to connect to a LAMP server that would log all temperature and humidity levels and send commands to the Arduino. I just have to figure out how far the USB cable can actually be before I pursue this option any further. I may have to use some other communication methods.

I'm tired... out.


Popular posts from this blog

Arduino LED MIDI Controller

It's been a while since I've made a post so I have decided that it was about time I did. This time I'll be talking about my Haunted House I made.

I started with the idea to take a Halloween decoration (small haunted house) and add some LEDs to it and make them blink. What I ended up with was a haunted house with 6 LEDs in it all controlled by MIDI. I used an Arduino to receive MIDI signals from my computer and turn on/off LED lights based on those signals.

Check out the video...

The "MIDI to Arduino Breakout Board" as I call it in the video I designed myself. I used various resources on MIDI around the web and came up with this schematic.

Digikey Part list:

2 x DIN5 - CP-2350-ND
2 x 6N138 - 516-1600-5-ND
1 x diode - 1N914B-ND
2 x 220 ohm resistor
1 x 270 ohm resistor

As you can see it isn't very complicated. The hardest part was finding in DIN5 part numbers at Digikey. The code on the other hand was a bit more complicated. The trick was to decode the …

Ardunio and the SHT15

For my ongoing thermostat project I require some sort of temperature and humidity sensor. Because I'm fairly new to all this I decided to get a 2 in 1 sensor from Robotshop called the SHT15. I went with the SHT15 because it had both a temperature and humidity sensor and uses a "digital 2-wire" interface. When I first purchased it I didn't realize that "digital 2-wire" didn't mean I2C, but that's another story.

In order to get the sensor to communicate with the Arduino I needed to write some custom code that manipulates the data and clock lines by pulling them high and low at the correct times. I haven't had any experience doing this before so it was a learning experience for me.

Connecting the SHT15 to the Arduino is pretty simple. The data and sck lines each goto a digital input/output on the Arduino and the VCC goes to +5V. Pretty simple. Here is a picture of my breadboard.

As you can see I had to solder on some breadboard wires onto th…

First Ardunio Program

I have finally received my Arduino and have been able to write a few simple programs for it. For my thermostat program I am interested in being able to read several analog sensors (temperature and humidity). I also need to be able to poll specific sensor values from the computer using the serial interface so I can log their values in 5 minute intervals. I don't have all the electronic components yet to build my thermostat so I wanted to write up some test sketches. I based my sketches on a todbot blog entry that I found very useful.

I was originally going to use the C code that todbot wrote to test communication with the Arduino but I soon realized the limitations. What I ended up doing is using "screen" to open a terminal connection to the serial port so I could send and receive data to/from the Arduino. In the future I will have to write a daemon that will run on my linux box that will constantly poll the Arduino for data but thats another story. For now screen …