Jump to content

SwitchLinc to trigger bath fan, but really controlling house HRV


tome

Recommended Posts

I have a bathroom fan that is piped into the house HRV system.  When the bath fan is turned on it actually turns on the HRV which pulls air out of the bathroom (as well as any other return air vents).  I had this on a (now obsolete) TimerLinc Countdown switch which died.  I am replacing that with a simple On/Off SwitchLinc.  The SwitchLinc will trigger an IOLinc on the airhandler to call for the HRV to come on.

My HVAC contractor advises me that the HRV should be run a percentage of time per hour regardless of the fan being on or off.  They say 20-50% per hour.  I didn't do this before, it only came on when the bathroom fan was used.  So, I want to set up a program to trigger the IOLinc to be on every hour for a given amount of time, let's say 15 minutes per hour.  But, if someone turns on the bathroom fan switch I want to also turn on the iOLinc (if off) and start a timer.  After 1 hour (if the switch is not turned off) it should turn the switch off (and tell the IOLinc to turn off).  So, essentially the fan switch in the bathroom is just a 1 hour timer on the fan regardless of what else is happening.  I'm not sure how to do the percentage time program..  Also, if someone goes in the bathroom and leaves the fan switch on, I don't want the percentage time program to run as well because the fan will have already run for an hour, however if someone turns the fan on for a couple minutes and then shuts it off I still want the percentage time program to run...

Oh, and I have a scene, BATHFANCONTROL that has the SwitchLinc as controller and IOLinc as responder.  So I assume turning the SwitchLinc on/off in the program will cause the IOLinc to be triggered from the scene, yes?

I am thinking I want one program:

BATHFan-Timer:

If Control 'BATH-FAN-SWITCH' is switched On

Then

    Wait 1 hour

    Set 'BATH-FAN-SWITCH' Off

Else

   No Actions

 

And a second program:

HRV-Percentage:

Not sure what this program should look like...?

Any suggestions?

-Tom

 

Link to comment

I'd skip the percentage, and just have it stay off for 45 minutes, run for 15 minutes, off for 45, then repeat infinitely.  Set the condition to trigger if bath-fan-switch is off (status, not control)  Once the switch isn't off, the program stops.

For your first program, remember to have it trigger with the bath fan switch is turned on, but when you turn it off to turn off the *scene*, otherwise the HRV will stay on afterwards.

Link to comment
9 hours ago, tome said:

Any suggestions?

@jec6613 is probably right.  Easier to just skip the percentage and always run the HRV 15 minutes whether it's already accumulated runtime via the bathroom fan.  But I've never been known for doing easy.  ?  So here's a starting point for you to consider:

Create two state variables: $sHRV.Minutes.Left.To.Run.In.Hour and $sMinutes.Left.In.Hour

The programs below breaks the day up into 24 hour segments.  At the top of the hour the two variables tracking minutes left in the hour and minutes left to run the HRV are reset.  Then every minute, the minutes left in the hour variable is decremented by one.  If the HRV is turned on, then every minute the minutes left for the HRV to run during the hour is decremented by one.  If at some point in the hour, the minutes left in the hour are equal to or less than the minutes the HRV still needs to run, then the HRV is turned ON.  Finally, at the top of each hour shut OFF the HRV (unless the Bath Fan Switch is ON) since the two tracking variables are designed to both reach 0 at the top of the hour and that means the HRV has run enough and should be shut OFF.

I haven't tested the programs and it's early, so consider them just theoretical. ?

Program1 to Monitor Bath Fan Switch
IF 'BATH-FAN-SWITCH' is switched On
   AND 'BATH-FAN-SWITCH' is not switched Off
THEN
   Wait 1 hour
   Set BATHFANCONTROL scene OFF


Program2 Monitor HRV Minutes Left To run
IF HRV status is ON
   AND $sHRV.Minutes.Left.To.Run.In.Hour > 0
THEN
  Repeat every 1 minutes
    $sHRV.Minutes.Left.To.Run.In.Hour -= 1


Program3 Monitor Time Left in the Hour
IF time is 12am or 1am or 2am or 3am ... or 11pm
THEN
  $sMinutes.Left.In.Hour = 60
  $sHRV.Minutes.Left.To.Run.In.Hour = 15 (or whatever minimum run time you want)
  Run Program5 (IF)
  Repeat every 1 minutes
    $sMinutes.Left.In.Hour -= 1


Program4 Turn ON HRV to Meet Minimum Hourly Run Time
IF $sMinutes.Left.In.Hour <= $HRV.Minutes.Left.To.Run.In.Hour
   AND $sHRV.Minutes.Left.To.Run.In.Hour > 0
   AND HRV status is OFF
THEN
  Turn ON HRV


Program5 Turn OFF HRV at Start of New Hour If Bath Fan Switch Is Not ON (right-click and disable this program so it doesn't run on its own)
         Program will be called from Program2 at the top of each hour, but only after tracking variables have been reset.
IF 'BATH-FAN-SWITCH' status is OFF
THEN
  Turn OFF HRV
Link to comment

I wouldn't use a scene to control an HRV system. Scenes have no confirmation of the device working, and no Insteon retries if it fails to turn on or off.

In my cold winter climate, if my HRV system got stuck on, it would take me a week to get the humidity levels back to a reasonable level again. Most likely somebody would develop a cold/flu by the time the humidity was back on target.

I run a cycling program, sync'ed to my central air fan (to save energy) and base the run time on whether the humidity level is higher or lower than needed, and the dew point of outside is higher than dew point of inside and would be beneficial to the house. This amounts to about 1 minute every 40, or 20 minutes every 40 minutes, decided by the humidity and dew point level comparisons.

In the winter, running the HRV too long would dry my house right out, and the humidifier would never keep up. In the summer, running the HRV too long would raise the humidity levels way too high, and the house would feel damp, while the A/C runs 24x7.

Link to comment
On 12/15/2020 at 10:21 AM, larryllix said:

I wouldn't use a scene to control an HRV system. Scenes have no confirmation of the device working, and no Insteon retries if it fails to turn on or off.

In my cold winter climate, if my HRV system got stuck on, it would take me a week to get the humidity levels back to a reasonable level again. Most likely somebody would develop a cold/flu by the time the humidity was back on target.

I run a cycling program, sync'ed to my central air fan (to save energy) and base the run time on whether the humidity level is higher or lower than needed, and the dew point of outside is higher than dew point of inside and would be beneficial to the house. This amounts to about 1 minute every 40, or 20 minutes every 40 minutes, decided by the humidity and dew point level comparisons.

In the winter, running the HRV too long would dry my house right out, and the humidifier would never keep up. In the summer, running the HRV too long would raise the humidity levels way too high, and the house would feel damp, while the A/C runs 24x7.

Thanks for everyone's responses.  Simple is good (maybe better), but if I wanted simple I probably wouldn't have the ISY to begin with :-)  So, I am going to play around with implementing kclenden's program.  I can't let that effort go to waste!  

A question...I am currently  just running the first program I posted.  When I turn the switch on the fan comes on.  When I turn it off the fan turns off.  If it's left on it runs for an hour and shuts off.  jec6613 said I should be turning off the scene, not the switch, yet it appears to be working (I think).   If the switch is a controller for the scene then why would one need to turn off the scene rather than the switch?

I have Ecobee Smart thermostats that the control my HVAC system.  The Ecobee's have ACC terminals and are intended to control a ERV/HRV or Humidifier.  I was contemplating just having the Ecobee control the HRV (turns out I have an ERV but whatever).  They are not currently wired to do so.  I wondered if the Ecobees use humidity levels to control the HRV after reading larryllix's response, so I called Ecobee.  Turns out they only use timer settings.  You set percent of time to run when occupied or unoccupied and it cycles the terminals.  So, no magic there.  I might as well just use the ISY to do it.  There is a Low and High Humidity Alert on the Ecobee so if the HRV would run too long I will get an alert from the Ecobee and can determine the cause of the problem then.

Anyway, thanks again and I will let you know (kclenden) how the program works.  May get around to setting it up this weekend.

-Tom

Link to comment
4 hours ago, tome said:

Thanks for everyone's responses.  Simple is good (maybe better), but if I wanted simple I probably wouldn't have the ISY to begin with :-)  So, I am going to play around with implementing kclenden's program.  I can't let that effort go to waste!  

A question...I am currently  just running the first program I posted.  When I turn the switch on the fan comes on.  When I turn it off the fan turns off.  If it's left on it runs for an hour and shuts off.  jec6613 said I should be turning off the scene, not the switch, yet it appears to be working (I think).   If the switch is a controller for the scene then why would one need to turn off the scene rather than the switch?

I have Ecobee Smart thermostats that the control my HVAC system.  The Ecobee's have ACC terminals and are intended to control a ERV/HRV or Humidifier.  I was contemplating just having the Ecobee control the HRV (turns out I have an ERV but whatever).  They are not currently wired to do so.  I wondered if the Ecobees use humidity levels to control the HRV after reading larryllix's response, so I called Ecobee.  Turns out they only use timer settings.  You set percent of time to run when occupied or unoccupied and it cycles the terminals.  So, no magic there.  I might as well just use the ISY to do it.  There is a Low and High Humidity Alert on the Ecobee so if the HRV would run too long I will get an alert from the Ecobee and can determine the cause of the problem then.

Anyway, thanks again and I will let you know (kclenden) how the program works.  May get around to setting it up this weekend.

-Tom

With the ecobee NS you should be able to control the cycle of the HRV / ERV to suit your indoor/outdoor climate differences though. I don't really need that much cycle time as we use the HRV button timer on every shower and toilet visit for 15,30, or 45 minutes anyway.

I do turn off the HRV cycling when in vacation mode (to save energy) , but not away mode. The ecobee may do that anyway, being wired. After trying many schemes for vacation mode setting, now I use the ecobee NS vacation mode to control my ISY things. It is much more reliable and I can control it with a simple app from anywhere.

When any vacation is terminate I run the HRV for an hour to get some fresh air in the house as we get home.

Link to comment
10 hours ago, larryllix said:

With the ecobee NS you should be able to control the cycle of the HRV / ERV to suit your indoor/outdoor climate differences though. I don't really need that much cycle time as we use the HRV button timer on every shower and toilet visit for 15,30, or 45 minutes anyway.

It is purely time (and occupancy) control.  No control based on climate or humidity.  You can manually change the time settings in each season but the ISY can do better than that ?

Link to comment
15 hours ago, tome said:

 

A question...I am currently  just running the first program I posted.  When I turn the switch on the fan comes on.  When I turn it off the fan turns off.  If it's left on it runs for an hour and shuts off.  jec6613 said I should be turning off the scene, not the switch, yet it appears to be working (I think).   If the switch is a controller for the scene then why would one need to turn off the scene rather than the switch?

 

As with all insteon scenes, in order to keep everything synced properly, you should control the scene itself. If your scene is only 1 device then you're fine. However, if it's multiple devices, the other devices will not turn on/off if you control the individual devices instead of the scene-which controls all

Link to comment
On 12/16/2020 at 6:44 PM, tome said:

A question...I am currently  just running the first program I posted.  When I turn the switch on the fan comes on.  When I turn it off the fan turns off.  If it's left on it runs for an hour and shuts off.  jec6613 said I should be turning off the scene, not the switch, yet it appears to be working (I think).   If the switch is a controller for the scene then why would one need to turn off the scene rather than the switch?

When a switch is a controller, it only acts as a controller when it is locally controlled (i.e. you physically press the switch).  A switch does not act as a controller when you operate the switch remotely (i.e. the ISY tells the switch to turn OFF).  So turning the Bath Fan Switch off from the ISY will have no effect on the IOLinc.  That is why you should turn OFF the scene.

Another thing to note about your original program.  You only have 'switched on" in your IF.  You should also include 'not switched off'.  If you don't then your WAIT will not be interrupted when the Bath-Fan-Switch is physically switched OFF which means your timer will continue to run.  The key is that while they seem like the opposite of each other "switched on" and "switched off" are really two separate events and thus if you want to react to both of them (i.e. start timer on 'switched on' and stop time on 'switched off') then you have to include both in the IF.

Link to comment
13 hours ago, tome said:

It is purely time (and occupancy) control.  No control based on climate or humidity.  You can manually change the time settings in each season but the ISY can do better than that ?

Sure but why run up your HVAC bill with too much fresh air. Let your ISY figure out what is most efficient. I use mine to cool the house down at nights to save an A/C bills if the dew point outside is less than the dew point inside and I don't want the humidity. ISY decides all that and could control your ecobee programming to effect it.

Link to comment
16 hours ago, larryllix said:

Sure but why run up your HVAC bill with too much fresh air. Let your ISY figure out what is most efficient. I use mine to cool the house down at nights to save an A/C bills if the dew point outside is less than the dew point inside and I don't want the humidity. ISY decides all that and could control your ecobee programming to effect it.

Agreed, I think we are saying the same thing.  I was just saying the Ecobee itself is only time control, the ISY can do more than that as you have pointed out...

-Tom

Link to comment
19 hours ago, kclenden said:

When a switch is a controller, it only acts as a controller when it is locally controlled (i.e. you physically press the switch).  A switch does not act as a controller when you operate the switch remotely (i.e. the ISY tells the switch to turn OFF).  So turning the Bath Fan Switch off from the ISY will have no effect on the IOLinc.  That is why you should turn OFF the scene.

Another thing to note about your original program.  You only have 'switched on" in your IF.  You should also include 'not switched off'.  If you don't then your WAIT will not be interrupted when the Bath-Fan-Switch is physically switched OFF which means your timer will continue to run.  The key is that while they seem like the opposite of each other "switched on" and "switched off" are really two separate events and thus if you want to react to both of them (i.e. start timer on 'switched on' and stop time on 'switched off') then you have to include both in the IF.

I was going to ask next the question (you answered) regarding "not switched off".  Thanks for the clarification on these issues!

-Tom

Link to comment
On 12/19/2020 at 8:12 PM, xlurkr said:

@tome:

A little OT, but can you tell me how your TimerLinc "died"?  I have one that I can no longer get the ISY to recognize.  I get the message about not recognizing the Insteon engine.  Is that what you have seen?

-Tom

I have 4 TimerLincs in my house.  This one that died has been a thorn in my side for many years.  I have had to reset it (pull out the little switch and push and hold for reset) many times over the years.  But it has always come back to life after doing that.  What I would see is that it would just stop sending commands to the ISY.  If you pushed a button it would light up and act as if it worked (timer progressively counted down and lit each button) but it wasn't triggering anything.  After a reset it would come back to life.  I thought that is what it was doing again and I was tired of it so rather than reset it again I ordered a new regular Switchlinc On/OFF switch to replace it.  It was a long time before I got to replacing it.  When I finally got around to installing the SwictchLinc I discovered the reason the TimerLinc wasn't working, it was completely fried.  The inside had clearly caught fire, there were char marks in the electrical box and the plastic housing was melted.   I lost a neutral line into my house a while ago and that event wreaked havoc in my house.  I lost many devices (10's of thousands of dollars in damage).  This was one I thing hadn't checked...

-Tom

Link to comment
49 minutes ago, xlurkr said:

Thanks.  My TimerLinc is the plug-in version, and there may be very little in common with the KPL-like version, which is what I believe you have.

-Tom

 

Ah yes sorry.  It is the countdown keypad timer thing that I have.  I do have a Timerlinc in a box but haven't actually used that...

Link to comment

Archived

This topic is now archived and is closed to further replies.


×
×
  • Create New...