This is a page to document and track progress on an Open-HVAC-Control system (thermostat). To-date there is no relatively cheap networked thermostat in existence, the price-point of commercial units is $200-$300 for this type of functionality. And while a few people on the net have posted their plans for building a network-enabled thermostat, none of the designs are "production ready" in any sense, nor do they present a friendly interface for non-technical family members to use.
Project mission and scope
The goal of this project is to create an open source programmable and networked thermostat controller. Its primary function is to facilitate reliable and stable HVAC control of commercial quality. The design should support as many HVAC configurations as is reasonably possible. The design may not support every possible configuration simultaneously. It should facilitate experimentation and further expansion of the system if desired. Lastly it should have a friendly look and user interface so the rest of the family is not afraid to touch it :-).
The intent is to produce a PCB which can facilitate a reliable basic configuration and can also have parts added to support add-on features.
- control a basic 3/4-wire heating and cooling HVAC home with an easy-to-use control panel
- support a standard base of programmability support (5/2days, 7days, multiple stage systems, ect)
- configuration stored in non-volitile memory
- header for USB connectivity (FTDI cable sold separately)
- expandable to meet the users needs
- support network connectivity of some type for a secondary level of control and remote data-logging
- ethernet shield
- wifi shield
- interfacing with X-10 RCS thermostat control systems
- RF relay control?
- RS-485, RS-232
- ability to support Z-wave in the future
- support of heat-pump systems (5 relays, multi-stage heating and cooling)
- support of additional network options for the DIY-er
- sub-1GHz RF tranceivers
College dorm project:
Reference: wiznet shield lockups:
Controlled via USB:
ATiny2313 thermostat (alpha-code posted in comments now):