Building a Mock HVAC for Smart Thermostat Demos

Recently I needed to create a mock HVAC system so that I could have a portable smart thermostat for various demos. I searched around but couldn’t find any such thing. So with some sleuthing and the help of my friend Bruce Eckel I was able to build a simple system that powers a smart thermostat and simulates a heating system. This post will document how to do this in case anyone else ever needs such a thing.

Modern HVAC systems typically provide 24 volt AC power to thermostats so the first thing you will need is a 120 VAC (wall power) to 24 VAC transformer. I used this one:

Then you’ll need something that can simulate a single stage heating system. A smart thermostat uses 24 volt AC to flip on and off a relay (electronic component that uses one power current to toggle another, usually stronger, current). I could have used an actual relay for this but decided to go with something easier, a red LED light that runs on 24 volt AC:

For my smart thermostat I used an ecobee3 (due to their REST APIs) but a Nest should work as well:

Now to wire it together pick a terminal on the transformer to be the “common” and run two wires, one to the LED and one to the “C” terminal on the smart thermostat. Then run a wire from the other side of the LED to the “W1” terminal on the smart thermostat. And finally connect the other terminal on the transformer to the “Rh” terminal on the smart thermostat. Like this:

Here is what it looks like wired together:

Once the smart thermostat is powered on and setup, the LED should turn on when the “heater” is on:

And turn off when the heater is off:

I hope that helps someone out. Let me know if you have any questions!

  • Rob Hafernik

    Here’s another way to do it, James, but it’s a bit of a pain the the butt (and much harder to take on airplanes). You build a wooden box a foot or eighteen inches square with one side hinged and a window or viewport of some sort in the side of it. You mount the thermostat inside of the box and power it with 24 volts. You use the thermostat to power a relay inside the box and you wire a 40 watt, 120 volt light socket to the relay and actually switch on a real bulb that emits real heat (an LED won’t make much heat at all).

    This way, the thermostat can turn on the light, heat up the box, then turn off, so the box will cool off. Lather, rinse, repeat. You get semi-realistic data for testing the algorithms inside the thermostat. We built one of these a couple of years ago (to test thermostats we were writing the code for) and it worked pretty well.

    Testing for cooling was MUCH harder, I think someone took an old dorm-sized refrigerator, shorted across its built-in thermostat and hooked its compressor up to the relay so that the refrigerator would be the source of cooling, with the thermostat mounted inside. A large CPU fan can be powered from the fan relay on the thermostat and blow the air around inside.

    Another trick for testing: if you need a real load on a circuit (to test your metering setup), the easiest thing we’ve found to use is an old 1500-watt microwave oven. It will provide a good load and eat up current, but not get too hot (the way a big bank of lightbulbs or something will).

    • Thanks Rob! I might just have to build that for my next demo. :)

  • Great hack, James! Looks like you’re missing a couple images (links). At “I used this one:” and “Nest should work as well:”.

    • Thanks Kevin! Good to see you around here. :)

      Those are supposed to be Amazon iframes. I wonder if you have a ad blocker or something preventing those from showing up. If so, I can add the links as a fallback.

  • Garry Weil

    Guys, This sounds interesting. My needs are a lot less.
    I am doing Smart Home demos at trade shows. I have the AC 24v transformer and no matter which way I connect it to the Nest, after an hour or so, there is an error message on the display that will not go away. All I need is for the Nest to think it is connected and wired correctly. No need for a light or simulated heating/cooling. Any ideas? A schematic would be helpful.

    • What is the error message?

      • Garry Weil

        Thanks for the prompt response. I don’t have the error message in front of me but it is something like “wiring error with Rc” or “wiring error with Rh”

        • So I think that means Nest really wants a heating or cooling system wired in. In this case, you can just do what I did to simulate a heater.