Sunday, June 15, 2014

Cloud/Azure Based HVAC System at Casa De Wolf

The Problem

We live in a house that has four heating and cooling zones in it with a Heat Pump that isn’t exactly cheap to run.  The different zones makes the electric bill a little less painful in that we can only heat and cool the rooms we need to.  For example at night, we keep our bedroom relatively chilly at 68f while I let my office warm up to 80f.  While I’m working, I cool my office to 76f and let our bedroom warm up to 80f. 

To enable this heating and cooling we have thermostats in each room and dampers that shut off the airflow to the different zones when we don’t need to heat and cool them.  The brains for this is a small embedded controller.  Our house was built in the early 90’s and the controller is the original one that came with the house.  This means the user interface on this is very dated and setting it requires and engineering degree (we’ll not really but I’m the only that knows how to do it and it’s a major pain in the butt).  Also since it is so difficult to set, I’m sure we are wasting considerable energy heating and cooling rooms that we don’t have to and really have no way of monitoring the usage.

In addition the only control we had was at the zone level.  That means that to cool down one room we needed to cool down all the rooms in the zone.  This was a problem in that my office has a lot of computers and takes more to cool down than my wives office.  Her room was cold while my room was just relatively comfortable.

The Solution

Of the past few months I’ve been building a new controller for this, I created my own board base on STM32F407 with the following features:

  • Solid State Relays to Control the HVAC systems (cool, fan, compressor)
  • Solid State Relays to Open and Close the Dampers for the zones
  • Motor Controllers to control vents embedded in each room to heat/cool individual rooms
  • Ethernet MagJack and Controller
  • Real Time Clock
  • MicroSD Storage
  • Electric IMP


I have four Insteon wireless thermostats and have also hardwired a number of DHT22 Temperature Sensors so I could monitor temperatures in rooms without wireless thermostat.

So with all this hardware in place I needed some way to monitor the different room temperatures and determine when to turn on the HVAC system, open and close the dampers and vents.  Originally my plan was to just program everything on the primary board, but want to make sure I get the kinks worked out of the system first.  After all it gets very hot in the Florida summers and my wife wouldn’t appreciate any bugs in the software that would cause our house to get unbearably warm.  So I decided to write the controller software in .NET and have something I can easily update and monitor.  I needed a home for this and considered running on a PC on my network, but decided on putting this as an Azure Worker Role.

Basic workflow

1) Worker Role talks to the controller board and pulls the temperatures
2) It then compares the temperatures to the setpoints at a room level
3) It then determines which rooms and zones need to be cooled
4) After it figures out what it needs to do, it sends commands back to the controller board to activate the heat pump and open/close dampers and vents.


Programming the System is accomplished with a Windows Phone 8 application.  This updates the worker role, which in turn saves the settings to Azure Table storage as JSON.

Web Site

You can take a live look at my system by going to

Over time I’ll add some additional parts to this post as I evolve my system, but feel free to contact me if you want more information or have questions.



  1. nice piece of information, I had come to know about your internet site from my friend vinay, delhi,i have read atleast 4 posts of yours by now, and let me tell you, your website gives the best and the most interesting information. This is just the kind of information that i had been looking for, i'm already your rss reader now and i would regularly watch out for the new post, once again hats off to you! Thanx a ton once again, Regards windows azure training in hyderabad

    1. Hi, Great.. Tutorial is just awesome..It is really helpful for a newbie like me.. I am a regular follower of your blog. Really very informative post you shared here. Kindly keep blogging. If anyone wants to become a .Net developer learn from Dot Net Training in Chennai. or learn thru ASP.NET Essential Training Online . Nowadays Dot Net has tons of job opportunities on various vertical industry.
      or Javascript Training in Chennai. Nowadays JavaScript has tons of job opportunities on various vertical industry.

  2. It's crazy how complex HVAC systems actually are... it's not something you really understand when you're a common person like myself, but it's definitely neat to get an inside look at how they work.

  3. Thanks to discussing for this sort of post discussing. Excellent publish...
    freeze during

  4. Cloud-based storage and syncing services can make seamless your access to Word docs, PDFs, spreadsheets, photos, any other digital assets—no more emailing files to yourself or plugging and unplugging USB thumb drives.
    virtual data room free

  5. I'm wondering why do people bored themselves with such problems like in this blog. I'm not judging you for caring about bills, but why don't you ask AC companies like for advice. They may solve your problem and find proper option to deal with heat.

  6. The association s publications of standards and guidelines, education materials, is useful for both consumers and organization members. Air National HVAC

  7. I didn't spend much time to visit many websites. But today I found this accidentally and I got more information from your site.
    Windows Azure course in Chennai | Azure Training center in Chennai | Microsoft windows azure Training

  8. I have been reading out a lot of your articles.
    I will certainly bookmark your Blog.
    Hybris Training
    Devops Training

  9. Thanks for taking this opportunity to discuss this; I appreciate with this and if you have some more information please share it with me.hvac denver, co

  10. I am very happy to discover your post as it will become on top in my collection of favorite blogs to visit. furnace repair denver

  11. You share very useful tips through your blog post..Thanks for sharing..furnace checking tips

  12. You post explain everything in detail and it was very interesting to read. Thank you.
    Web design institute chennai

  13. Nice Blog.Thank you for Sharing. I'm working in brave technologies private limited.we are leading cloud erp software solution in chennai

  14. Really I Enjoy this Blog…Very Nice Post…Thanks
    Social Media Marketing

  15. This an awesome blog with helpful content, I m really impressed with your article, such great & useful knowledge post.Selenium Training Institute in Chennai | Selenium Training Institute in Velachery


  17. It is amazing and wonderful to visit your site..Thanks for sharing this information....Embedded Projects Center in Chennai | Embedded Projects Center in Velachery

  18. I agree with your post. Selenium is most used automation tool to test web application and browser. This automation tool offers precise and complete information about a software application or environment. RPA Training Institute in Chennai | UI Path Training Institute in Chennai | Blue Prism Training Institute in Chennai

  19. Good Post! Thank you so much for sharing this pretty post, it was so good to read and useful to improve my knowledge as updated one, keep blogging… Java Training Center in Chennai | Best J2EE Training Center in Chennai | No.1 Java Training Institution in Velachery | Core Java Training in Chennai

  20. I have read your blog,its really useful for me..Thank you for sharing such an creative article..
    Best Data Mining Project Center in Chennai | No.1 Data Mining Project Center in Velachery

  21. You truly did more than visitors’ expectations. Thank you for rendering these helpful, trusted, edifying and also cool thoughts on the topic.
    IEEE Project Center in Chennai | IEEE Project Center in Velachery

  22. I really enjoy simply reading all of your weblogs. Simply wanted to inform you that you have people like me who appreciate your work. 
    No.1 IOS Training Institute in Velachery | Best Android Training Institute in Velachery | Core Java Training Institute in Chennai

  23. Awesome blog. I enjoyed reading your articles. This is truly a great read for me.
    ME/M.Tech Project Center in Chennai | ME/M.Tech Project Center in Velachery

  24. Needed to compose you a very little word to thank you yet again regarding the nice suggestions you’ve contributed here.



  25. I simply wanted to write down a quick word to say thanks to you for those wonderful tips and hints you are showing on this site.
    dotnet training in bangalore

  26. Appreciation for really being thoughtful and also for deciding on certain marvelous guides most people really want to be aware of.

    AWS Training in Chennai

  27. Your Blog is really amazing with smart and cute content.keep updating such an good post.
    Mobile Computing Project Center in Chennai | Mobile Computing Projects in Velachery

  28. Your Blog is really nice and informative..Thanks for sharing such a interesting article..keep updating..
    Data Mining Project Center in Chennai | Data Mining Projects in Velachery

  29. I have read your Blog,its really amazing to read with useful content.keep updating..
    No.1 Power System Project Center in Chennai | No.1 Power System Projects in Velachery

  30. I found lot of information from your blog,its very attractive and informative content.keep updating..
    Electrical Project Center in Chennai | Electrical Projects in Velachery

  31. The blog you presented was very nice and interesting which helped me to get update on the recent technologies.
    Best IEEE Project Center in Chennai | IEEE Projects in Velachery

  32. Thanks for posting your valuable information with useful content.keep updating.
    Best Final Year Projects for BE in Chennai | Final Year Projects for BE in Velachery

  33. I am happy to read your blog,its really attractive and impressive post,thanks for sharing..
    Best Final Year Projects for Diploma in Chennai | Final Year Projects for Diploma in Velachery