DIY Climate Control at your finger tips: WiFi XBee

Most homes have rooms that are too hot or cold and waste power. This project is an open source/community to solve that problem thru zoning.

Similar projects worth following
Every home owner and business owner that I have talked to say they have rooms that are too cold or too hot. Fighting over the central thermostat is a common problem. This problem varies as the sun moves and different parts of the home or business is exposed to the warming rays. The problem is caused by the whole house temperature being controlled by one central thermostat. Zoning allows each area of the home to be individually controlled. This project solves this problem by turning your home into zones and controlling the temperature in each room individually.

Go to to learn more about this and join with us to solve this problem.

Watch video on project.

The One Thermostat Problem

In our home, located in Central Florida, we get huge electric bills for air conditioning and often I get complaints that it is too hot or too cold in the different rooms. Every month I was getting tired of writing these large checks to pay for the AC and still not feeling comfortable. Worse we have people gone during the day and we are cooling empty rooms. Part of the problem is you have one thermostat usually centrally located it is supposed to control the whole house temperatures.   See video on this. 


One way to control this is by Zoning your home or business. Turn each area into a zone and control the heating and cooling into an individually controlled zone. So in the illustration there would be 7 zones with a thermostat and controller for each room or zone. So you can control each room and make it closer to what you want or even shut down an unused room.

DIY vs Commercial Products

When I first looked at zoning our 3000 sq. ft. home in Orlando, commercial estimates of zoning our house with 8-9 zones were around $15,000. Even that expensive solution did not meet all my criteria.

Being an electronic engineer and a robotics hobbyist and part of open source hardware movement, I started down the DIY route trying to get a solution that was closer to $100 a zone not $1,000-$2,000 a zone. I believe this problem is better solved by a community approach.

By zoning your house you can not only be comfortable but save 30% or more in your HVAC (heating, ventilation, and air conditioning) energy consumption. So taking this approach it not only allows you to help save the planet but allows you to be more comfortable in the process, a real win-win.

Open Source community

My vision is to create a community that we can build an open source hardware and software Climate Control units that will make our homes and businesses not only more comfortable but more cost effective.

I have already come a long way. Using XBees, I have developed the device you would put in each room to know the temperature that is battery operated. I developed the central processor using Arduinos that records the data from the remote sensors.

I hope the community can improve the design and move it along even better. I have the sensor kits available to DIY people so they can build their own. To join this community go to

XBee Remote Kit

As part of DIY Climate Control you must be able to control the temperature in each zone (room) therefore there must be a way to measure the temperature in each zone. When I first explored putting in temperature gages throughout the house I looked at running wires throughout the house connected to temperature sensors. But I realized this was both expensive and hard to run wires in an existing house.

In doing more research I came across the XBee module. It was perfect for this need, it runs on a mesh network which allows it to wirelessly talk to other XBee modules and digitally communicate data. Plus you can hook uptemperature ICs like the TMP36 without having to have extra parts. Better yet the XBee can be progra

mmed to go to sleep and thus save battery life that means this module can run on AAA batteries and needs no wires to communicate temperature readings. Better still you can program its various ports to read other devices or even turn on and off devices that are hooked to the module.

I built a kit that has a special PCB an attractive case (wife approved). If you are interested in this kit go here.

XBee communicating to Arduino

This is my prototype of the zoning system. The XBee temperature sensors communicate to the central Arduino Uno that makes all the decisions and controls the HVAC (heating, ventilation, and air conditioning) unit. There is a second Uno with a touch screen to show the readings, the two Unos communicate via I2C.

Libraries Used

See code at:

I want to...

Read more »

  • 2 × Arduino UNO
  • 1 × 2.8" TFT LCD with Touchscreen Adafruit
  • 1 × Data Logging shield Adafruit
  • 1 × Screw Shield Adafruit
  • 1 × XBee breakout board Sparkfun

View all 10 components

  • DIY Climate Control Project Log

    doug.leppard08/12/2014 at 17:56 0 comments

    We are going to be at the Maker Faire Orlando September 13 -14, come by and say hello.

    Code Version 2.03 – 2014/08/07

    Current programming Code Version.

    Vent and Valve decided on – 2014/8/1

    Decided for this prototype to go with Flexdampers and vender found for valves. See

    Code Version 2.02 – 2014/07/12

    Control the HVAC using only one sensor box. This allowed a portable sensor box and was very successful keeping the right temperature where you put the box.

    Final PCB done – 2014/06/16

    PCB made for remote sensor box, enough parts for 100 boxes were purchased.

    PCB started for sensor box – 2014/04/21

    Started design for PCB for remote sensor box. Learning how to use Eagle. website started – 2014/02/08

    First steps of the website were started. Learning how to do WordPress sites.

    Took break from project

    Stopped working project while working on contracts. Needed to bring home the bacon.

    Code Version 2.01 – 2013/07/23

    Started with controlling the vents in code.

    Code Version 2.00 – 2013/07/22

    Took out using XBees communication between UNOs and used I2C instead.

    Code Version 1.04 – 2013/05/23

    Having memory problems code had to be adjusted and arrays more compact.

    Display show only final temp. Add menu input, send menu commands to central. Central record temps and log data to SD, normalize temps and add clock.

    Code Version 1.03 – 2013/05/09

    Allow multiple temperatures reporting from each XBee. This allows the reading of the HVAC unit for safety reason that the HVAC unit will not freeze.

    Code Version 1.02 – 2013/05/04

    Correct names of rooms displayed.

    Code Version 1.01 – 2013/04/06

    Display added to report data.

    Code Version 0.90 - 2013/02/14

    First of the code made XBees talking to one another.

    Project conceived – Late 2012

    Late 2012 project was conceived and work was started.

View project log

  • 1
    Step 1

    For build instrructions see

View all instructions

Enjoy this project?



dorrymone wrote 02/10/2021 at 05:51 point

Proper now I do no longer have the vents controls in vicinity, this is the following section. When I updated my HVAC unit I were given a dual degree unit. 1st level is at 68 percent and second level is at a hundred percent. That is without difficulty controlled via the traces that come to the HVAC unit or at the thermostat. So I can close down 30 percent of the house and be nice. you can see here

  Are you sure? yes | no

vhpham21 wrote 12/04/2016 at 13:15 point

It's been sometimes since you updated this post. Are you still working on this project?

I was able to get this similar project to work in my daughters rooms for less than $20 per room.

  Are you sure? yes | no

UkiyoWeee wrote 12/31/2014 at 20:42 point

Are you all still doing this project?

I am interested how you will open/close the vents. Vents in my house are very hard to move. So the vent itself has to be made by you correct? I really like the idea.

  Are you sure? yes | no

doug.leppard wrote 01/04/2015 at 13:02 point

Yes I am still doing this project. BUT I am moving real slow right now having to work on projects that bring in income.

Yes vents are hard to open/close. I have been trying out which are vents you can control remotely. I have not implemented it yet, did one vent but not the whole house.

I have talked with a couple of people who were looking at wireless vent control but I have not landed with any one yet.

Love to interact with you on this. I looked at your page what do you mean "I know supply chain well"

  Are you sure? yes | no

UkiyoWeee wrote 01/05/2015 at 21:22 point

Your solution looks like it might require a technician to install, correct?

I suggest putting everything in the vent, temp sensor on the rim, protected from the airflow. You trade quality for ease of installation and lower cost.

Supply chain is my profession. When a product goes to manufacture I do cost analysis to determine cheapest place to produce. (hint: its not China unless you're making iphones) So lets say your demand is mostly California. Do you source directly from china or go with a US based middle man? It depends, it always depends. If your demand is seasonal, then a closer supplier will be cheaper because you won't have to store as many units during off season, which frees up capital.

Basically, I run the numbers. I also yell at suppliers and logistics companies for being late.

  Are you sure? yes | no

FrankenPC wrote 07/28/2014 at 03:51 point
What kind of logic do you implement to balance heater/AC output with the zone needs? For instance, let's say that 1/2 of your zones are at target temperature, you certainly don't need a full 3 or 4 tons to cool the remaining zones. The blowers on these large units takes an enormous amount of power. Wouldn't it be awesome to use some sort of VFD motor control to ramp the blower down as well?

  Are you sure? yes | no

doug.leppard wrote 07/28/2014 at 04:07 point
right now I do not have the vents controls in place, that is the next phase. When I updated my HVAC unit I got a dual stage unit. 1st stage is at 68% and 2nd stage is at 100%. that is easily controlled through the lines that come to the HVAC unit or at the thermostat. So I can shut down 50% of the house and be fine.

I have no idea how to control the motor other than what I have done.

Another thing you have to be careful of is not having enough air go through your air handler because you can freeze the HVAC unit and cause damage. I have a temperature sensor at the HVAC ac temperature at the air handler to detect its temperature and if it gets too low shuts down the system or open vents.

  Are you sure? yes | no

googolp wrote 07/25/2014 at 14:00 point
I have always wanted to implement this. Good on you for being less lazy than myself!

  Are you sure? yes | no

doug.leppard wrote 07/25/2014 at 14:44 point
Love the lazy comment. Be lazy with me and help make this fully happen.

  Are you sure? yes | no

Eric Tsai wrote 07/24/2014 at 08:17 point
I've been planning on doing something like this for my home automation system. I'm using OpenHAB as the gateway, and would be using the rules engine for the automation. I have a working wireless network (with huge range) for the field Arduino nodes talking to the gateway and can pretty easily get feedback. But I'm missing the motorized part - how to move vents.

OpenHAB is open sourced, and it would be pretty easy to come up with a standard set of rules and sitemap items to make the page elements. Plus, everything would be accessible via browser or Android/iPhone app already, since it's built into openhab. And you get database historization for temperature data. I got another project for adding a current transformer onto the mains for energy monitoring on the same OpenHAB installation, so you can correlate energy usage with controls changes.

My hackaday project has video of the sensor nodes working.

  Are you sure? yes | no

doug.leppard wrote 07/24/2014 at 13:56 point
Love to discuss this more. Send me an email at doug dot leppard at gmail and lets chat offline.

  Are you sure? yes | no

dmritard96 wrote 07/24/2014 at 05:16 point
hey guys, what you are doing is super cool. We are looking to do a byod (Bring your own device as well as play nice with open systems. We are thinking BLE and Thread (same hardware as Zigbee) and would love to chat about how we could make this work.
ping me at

We are big fans of saving energy and open source and it seems like we may have some of the missing links you need to make this work.

  Are you sure? yes | no

doug.leppard wrote 07/24/2014 at 13:49 point
I would love to discuss possible synergy of our projects. Love to hear about how your system works.

  Are you sure? yes | no

doug.leppard wrote 07/24/2014 at 04:10 point
Jeff send me an email to doug dot leppard at gmail . I will have my WP guy work with you, we need to have that work for people.

Love to have you join with us in this project and help people make this work for them.

  Are you sure? yes | no

doug.leppard wrote 07/24/2014 at 04:05 point
Brian, You have to have a central HVAC unit. But you control each vent individually through knowing the temperature and then a vent control.

I will write a blog post of this soon.

  Are you sure? yes | no

Brian Bullock wrote 07/24/2014 at 03:36 point
I'm curious as to how you are planning to provide heating/cooling to individual rooms with a central hvac unit.

  Are you sure? yes | no

Jeff McGehee wrote 07/23/2014 at 22:11 point
Tried to join your website, but it didn't seem to like something I was doing... I'm interested in contributing, as I have just purchased my first home and have been chomping at the bit since college to get a similar project underway.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates