DRAFT – I’m still working on this project, and the post, but here’s the basic setup and some pictures…
Overview
This project was born because our programmable thermostat was a piece of junk and the Nest is expensive (although I ended up spending about as much on supplies as I would have on a Nest. The goals were 1) to have a thermostat that could be controlled via a smartphone and 2) to keep a log of temperature and thermostat data.
The project consists of five parts
- HVAC system control hardware and temperature sensor in hallway
- Temperature sensor in living room
- Desktop application
- iPhone app
- MATLAB script to process log data
Hardware
HVAC system control hardware and temperature sensor in hallway
Arduino Uno (datasheet)
XBee 802.15.4 1.0 (XBee | Shield | Explorer USB)
Relay Shield (Wiki Page)
TMP36 Temperature Sensor (2x) (datasheet)
Device Data Pins
TMP36 #1 -> A0
TMP36 #2 -> A5
Control Pins for Thermostat
G Wire (Fan) -> 8
W Wire (Heat) -> 9
Y Wire (AC) -> 10
Thermometer (via Ethernet)
Arduino Mega (datasheet)
Arduino Ethernet Shield (datasheet)
TMP36 Temperature Sensor (2x) (datasheet)
Layout
Interface via Serial
Setting Thermostat Parameters
Goal Temperature
Delay Time
Mode
Sending Data via Serial
Temp 1
Temp 2
Goal Temp
Mode
State
Delay Time
Algorithms
Toggling HVAC On/Off
Processing Sketch
Thermostat Serial Message Parsing
Outdoor Weather via XML
Desktop Application
Status windows
Goal Temp/State/Mode control
Web-Based Control
Temperature control