This Automated House

This article was first published in May 1999 edition of Popular Home Automation, which has since gone defunct.  The following appears courtesy of the author and by the graces of his permission.


Using X10 for Simple Control of Your HVAC System


What I Did With The Extra Thermostat Found In The Junk Box


Dave Weatherwax


Having a X10 home automation system without having system control of the home’s Heating, Ventilation, Air Conditioning (HVAC) is like having a television without a remote control…it’s functional, but not nearly as useful (fun) as it could be.


There are many very good programmable thermostats available on the market. Several have inputs for an external contact closure, which makes them easily adaptable for X10 control. Typically a closure on these contacts forces the thermostat to a preprogrammed “setback” temperature. This closure can be provided by a X10 Universal Module. Additionally there are true X10 programmable thermostats available which will very the set temperature based on X10 house and unit code inputs. 


With all this selection available, why would I go to the trouble of building my own X10 interface for X10 control? There are two answers;

1.  I wanted to not only switch to a setback temperature, but also be able to turn on the HVAC blower and completely disable the air conditioner via X10 signaling.

2.  The junk box at home had all the parts I needed to add simple X10 control to the HVAC system.  Namely; an extra HVAC thermostat, a hand full of relays with 120v AC coils, and several X10 appliance modules.


The most common HVAC systems use a low voltage (16 – 24 VAC) four wire thermostat control. The four wires are; power (typically the red wire), heat control (typically the white wire), air conditioner control (typically the yellow wire), and blower or fan control (typically the green wire). The provided wire colors are convention, but there are no guarantees that this will match your system. Newer HVAC units will have the terminals for the connection of the thermostat marked as “power” (P), “heat” (H), and“fan” (F). The air conditioner control line may or may not connect to the HVAC unit. If your system differs from this “common” configuration, careful detective work with a multimeter will usually determine what the configuration is. It is strongly suggested that you carefully investigate your system anyway. Factors such as variations in terminology between thermostat and HVAC manufacturers, the age of your system, the general mood of the contractor when the system was installed, etc.  All add together to negate the idea of a truly “common” configuration.


As a brief overview, essentially, I use one 4PDT (four pole-double throw) relay to switch between one of two HVAC thermostats (the main and the setback). I also use two other relays to open or close the blower control circuit, and the air conditioner control circuit, for the HVAC system. The three relays are controlled by X10 appliance modules.  The three X10 appliance modules are then controlled by our home controller. In this case, an old Enerlogic 1400e. However any home controller and software such as X10’s “ActiveHome”, or JDS “Time Commander” and “Stargate” controllers, as well as computer resident automation programs such a Sand Hill Engineering’s “Xtension” for the Macintosh or Omnipotence’s “ECS” for the PC will work.  There are many models of home automation controllers and home automation software on the market, any one of which will work well for this simple application. One could even use an X10 “mini” or “maxi” controller to control the setback and fan manually but that is much less convenient. 


Looking at the schematic, relay RY1 is used to switch between the two thermostats. RY2 is used to provide a closure across the FAN switch in the thermostat, thus activating the homes HVAC blower. This is handy for remote control of ventilation. However, with the X10 blower control “on”, the FAN switch on the thermostat will have no effect since it is effectively shorted across. The final relay, RY3, is used to open the air conditioner control line. This is used to “disable” the air conditioner when we leave home. This control is totally optional. Many users will find that simply switching to a setback temperature satisfies their energy saving requirements. In mild climates, where there is no danger of freezing, this same relay alternatively could be used to completely disable the entire HVAC system. This is accomplished by opening the “P” or power line to the thermostat (again, you might use this function when you leave home or when you just want to “open the windows” without making a trek to the thermostat to switch to switch the system off). This relay should never be used to disable the power line to the thermostat in a climate where freezing could occur.


Two points that should be considered prior to starting this project is;

1.  This simple relay control will not work for heat pump systems, and

2.  A second HVAC thermostat, which actually becomes the setback thermostat, is required.


For best results this setback thermostat should be installed next to the home’s primary HVAC thermostat. This might be a problem since having the room for the second thermostat and pulling wire for the second thermostat could be a difficult task.


Two factors which may help the decision to install a second thermostat;

1.  Is there room to mount a switching relay near the existing thermostat and the new setback thermostat? Consider the room needed must be large enough to house the relay box, and perhaps the X10 appliance modules and wall wart power blocks. This method requires that 120v source be located close to the thermostat control box.  This method may require extensive dry wall work if you wish to hide the relay box in the wall. Also any wiring, whether line voltage or low voltage to the relay must be to local code. It is not within the scope of this article to address these issues. This must be the responsibility of the DIY’er.


2.  An alternative is to mount the completed project at the HVAC unit. In this application you will need a second thermostat cable running from the setback thermostat to the HVAC unit. If stringing this second cable seems an impossible task, you might be able to use your current thermostat cable to “pull” two new thermostat cables. One new cable for the existing thermostat and a second cable for the setback thermostat. The key ability to do this is your existing cable must not be attached (stapled) to the wall studs. If the thermostat is close to the HVAC unit (as is usually the case) the cable may not be attached anywhere inside the walls. A good test for this is to take the thermostat off the wall and gently pull on the cable where it enters the wall. Have someone watch the thermostat cable at the HVAC unit. If it slowly begins to tighten any slack at the HVAC end, then the cable is probably not attached inside the walls. You can then attach (preferably solder, for maximum strength) two new thermostat cables of sufficient length to run from the thermostats to the HVAC unit. The existing cable is now used as a “pull cord” from the HVAC unit side to thread the new cables along the same path.


The point to this discussion is the fact that a second thermostat must be installed to act as a setback thermostat. It should be mounted next to the existing thermostat and the best location for the relay control box is on the side of the  HVAC unit. This of course creates  the need to run a second thermostat cable to the HVAC unit. This might be downhill skiing for some DIY’ers and quantum physics for others.


As noted earlier, I used three relays controlled by three X10 appliance modules to;

1.  Switch HVAC temperature control between the main and setback thermostats.

2.  Control the HVAC circulation blower by a relay closure applied in parallel to the thermostat’s FAN switch. This is an optional control. For example, if your system is hot water heat and you do not have central air conditioning, then there would be no circulation fan to control in your system.

3.  Completely disable the air conditioning by opening the thermostat air conditioner control line. This control point is also optional


I used relays with 120v AC coils and then soldered line cords with plugs to the coil terminals. The line cord is then simply plugged into the appropriate X10 appliance module. 4PDT relays with 120v AC coils are not your standard Radio Shack fare, but they are available from various electronic surplus / electronic supply houses such as,  Electronic Goldmine (,  All Electronics ( , Mendelson’s Electronics (, Alltronics , or Parts Express ( to name a few.  In most cases these relays are only $2.00 - $5.00 apiece. (The relays used in this project were procured from Electronic Goldmine). Line cords with plugs are $1.00 - $2.00 (or you can “borrow” them from the table lamps in the guest bedroom, but this becomes messy when you have to explain why the lamps don’t work).


There is no special reason for my using relays with 120v coils, other than junk box availability. The more common 5v or 12v relays will work fine, except you will need to drive the relay coil with an appropriate voltage and current “wall wart” power plug, which in turn is plugged into a X10 appliance module. In fact, if you do not plan on mounting the relay in a protective box, or if you plan on mounting the relay in a wall box along with the two thermostats, you should use a relay with a low voltage coil, for safety and convince of installation. Also, all relays should have contacts rated 3 amp or greater.


Construction is simple and straightforward. If you plan on using the optional fan and air conditioner disable relays, all relays can be mounted in the same box.


There are two construction points that are worthy of mention only because observing them may save headaches later.


 It is highly recommend that you use “barrier strip” screw terminals for your method of connecting the thermostat wires to the relay control box and the output of the box to the HVAC unit. Screw terminals allows you to easily disconnect the thermostats or the HVAC unit from the relay box in case of failure of relays, power plugs, etc. Then it is a simple matter of “wire nutting” the primary thermostat to the HVAC unit to put the system back to its original “pre X10” condition.


The second recommendation is careful use of the N.C. /  N.O. contacts of the relay(s) so that removing power to the appliance modules, or the relays, will cause the control box to default to the “pre X10” control condition. If you use all three relays, this default condition would be;

1.  Main thermostat connected to the HVAC unit through the N.C. contacts of relay RY1.

2.  Fan control open through the N.O. contacts of relay RY2 (this defaults the fan control to the FAN switch on the thermostat).

3.  Air Conditioning control line closed through the N.C. contacts of relay RY3.


By wiring the relay contacts as shown on the schematic, removing power to the appliance modules will switch all HVAC unit control to the main thermostat (TH1).


Although one can get fancy and etch a PC board for the relays and barrier strips, simple point to point wiring works as well. If you utilize point to point wiring you might use thermostat cable to wire between the relays and the barrier strips since this will maintain the same color coding inside the box as between thermostats and HVAC unit. Connections between the relays and the barrier strips will need to be soldered to guarantee good electrical continuity and mechanical strength.


The three relays should be mounted in a protective enclosure such as a plastic project box. This is especially true if you are using relays with 120 volt coils.  The barrier strips can then be mounted on the project box top, with enough slack in the wiring to allow the top to be moved an inch or two away from the box in order to work on the relays. If you mount the barrier strips on the project box top, the barrier connector spades will protrude through the top and into the box when the box is assembled. Be sure that the box is deep enough, or the relays are mounted in the box such that the barrier strip connectors can not touch the relay contacts. A “big boom” and possibly dangerous situation could result if this instruction is not observed and a coil connection touches a thermostat connection .


Since the signals being switched by the relays are in the neighborhood of 16 to 24V AC, lacing or routing of the connecting wires is not critical other than to route them in a manner to avoid wire pinching and shorts when the box is assembled together.


The three relay coil power cords or wall wart power block cords are brought out of the enclosure and plugged into the three appliance modules, which completes the construction phase.


Check out is accomplished with an ohmmeter. With relay RY1 off, you should have continuity between the “P”, “H”, “F”, and “A/C” screw terminals of the HVAC barrier strip (BS3) and the same screw terminals of the “Main Thermostat” barrier strip (BS1). Send an X10 “ON” command to the appliance module that RY1 is plugged in to. Now you should have continuity between the “P”, “H”, “F”, and “A/C” screw terminals of the HVAC barrier strip and the same screw terminals of the “Setback Thermostat” barrier strip (BS2). The corresponding terminals of the Main Thermostat (BS1) should now be open when you check them with the ohmmeter. Toggle the appliance module several times and confirm the relay RY1 is switching reliably.

Check out of the FAN control is next. Send an X10 “ON” command to the appliance module controlling relay RY2. You should now have continuity between the “P” and “F” terminals of the HVAC barrier strip (BS3). Turn the appliance module off and make sure the path opens. Again, toggle the appliance module several times to insure the relay is switching reliably. If you elected to utilize the optional Air Conditioning Disable relay, check out is accomplished by measuring for continuity between the “A/C” screw terminal of the HVAC barrier strip (BS3) and the same terminal of the selected thermostat barrier strip (the “Main Thermostat” BS1, with relay RY1 off or the “Setback Thermostat” BS2 with RY1 on). Now, send an X10 “ON” command to the appliance module controlling relay RY3. The relay will activate, opening the path. This will disable the thermostat control of the air conditioner control line. Again, toggle the appliance module several times to make sure the “A/C” line between the HVAC and “selected” thermostat barrier strip terminals is being switched properly.


Remember that the A/C control is using negative logic. When the appliance module is switched “on” the air conditioner will be disabled or “off”.


The final operation is to mount the project box at an appropriate location, I mounted mine directly to the side of the HVAC unit (furnace). Use thermostat cable to connect the HVAC unit, the main thermostat, and the setback thermostat to the appropriate screws on the barrier strips. Plug the relay coil lines into the X10 appliance modules and set their addresses. Finally, program your automation system for the new HVAC control, and put new cords on the guest bedroom table lamps before someone finds out.


Parts List


Parts / Description                       Average Cost if not in your “junk box”


RY1 – 4PDT  4 pole double throw relay                       $2 -$5

3 amp or greater contacts. 120VAC coil *


RY2, RY3 –SPDT single pole double throw relay               $2-$5

3 amp or greater contacts, 120VAC coil*,

or can use same part as RY1.


BS1,BS2,BS3  standard screw terminal barrier strips              $.50 -$1

 4 terminals per strip minimum.


RY1-3 Control Modules   X10 Appliance Modules.               $13


TH1, TH2  standard 4 wire HVAC Thermostats          $20 - $40

Note that  TH1 can be the existing thermostat



3 line cords                                            $1-$2

project box                                        $4

hookup wire                                       varies


*see text regarding optional relay coil operating voltage.