ELK - Rules to Control T-Stats

felixrosbergen

Senior Member
Hi All,

I got my 2 T-Stats (Aprilaire 8870's) connected to the ELK annd I'm finally getting around to writing some rules.

I wanted to see what others are using since with the tools that ELK gives you there's several ways.

My current thinking was:
- Defined 6 Temps. Winter Low, Winter Comfort, Winter High, Summer Low, Summer Comfort, Summer High using 'Customs Settings'. I hope to be able to adjust these values later using an interface with CQC
- Defines 6 Tasks. SetStatToWinterLow, SetStatToWinterComfort, SetStatToWinterHigh, etc...

The issues I run into are:
- I want most temp changes to be triggers by the alarm status (stay mode, stay night mode, away mode).
- Typically we keep the upstairs and downstairs at different temps.
- On weekdays our arrival time home from work is preditable so i want the house to warmed up/cooled down by the time we come home.

I also want to define some low and high alert temperatures for occupied / unoccupied (basement /attic ) space that woudl trigger an e-mail alert or something if they are exceeded. That way if the heating/cooling systems at least the pipes wont freeze or cats dead or something.

Can some of you post some examples of a comprehensive temp control method for this kind of stuff?
 
A few ideas:

1) Use the custom settings to set temps for each zone. For example: Bedroom-Away, Bedroom-Night, Bedroom-Day, etc. That way you can change them based on season, heating/cooling, etc. This way you don't need separate summer/winter heating temps, just adjust as needed from your touchscreen/PC/Keypad/Internet, and put the thermostats in either heating or cooling mode. I think it is easier, esp when it is hot during the day, cold at night, etc.

2) Have a task that activates each category, like night, day, away, etc. Use rules to trigger these tasks. Whenever armed away --> Activate away heating task, etc. At XXX o'clock activate night task, etc.

3) Have a separate rule that checks all zones every XXX hours or minutes and calls you if the temp exceeds a certain threshold.

4) Get an M1XEP and use the JAVA interface to trigger climate changes before you leave from work via a web browser.
 
I think with the ELK you can't just set a temp to be reached..you have to set a 'cooling' or 'heating' mode as well. So you'd still need different rules for different seasons from what i can tell.

I'm tyring to come up with a way that uses the least rules, custom settings and tasks but gives maximum funcitonality.

I suppose i can make myself change the temp settings twice a year when the season changes, but the way the rules can control the thermostates i might as well program it properly and just have a single setting to change (e.g. use a virtual output that is 0 for Winter and 1 for summer).

In the end i envision a CQC pages that allow me to define all the temp settings and then has a 3 position switch that puts the entire HVAC system into OFF, Heating (Winter) or Cooing (Summer) mode.
 
This doesn't answer your question but you may find the rule useful at some point.

My in-laws love to crank the temperature up in our house when they visit. I got tired of turning it down so instead I wrote the follow:
WHENEVER RCS TR40 (Tstat1) HEATING DESIRED TEMP IS SET TO GREATER THAN 68 DEG. F.
THEN SET RCS TR40 (Tstat 1) HEATING DESIRED TEMP TO 66 DEG. F.
This rule works great for kids that don't pay the heating bill.

I also use the standard rules like:
1) WHENEVER 1 -ArmedNight .... SET RCS TR40.... (bed time)

This rule to lowers the temp. when no one is in the house or for kids who forget to turn down temp when leaving:
2) WHENEVER Motion-FamRm... Output 204 STATE OFF.... THEN SET RCS TR40 (Lower temp)...THEN TURN Output 204 ON FOR 60 MINS,
 
In the end i envision a CQC pages that allow me to define all the temp settings and then has a 3 position switch that puts the entire HVAC system into OFF, Heating (Winter) or Cooing (Summer) mode.
I implemented this in a four-position switch -- MANUAL HEAT, MANUAL COOL, AUTO and OFF.

The MANUAL settings are "hard-switched" which is to say that the selected Heat or Cool Mode contact ("B" or "O") is physically connected to the HVAC "R" contact in the selector switch. This is the same as you would do in a three-position manual switch, or on the master thermostat base plate.

The AUTO setting routes these same mode contacts through two M1 relays, which I can then set via rules. This allows "soft" mode selection, remotely if necessary, or at any time, depending on conditions. I wired it in a "fail-safe" manner, so that if the M1 goes out for some reason, the relays will drop and heating mode will be powered, which is the prudent default in my New England location.

To tell the M1 which mode is selected, I am using the second pole on the selector switch connected to an M1 zone, with a few resistors that give specific voltage levels for each selected position.

One additional function I have in the rules: In case of a fire alarm, the M1 puts the relays in HVAC OFF mode so that the heater is not blowing air and so, presumably, not moving smoke or fanning flames.

None of this would be necessary, I suppose, if I had a more modern, automatic HVAC controller, but it is an older EWC unit that requires manual mode selection.
 

Attachments

  • HVAC_Switch.jpg
    HVAC_Switch.jpg
    45.8 KB · Views: 31
MavRic...any luck with good rules for climate control? I've been struggling with this as well. I thought I had a good answer and find it to not work as well as it did on paper.
 
To set upper and lower temperature limits:

Whenever every 60 seconds
And thermostat temperature is greater than 80 degrees
Then turn on a fan or something for 5 minutes



Whenever every 60 seconds
And thermostat temperature is less than 40 degrees
Then turn on a heater for 5 minutes

The rule will keep the heater on until the temperature gets above 40 degrees
 
OK...I got some rules working now according to Spanky's example. Now another question. How do you deal with changes made at the Tstat itself? For example, I have Aprilaire 8870. My task setpoint is cool 76 degrees. My wife wants it cooler and changes it at the Tstat to 73. Since the task looks every minute and sees the rules setpoint and changes it back to that, how do you keep it to what is set at the Tsat level. There is no hold on the 8870s, only Lock and Bypass network. With bypassing the network, you have to unbypass it at the Tstat to work again.

I am using Aprilaire, Elk and CQC
 
If you have motion sensors in your house, you could also set up a rule where if there was no motion on any of the sensors for a period of time (say 2-3 hours), it would set the thermostat to night or away mode.

My schedule changes daily, and so does my wife's, so putting in hard schedules has never worked well for us. I'm looking forward to getting all my equipment installed so I can do this.
 
Back
Top