Click here to Find a Contractor in your area.
Welcome! Here are the website rules, as well as some tips for using this forum.
Need to contact us? Visit

How does a digital thermostat really work inside?

In another thread, I posted:

"I do not know how the cycles/hr mechanism of a digital thermostat

really works. I have tried to find out, without success. And I have two

of them in my house, both Honeywells.

One way they could work is to vary the hysteresis (size of the dead zone), and that the numbers indicated are just approximate.

Another way is they could count the on-off operations and arbitrarily

stop (in the off position) when the count was met until the time

expired. This seems a lousy way to do it.

A third way is to run the output of the thermistor through a low pass

filter and set the bandwidth to, e.g., 1 cycle/hr, 2 cycles/hr, etc. In

analog days, this would be impractical, but with modern digital

filters, it would be no problem at all."

It was suggested that I post it here as being a better venue to get it answered. I recognize that there may be a fourth way: the way they really do it.


  • Bucko
    Bucko Member Posts: 11
    Cycles per hour

    Why do you think it would be a lousy idea to turn off until set cycle is over. If I set my stat for 4 cyles per hour, I get 15 minute minimums?
  • Jean-David Beyer
    Jean-David Beyer Member Posts: 2,666
    But would you get 15-minute minimums?

    I could imagine it turning on for 2 minutes, off for two minutes, ... in the first 16 minutes.

    Then off for 44 minutes or 60 minutes, depending on other assumptions, ...
  • Bucko
    Bucko Member Posts: 11
    Cycles per hour

    I see the cycle logic as Starts only.  If it comes on for two minutes then off it wouldn't let it come on for 13 minutes. by then it would likly run for 5 then hold off for ten.  You have me thinking about it. I am watching my stat right now to see if this is what it does.
  • Jean-David Beyer
    Jean-David Beyer Member Posts: 2,666
    I was hoping somebody already knew.

    I suppose I could watch my thermostats, too, but since it is August, I do not really want to set them up to about 100F and turn off the summer shutdown on the boiler to run it right now. I would think that Honeywell, in my case, would have this on their web site, or in the installation guide for the thermostat, but they do not.

    Even when it gets cold, I am not sure if I could tell how it is working. I could watch when it turns on and off, but since my heat is mostly radiant in a slab, things will go very slowly. In cold weather, it would turn on and run for several hours with my old boiler, now gone. So things would probably be slow even with it set at one cycle per hour.

    Upstairs is Slant/Fin. I suppose I could set that thermostat to 6 cycles per hour and see what it does (when winter comes). Your theory seems to be that it would run 5 minutes, shut off for 5 minutes, etc., because of the timer, right? That would limit the heating supply to a 50% duty cycle, though. That does not seem like a very good idea.

    Besides, my thermostat made a noticable click when it went on, and I could hear the circulator and boiler (was oil fired) run. The thermostat ran the circulator and the boiler had a aquastat that made the boiler always stay warm. It did not run at a  50% duty cycle.
  • Bucko
    Bucko Member Posts: 11

    I researched it while ran the test. My Tekmar stats create a maximun cycle per hour. I was testing them in cooling as cycles per hour. I don't believe cycles per hour should apply to in slab radiant. I think any radiant system (including Slant-Fin) should cycle long enough to not be concernrd with cph.  I did not realize you were talking about cph in a radiant system just in general.
  • Jean-David Beyer
    Jean-David Beyer Member Posts: 2,666
    Cycles per hour, modulation, outdoor reset

    The more I think about this, the crazier it seems to me. I still cannot find out what a digital thermostat really does to enforce the cycles-per-hour setting. My Honeywell CT3600 thermostat comes set to 6 cycles per hour for gas or oil forced air, and can be set to 1 cycle per hour for radiant floor heat or gravity steam system, 3 cycles per hour for hot water system or high efficiency furnace, or 9 for electric heat system.

    My Honeywell TH4110D is different. Default is 5 cycles/hour for gas or oil furnaces with less than 90% efficiency, 1 cycle/hour for steam or gravity systems, 3 cycles/hour for hot water  systems and furnaces of over 90% efficiency, and 9 cycles/hour for electric furnaces. Nothing about radiant floor heat. This one can be set for any number of cycles/second from 1 to 12. While it is probably of little significance, they did change the cycle rate for low efficiency furnaces.

    But do we even want that with modern systems?

    Imagine I have outdoor reset and that it is perfectly adjusted as to endpoints and slope, and perhaps curve shape as well. In that case, would I not want the thing on all the time (especially if it is condensing boiler and putting out 72F water on a warm day)?

    Now in reality, the curve and endpoints cannot always be right because of varying insolation through the walls and windows, the number of times doors are opened, the number of people in the building and what they are doing, etc. So assuming it is adjusted for the building when it is empty, the thermostat will turn the heat off as the heat load goes down with the presence of people and their activities, and will turn it on when they open the doors.

    In other words, ignoring how the thermostat really works, why do we want a cycles/hour feature in it? There seems to me to be only two reasons, and it does not seem clear to me if either is valid.

    1.) To prevent rapid cycling of the boiler. But it seems to me that there are better ways do do that, including not having the boiler too large for the load, by having outdoor (or indoor) reset, and so on. You could even have the thermostat have wider separation between the on and off temperatures to lower the cycling rate, though the temperature swings would be greater, so this is perhaps not a good idea.

    2.) To prevent overshoot of the indoor temperature, especially with digital thermostats that do not seem to have an anticipator in them. But if that is the reason, I would think that instead, you would just have the thermostat keep track of the difference between the set temperature and the actual temperature and when it got close to the desired temperature, it would turn off the heat, allowing the residual heat in the boiler to circulate and make up the last little bit. It could be proportional, proportional plus integral, or whatever you wanted in there with the computer figuring it all out.
  • Jean-David Beyer
    Jean-David Beyer Member Posts: 2,666
    I think I figured it out.

    Here is what I figured out in a dream last night. Strange reference source, but it seems OK now that I am awake.

    Here is how I imagine a digital thermostat works, as far as the cycles per hour is concerned. Sorry for those who do not know electronics, but you may be able to follow this anyway.

    1.) There is a thermistor in it that continually measures the room (and in some, also the wall) temperature. This is converted to a voltage by running a current through it.

    2.) There is a digital to analog convertor that converts the set point on the thermostat to an analog voltage. Call this the reference voltage.

    3.) Both voltages are sent into a Schmitt Trigger circuit; if the voltage from the thermister exceeds the reference voltage, this produces an OFF signal. If it is less than the reference voltage, it produces an ON signal. There is some hysteresis in there, say 1F or 1/2C so it does not jump around wildly due to noise.

    If you were to hook this up directly to the boiler control, this would work pretty well, sort of like an old mercury thermostat without an anticipator.

    Now to control cycles per hour, they change this slightly. A timer is added to the thermostat described above. For example, if the thermostat is set to three cycles per hour, the timer checks three times per hour what is going on; say at the hour, at 20 minutes past the hour, and at 40 minutes past the hour. If the room is below the reference here, it turns on the heat. But it does not turn it on at any other time. If the thermostat continues to call for heat, the heat stays on. If the thermostat is satisfied, the heat goes off. But it cannot come on until the next 20 minute period starts.

    So let us assume the room is very cold a little before the start of the hour. At the hour, the heat is turned on. 20 minutes is not enough to satisfy the thermostat, so the heat stays on. This continues until we are very close to the desired temperature. So sometime during a 20 minute period, the thermostat is satisfied. Heat turns off. During some later 20 minute period, the room gets too cold. No heat until the next 20 minute period starts; i.e., you may have to wait up to almost 20 minutes to get heat after the thermistor wants it.

    Now let us imagine an unlikely possibility, but it could happen. The thermostat is satisfied at 1 minute after the start of a 20 minute period. A minute later, someone opens all the doors and windows (smoke in the kitchen, whatever). By 3 minutes after the hour, the thermostat's thermistor wants heat. But you have to wait 17 minutes more before the heat comes on. Too bad, but that's how it is.

    This is all just a guess, but it seems to me to be a reasonable way to run a digital thermostat, and the technology for it is not very complex. I ignore all the issues of setback, anticipatory start up, and such, as that seems obvious to me. I still wish they published this information (I do not think I should have to guess).
  • Jamie Hall
    Jamie Hall Member Posts: 17,025
    There's another, slightly different approach...

    Instead of having the thermostat check the temperature at specified times -- in your instance, on the hour, twenty minutes past, and forty minutes past, why not simply have a timer in there which sets to zero when the thermostat part of the circuit calls for heat?  Then the thermostat logic calls until it's happy.  Meanwhile, the timer counts up to the specified length of cycle -- in your instance, 20 minutes.  During that length of time, once the thermostat has turned off, it is inhibited from turning on again.  After that length of time, it can turn on any old time it wants to.

    That, at least, is the way the Honeywells I've seen seem to work, though I must admit I haven't really sat there and studied them!

    I can't figure out how to draw the logic diagram in this note, but basically...

    Step 1: is the temperature below the setpoint?

    if yes, Step 2: then is it more than the cycle setting after the last time the thermostat turned on?

    if yes, Step 3: heat is called for and cycle timer is rest.

    Continue checking temperature (step 1)

    and, if no, turn off call for heat.

    If Step 1 is yes, and Step 2 is no, then loop back to step 1 and repeat until Step 2 is yes...
    Br. Jamie, osb
    Building superintendent/caretaker, 7200 sq. ft. historic house museum with dependencies in New England
  • Jean-David Beyer
    Jean-David Beyer Member Posts: 2,666
    I agree.

    Your approach would work too. And given time and interest, we might come up with several more possible explanations. My point is we should not have to do this. The manufacturers should divulge this, if not in the user manual and not in the installation manual (when these are different) but somewhere. In the specifications to be used by architects, heating professionals, etc. We should not have to guess.
  • cid2
    cid2 Member Posts: 4
    cycle rate answer

    The cycle rate on a digital thermostat takes the place of the heat anticipator on an older style non-digital thermostat. The cycle rate on a heating thermostat helps to prevent overshoot the same way a heat anticipator did.

    For example if you are using a gas fired warm air furnace, the recommended cycle rate setting is 6 cph (cycles per hour).This represents a 10 minute cycle (5 minutes on/5 minutes off). When the thermostat determines that there is a demand for heating, the thermostat will start the system and continue to let it operate in a normal fashion. As the space temperature starts to rise and we get to 50% of the load as determined by the thermostat (or closer to the setpoint in basic terms), the thermostat will initiate the cycle rate to prevent overheating.

    In the above case, the thermostat will stop the system for 5 minutes. If the temperature did not go up to setpoint or did not drop (to 100% load) then the thermostat will bring the system on for 5 minutes. It will continue to do this as long as setpoint is not reached or there is not any drop in temperature to require (100% load). Should the temperature in the space drop (100% load), the cycle rate is out of the picture until the space temperature rises again to 50% load.

    When the cycle rate is set correctly and your equipment is correctly sized, you will not have any problem with the thermostats operation.

    Hope that this helps.
  • Jean-David Beyer
    Jean-David Beyer Member Posts: 2,666
    cycle rate

    Your explanation seems closer to what I expect than any other I have seen, at the Wall and elsewhere. Thank you.

    I am unclear on some points, though. This has to do with your term "the load" because I do not think the thermostat can measure that, at least not directly. I should point out that I am not having a problem with the present setup; I am just trying to gain understanding of how it actually works.

    I happen to have hot water in a slab, so my thermostat is set to one-cycle-per-hour.

    I only have a one-degree setback because much more does not make sense. But pretend the setback is 10 degrees for sake of argument. Are you saying that when the setback period expires, it turns the heat on and lets it run until it has made up 5 degrees (half the amount required) of the setback, and then turns off for 30 minutes, and that it then checks to see if it got to the setpoint or not? And if not, it runs for another 30 minutes, etc.? Or does it run until it has made up 2.5 degrees (again, half the amount required) in this example, and turns off 30 minutes, then checks, etc.?

    As a practical matter, it may not be an important distinction; the former may overshoot a little, and the latter may never quite make it to the setpoint, but in a realistic case, I imagine they will be close enough.
  • cid2
    cid2 Member Posts: 4
    cycle rate continued

    Change the term 'load' to 'close to setpoint'. As the temperature gets closer to the heating setpoint temperature the cycle rate will be initiated (same as a heat anticipator).

    I hope that makes it a little more understandable.
This discussion has been closed.