I live in an apartment with central heat. It's controlled by a round Honeywell thermostat. The heater ticks really loudly and annoyingly when it heats up and cools down (probably a topic for a separate thread), and the Honeywell thermostat causes it to heat up and cool down too frequently for my liking.

My plan is to replace the Honeywell thermostat with an Arduino board that'll have better hysteresis, plus show a more accurate temperature readout. (The Honeywell thermostat's current temperature reading is way off.)

There are two wires going to the Honeywell thermostat: a red and a beige. From my research (http://diy.stackexchange.com/questions/8019/is-there-a-standard-wiring-scheme-for-ac-heater-thermostats), that should be the standard hot and common at 24V.

However---and this is why I am writing---when I measure the voltage between those wires with a voltmeter, I end up with 0 V. The heater works fine with the Honeywell thermostat, so I cannot explain this. I have not tried closing the circuit manually, since now I don't know what to think.

Any ideas?

  • I know there are some meters that you need at least 60 volts for, like some of the solenoid testers. Some electronic transformers will not show measurement without a load, but I've never heard of A/C use electronic transformers.
    – lqlarry
    Apr 1, 2012 at 4:51
  • 1
    This Answer might help. Red should be 24V, white/beige should be heat call.
    – Tester101
    Apr 1, 2012 at 14:53

3 Answers 3


That will be a fun little project. I wouldn't get overly concerned about the voltage on those wires. You're safest bet is to use a small relay to isolate that part of the circuit. Choose a relay with contacts rated for 120V and 1A and you should be good to go. This will allow you to be very flexible in your choice of coil voltage and how you drive the load with the Arduino (there are plenty of examples about how to do that).

If you really do want to measure voltage, make sure the thermostat is not requesting heat (set it all the way cold), and set your meter for AC first... if you do get a reading, you can test again with DC to see whether you have an AC or DC source.


Simply put, the round 2 wire thermostat is an on/off switch. When the room temperature falls below the set point, the switch closes (on) and the furnace runs. When the temp goes above the set point, the opens (off) and the furnace stops.

Tester101's answer to the related question (linked in his comment) will tell you more than you need to know about thermostat wiring.

Your Arduino will need its own power source, and as pilotcam suggests, a relay to complete the circuit. In all likelihood, the thermostat circuit is 24VAC; a 1A relay at 24VAC or above should be fine.

I'm never one to squelch a geeky DIY project, but I'd worry about the implications of a program bug causing the furnace to run too long (wasting fuel, and possibly tripping its overheat protection) or not at all, risking damage from freezing. Commercial programmable thermostats costing $50-100 have some hysteresis logic in them, have battery backup, and are very reliable.


Thanks to everyone. I figured out that my voltmeter measures only DC, whereas the two terminals use AC. (I was using an NI MyDAQ as a voltmeter.) When I connect the two terminals, the heater starts right up.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.