Jump to content

Welcome to Smart Home Forum by FIBARO

Dear Guest,

 

as you can notice parts of Smart Home Forum by FIBARO is not available for you. You have to register in order to view all content and post in our community. Don't worry! Registration is a simple free process that requires minimal information for you to sign up. Become a part of of Smart Home Forum by FIBARO by creating an account.

 

As a member you can:

  •     Start new topics and reply to others
  •     Follow topics and users to get email updates
  •     Get your own profile page and make new friends
  •     Send personal messages
  •     ... and learn a lot about our system!

 

Regards,

Smart Home Forum by FIBARO Team


  • 0

Fan - Humidity Control Scene


petergebruers

Question

A while ago, I joined a discussion about controlling a bathroom fan (not a whole house ventilation), by means of a single humidity sensor.

This inspired me to clean up my running code and share it with you.

 

VERY IMPORTANT! Only use this script with an Aeotec MultiSensor 6 aka MS6 aka "the square one". I have extensively tested several "MultiSensors" and only MS6 meets its specifications! The older, round MultiSensor and MultiSensor Gen5 have very bad temperature & humidity response (up to 12 percent-point deviation) so they are not good. If I ever find the time, I'll post a calibration procedure and test results of several sensor. I also tested several DIY sensors on a Z-Uno and they can be used as well... but not the old MS!

 

 

This script uses one, and only one humidity sensor. Because I am convinced, that this is all you need. You can device clever scripts, based on several sensors or weather stations or weather forecast... But in the end this adds complexity and you'll have a hard time convincing me multi-sensor works better!

 

If you want to learn more about my motivation to script it in this particular way, please read:

 

 

In fact, before I talk about the control scene, I'd like to share script to monitor your setup.

 

It is a script which filters your event log, and puts fan and humidity data in your debug window. The log script enables you to check if the control script runs as expected.

 

The Lua code demonstrates: filtering the event log, sorting data,  and outputting data as html or plain text.

 

The log output looks similar to this:

 

Please login or register to see this attachment.

 

Since I took that screenshot I decided it was nicer to reverse the order. If you look at the script you'll see that's only a matter of changing > to <

 

You might notice the fan device has a value... This script can control a fan connected to a dimmer or a switch and the scene automatically detects the difference. I recommend a dimmer only for small fans; < 30 W. For Dimmer 2: set parameter 30 = 0 to force "leading edge control".

 

Features:

  • You can test this script by selecting one dimmer in your house as the "sensor" and another one as the "fan".
  • You can set a parameter to speed up al timers (e.g. turn "minutes" into "seconds") to easy debugging.
  • Requires only one humidity sensor.
  • Can control a fan on a switch or a dimmer. Uses undocumented code, but I guess this is pretty safe to use.
  • Contains lots of comments and lots of debugging.
  • Debugging is easily removed, check comments.
  • Limits fan runtime and does retries.
  • Uses autostart, script recovers from reboot.

 

This scene has not been tested by anyone else, so please run it, check it and share what think, so I can improve it!

 

Note: if you do not have a means to dry your air, which you probably do not have, the control of humidity depends on outdoor conditions. I live in Belgium... According to www.weatheronline.co.uk "The climate of Belgium can be classified as Cfb Climate; a warm temperated humid climate with the warmest month lower than 22°C over average and four or more months above 10°C over average."

 

Please login or register to see this attachment.

 

Please login or register to see this attachment.

 

Edited by petergebruers
  • Like 2
Link to comment
Share on other sites

Recommended Posts

  • 0
On 10/20/2017 at 3:58 AM, petergebruers said:

A while ago, I joined a discussion about controlling a bathroom fan, by means of a humidity sensor.

This inspired me to clean up my running code and share it with you.

 

In fact, First I'd like to share script that filters your event log, after that I'll talk about the control script.

The log script enables you to check if the control script runs as expected.

Th Lua code demonstrates: filtering the event log, sorting data,  and outputting data as html or plain text.

 

The log output looks similar to this:

 

Please login or register to see this attachment.

 

Since I took that screenshot I decided it was nicer to reverse the order. If you look at the script you'll see that's only a matter of changing > to <

 

You might notice the fan device has a value... This script can control a fan connected to a dimmer or a switch and the scene automatically detects the difference. I recommend a dimmer only for small fans; < 30 W. For Dimmer 2: set parameter 30 = 0 to force "leading edge control".

 

Features:

  • You can test this script by selecting one dimmer in your house as the "sensor" and another one as the "fan".
  • You can set a parameter to speed up al timers (e.g. turn "minutes" into "seconds") to easy debugging.
  • Requires only one humidity sensor.
  • Can control a fan on a switch or a dimmer. Uses undocumented code, but I guess this is pretty safe to use.
  • Contains lots of comments and lots of debugging.
  • Debugging is easily removed, check comments.
  • Limits fan runtime and does retries.
  • Uses autostart, script recovers from reboot.

 

This scene has not been tested by anyone else, so please run it, check it and share what think, so I can improve it!

 

Please login or register to see this attachment.

 

Please login or register to see this attachment.

 

Nice, tonights homework;D

Link to comment
Share on other sites

  • 0
  • Inquirer
  • Thank you, @Jamie mccrostie - please share your thoughts... Any thoughts... I believe in the power of the community, to debug/polish solutions...

    Link to comment
    Share on other sites

    • 0

    Thanks for sharing @petergebruers, will test this after I move house in a couple of weeks. 

    My GUI looks like a graveyard now, dead devices and disabled scenes all over..

     

    Jim

    Link to comment
    Share on other sites

    • 0

    It works well with one sensor

    I would like to extend it to multiple humidity sensors (all equipped with temperature sensors)

     

    1 in the stairway   A

    1 in the bedroom  B (door to the stairway)

    1 in the bathroom  C (door to the bedroom) & the fan is in the bathroom

    If the fan is ON, the airflow is from stairway A > Bedroom B > Bathroom C.

     

    First:  I would like to get the scene to display historical data of all humidity sensors, for instance displayed in different columns
     

    Second:

    I would like to include more sensors in the scene that triggers the fan to start and stop

    The main trigger for the fan (in the bathroom) is C

    But I would like to use the data of B and A to influence the algorithm.

    Normally the bathroom has the highest humidity peeking up to values above 90%. Triggered at 80%

    But the bedroom B usually reaches also higher humidity levels in the morning, so that might trigger the fan as well. With the room temperatures the absolute humidity can be calculated, and decided if drier air comes in to the room or not

    The aim is to keep the core of the house (A) of a humidity between 40% and 60%

    Link to comment
    Share on other sites

    • 0

    Hello Peter,

     

    I am testing the device in a real situation.

     

    I encountered this issue.

     

    If I am correct , if after the first  run and the fanRunMinutes the humidityLowerLimit is not reached, fanSleepMinutes is reached.

    If during that sleeping period the humidity level gets up ("another person taking a shower") and exceeds the humidityUpperLimit the scene is not restarting, which I believe should be the case.

    During the fansSleepMinutes cyclus, if the humidity rises above humitityUpperLimit a new scene and a new cyclus  should start

     

    About manual overrule:

    The fan doesn't respond to manual (switch) turning off and on. At least it should be able to put in manually ON at any moment, and after a certain period the script takes over.

     

    What do you think, Peter?

     

     

    Please login or register to see this attachment.

    Link to comment
    Share on other sites

    • 0
    15 hours ago, net said:

    Hello Peter,

     

    I am testing the device in a real situation.

     

    I encountered this issue.

     

    If I am correct , if after the first  run and the fanRunMinutes the humidityLowerLimit is not reached, fanSleepMinutes is reached.

    If during that sleeping period the humidity level gets up ("another person taking a shower") and exceeds the humidityUpperLimit the scene is not restarting, which I believe should be the case.

    During the fansSleepMinutes cyclus, if the humidity rises above humitityUpperLimit a new scene and a new cyclus  should start

     

    In my script I solved this by checking measured humidity against 'real life' humidity and therefor making humidity limits dynamic. To do that, I read the Netatmo value, but any public service could do the same.

    Link to comment
    Share on other sites

    • 0
    14 minutes ago, emielstroeve said:

    checking measured humidity against 'real life' humidity

    Thank you Emiel,  I believe a good approach do use dynamic limits.

    Do you check that (outside) humidity at the start of the scene or after the fanRunMinutes period.

     

    In case the refreshing air is (always, directly) sucked from outside or a window (sensor condition) is open that seems a good approach. That real life humidity, you take the outside Neatmo value, do you correct for temperature? To calculate that the air is absolutely drier or not?

    Can you share the code? Did you solve the manual on/off blockage while the script is running

     

    In this casus the fan sucks the air from another room of a (large) house, so I could use a second humidity sensor in a reference room.

    In this case the temperature in the bathroom (where this fan is) varies a lot (< 17C or 20/22C) within a day of in a cooler season.

    So I would propose that after the fanRunMinutes and a few times during the fanSleepMinutes the humidity limits are dynamically recalculated and decided is the script should continue or stopped.

     

     

     

    Link to comment
    Share on other sites

    • 0
  • Inquirer
  • 2 hours ago, emielstroeve said:

    In my script I solved this by checking measured humidity against 'real life' humidity and therefor making humidity limits dynamic. To do that, I read the Netatmo value, but any public service could do the same.

     

     

    1 hour ago, net said:

    In case the refreshing air is (always, directly) sucked from outside or a window (sensor condition) is open that seems a good approach.

     

    I disagree with both of you and it is a good thing you bring this up! This way I can explain why I wrote the script...

     

    You cannot directly compare relative humidity values, please read this topic before continuing the discussion:

     

     

    My script does exactly what it is supposed to do: if humidity is *high*, it starts the fan. Humidity is "high" is a measurement done in your bathroom,. It does not depend on another sensor. So this script only uses one sensor and it performs well. It does not perform any better if you add complexity.

     

    Compare with room temperature control. To set the temperature in your room, you use a thermostat. This thermostat does its job on its own. Tell me, do you COMPARE outdoor temperature with the ROOM temperature, to turn on the heating? Isn't it enough to compare room temperature with set point? You do not use another temperature sensor, because measuring room temperature is sufficient to control the temperature in the room. An outdoor sensor can optimize the water temperature, but that is optional, a lot of people do not have it and they can control room temperature with just one sensor.

     

    The only issue with the fan control is this: if the "fresh" air is humid, and this depends on temperature, the fan might seem to run "forever". In fact, it will not run forever. It will run only for as long as it is needed. But wet, hot, outdoor condition can continue for several hours so people get the impression that the fan is "stuck on". If the fresh air gets dryer, the fan will stop.

     

    With a heating system something similar can happen. If you do not have a cooling system, and it is 24 ° C outdoors, you cannot cool the room to 21 degrees. An outdoor sensor can tell you "it is pointless to try to get to 21 degrees, because it is hot". But that is not very useful. The room thermostat, on its own, can determine that the room is hotter than 21° - it will simply keep the heating system fully off. Now suppose it is extremely cold. Again, the outdoor sensor can tell you "it is - 20 ° in Belgium and the heating system cannot heat the room to 21° ". Very interesting, but it is not very useful. The room thermostat will see a low temperature, for example 18° and it will turn on the heating system "forever". Just like the fan control, it is not "forever" but only until outdoor temp increases.

     

    But because these "long runs" annoy some people, I added this fanRunMinutes and fanSleepMinutes stuff. The script will continue to turn on/off the fan, until humidity is low. If you set fanRunMinutes to 24 * 60 then it will run the fan continuously for on day. You can tune it as you please...

     

    If you were te measure outdoor humidity (assume that is the "incoming air"), and apply some math, you might be able to detect when the fan CANNOT reduce bathroom humidity. So, if the bathroom sensors reports a high level and your outdoor sensor too, what do you want to do? Start the fan or not? Try again when outdoor conditions are better? Send a mail?

     

    The only advantage I see is this. In Belgium, on a hot summer day, when there is a thunderstorm, the "fresh" air might actually contain more humidity than the limit in the script (say 75%) so actually increasing humidity level in your bathroom for a while. Again, the fanRunMinutes and fanSleepMinutes stuff will limit this effect, and when conditions change it will eventually reduce humidity in your room. I think it depends on your climate, how often this happens...

     

    Also, like temperature, limits are not very "dynamic". You do not want more than 75 - 85 % humidity because you'll get damp spots... If you could measure the coolest spot (which is probably quite difficult) you can set the limit higher if you put your sensor in that exact spot, theory says up to 95%...

     

    I think adding another humidity sensor only makes the script more difficult, while obtaining not a lot of improvements... I am not agains this complexity per se, if it really improves the script.

     

    I encourage everyone to write a "humidity control" script, based on 2 sensors. Then compare it with my script, over a longer period of time. If you get it right, I am convinced that you CAN avoid turning on the fan when outdoor conditions are not good... It would be great if someone could publish such a script with some convincing arguments... I strongly believe in the force of this community to improve our automation systems! That is also one of the reasons, why there is the "event log" script, so you can easily find out if it is performing well.

    Link to comment
    Share on other sites

    • 0

    Thank you for your reply

     

     

     

    28 minutes ago, petergebruers said:

    My script does exactly what it is supposed to do: if humidity is *high*, it starts the fan. Humidity is "high" is a measurement done in your bathroom,. It does not depend on another sensor.

    I agree for this, in the bathroom independant of its temperature, the RELATIVE humidity should trigger the fan. After a shower of bath the humidity raises well above the max level.

    After the fan's activation there are roughly 3 phases:

    phase 1 from actual humidity till  humitityUpperLimit

    phase 2 from humitityUpperLimit till humitityLowerLimit

    phase 3 below humitityLowerLimit

     

    19 hours ago, net said:

    During the fanSleepMinutes cyclus, if the humidity rises above humitityUpperLimit a new scene and a new cyclus should start

     

    Am I correct that the scene only enters the fanSleepminutes period IN phase 2 and only if phase 3 is not reached?

    According to my experience  the scene  is not restarted if the humidity rises to level 1 again, NOR can the fan put on bij hand.

     

    In my opinion a rise in humidity from phase 2 back to phase 1 should restart the scene.

    @petergebruers What is your opinion on manual intervention of the scene?

     

     

     

    2 hours ago, petergebruers said:

    If you were to measure outdoor humidity (assume that is the "incoming air"), and apply some math, you might be able to detect when the fan CANNOT reduce bathroom humidity. So, if the bathroom sensors reports a high level and your outdoor sensor too, what do you want to do? Start the fan or not? Try again when outdoor conditions are better? Send a mail?

     

    To my opinion:

    Relevant is where the air comes from, in this casus it is air from the adjacent room.

    After the fanRunMinutes  the humidity can be measured:

    If the humidy is above max level humitityUpperLimit  the fan should ALWAYS run, and even leave sleepmode and kill and start a new scene

    If it has not reached the LowerLimit, indeed with some math you can  conclude if putting the fan on is effective or not.  Ineffective, fan of and reevaluate after a certain period,  effective continue

     

    Link to comment
    Share on other sites

    • 0
  • Inquirer
  • 1 hour ago, net said:

    Am I correct that the scene only enters the fanSleepminutes period IN phase 2 and only if phase 3 is not reached?

    According to my experience  the scene  is not restarted if the humidity rises to level 1 again, NOR can the fan put on bij hand.

     

    Unless I am missing some kind of bug, this is not how the scene works...


    This is the main loop, with some pseudo code.

     

    Please login or register to see this code.

    The loop only ends if the humidity level drops below the lower limit. If it stays above the lower limit, this scene keeps running. It will keep turning the fan on and off, forever, if the humidity does not drop below the lower limit.

     

    Maybe the devil is in the detail... you say "humidity rises to level 1 again". What is "level 1"? Is it humidityLowerLimit or humidityUpperLimit?

     

    If the script ends, I am 100% that humidity has reached the lower limit. The scene will be triggered (started) at the next update of the humidity level, when the sensor reports a value. If that level is above the upper threshold, the cycle repeats.

     

    Again, if I am missing your point, please try to explain again, based on this code snippet. I really want to understand what is troubling you. I know, I do not always see my own bugs! I can also recommend to run this on 2 dimmers, and speed up the scene (see "timeSpeedupFactor"), so you can simulate your problem.

     

    1 hour ago, net said:

    What is your opinion on manual intervention of the scene?

     

    At the moment, I do not have plans to add this. At the moment, I am checking the core functionality, so I really appreciate all feedback. If the main goal of this scene is met, I might add functionality.

     

    You can already think about this: what does "manual override" mean? Do you want to force than fan "on" for a certain time? Do you want to force it "off" for a certain time? Do you want to run the scene with different limits, for a certain time? Or until something happens ("day" or "night" starts?). Why do you want to override the automatic control in the first place?

     

    2 hours ago, net said:

    Relevant is where the air comes from, in this casus it is air from the adjacent room.

     

    In my house, as in many houses in an area with the same climate, room temperature is a bit lower than bathroom temp, and humidity is almost always 55 - 65 %. So, most of the time, displacement of the bathroom air will lower the humidity below the threshold. As u user from the Netherlands pointed out, there are a few exceptions each year... The question is, would it bother you if the fan ran continuously for 24 or 48 ours? Until the weather conditions change? It would not bother me, but because this issue was specifically mentioned, I added the max runtime and sleeptime parameters.

     

    2 hours ago, net said:

    If the humidy is above max level humitityUpperLimit  the fan should ALWAYS run

     

    When I developed this script, I anticipated this question. That is why there are configuration options. If you set fanRunMinutes to 365*24*60 then the fan will run continuously for one year. Is this close enough to "always"?

     

    Link to comment
    Share on other sites

    • 0

    I mentioned 2 different, not related issues, that might be confusing.

     

    1 hour ago, petergebruers said:

    Unless I am missing some kind of bug, this is not how the scene works...


    This is the main loop, with some pseudo code.

     

    Please login or register to see this code.

    The loop only ends if the humidity level drops below the lower limit. If it stays above the lower limit, this scene keeps running. It will keep turning the fan on and off, forever, if the humidity does not drop below the lower limit.

     

    Call it a bug or not

    To my opinion the loop should not only check at the end but should also check regularly if "another person takes a shower" which causes the humidity to rise again above the upper limit. Now the scene is blind (to high moist) and deaf (to manual fan-activation) during this waiting loop.

     

     

    Link to comment
    Share on other sites

    • 0
  • Inquirer
  • 11 minutes ago, net said:

    Call it a bug or not

    To my opinion the loop should not only check at the end but should also check regularly if "another person takes a shower" which causes the humidity to rise again above the upper limit. Now the scene is blind (to high moist) and deaf (to manual fan-activation) during this waiting loop.

     

    I really do not understand what you are talking about... The script does not "only check at the end"... The script does exactly what you say. It *does* check regularly if humidity goes up.

     

    It checks *every minute* , and *every minute* it sets the fan speed, like this:

     

    Please login or register to see this code.

     

    If "another person takes a shower", one minute later the fan speed goes up... Why do you keep saying that the script does not respond to changes "while it is sleeping"? It wil only "go sleeping" if the fan run time exceeds fanRunMinutes... And in my previous post I told you, you can set the limit to 365 days... And you can set the sleep time (that only exists, if you exceed a continuous "on" time of 365 days)... to 0 seconds. So it will not add any blind time. But it will turn off the fan briefly without modifying the script. I see no bug... I am really sorry...

     

    It does not allow you to manually control the fan speed, because every minute it calculates a new fan speed, and sends it to the fan if the value differs from the previous one.

     

    I really do not see what is wrong.

     

    Have you tried to run the script on 2 dimmers? Does it demonstrate your problem? If so, I can follow your instructions and maybe understand the issue...

     

    Wait! Here is another idea: modify my script. Adapt it to your liking... fix the perceived bug... Send it to me via PM or post it here. Maybe then I'll understand.

     

     

    Link to comment
    Share on other sites

    • 0

     

    43 minutes ago, petergebruers said:

    It wil only "go sleeping" if the fan run time exceeds fanRunMinutes

    That's the period I am talking about, please reread my reply

     

    Edited by net
    Link to comment
    Share on other sites

    • 0
  • Inquirer
  • 3 minutes ago, net said:

     

    That's the period I am talking about, please reread my reply

     

    Nope, still do not understand. I have reread it 10 times... I am really sorry. I really want to understand.

     

    Dear forum members, does anyone else see or experience the issue? I do not see "a blind time". I am pretty certain the script will run if humidity hits the upper limit. And it will continue to run and turn on the fan until humidity is low again. You can change the ratio by changing fanSleepMinutes and fanRunMinutes but it is not necessary. Even with default values, the scene will continue to operate the fan. I do not think the script can be blind to a "high level"... @net says if the script is running, and someone takes a shower, under certain conditions, the fan will not start (again) and the script will end without turning on the fan. And thus it fails to do wait it claims to do: lower humidity in the bathroom. But I do not see how this could happen.

     

    Does anyone see under which conditions the scripts fails to detect a high level? Can anyone think of a scenario that would not turn on the fan, while humidity is still high?

     

     

    Link to comment
    Share on other sites

    • 0

     

    On 19-10-2017 at 4:58 PM, petergebruers said:

    This scene has not been tested by anyone else, so please run it, check it and share what think, so I can improve it!

     

    Your invitation is exactly what I am trying to do! Testing it in real situations and giving you and the forum the feedback.

     

    First I will describe the situation and then discuss the log so that you and  others can retest.

    Let's look at the parameters I used in the last analyses:

    • max 82%, min 77%  (default 80/70) 
      • For me above MAX is not exceptable and should be handled asap, e.g. a running FAN
      • Below LOW is the target, under certain conditions it cannot be reached within the fan run minutes time
    • delayminutes 0 (default 2)
    • fan run minutes 30  (default 120, now for faster testing)
    • fan sleep minutes 4*60
    • autostart 30seconds
    • Fan has no speedcontrol, it is either on or off.

    Ok, testing...

    This is the first log:

    Please login or register to see this image.

    /monthly_2017_11/pic-time-A.png.f7b8f8852dbe011127b07bce68352d1d.png" />

     

    Commented:

    at 23:16 the humidity is below MIN, no scene is running

    at 23:18 the humidity is above MAX, the scene is triggered and fan ON

    at 23:22 the humidity comes below MIN, the shuts the fan OFF and the scene ends

    OK, no problems so far.

    Let's look closely to what happens next.

    at 23:24 another shower raises the humidity above MAX and the scene is triggered again, fan ON

    23:27 the humidity rises well above MAX

    23:33  the humidity gets lower but is still above MAX

     

    Let's see in the next log what happens next.

    Please login or register to see this attachment.

    23:35  the humidity gets lower but is still above MAX

    23:35  the humidity gets lower but is still above MIN but below MAX

    23:41  AFTER THE FAN RUNMINUTES period the scene enters the FANSLEEPMINUTES period

    Please login or register to see this attachment.

    But back to the bathroom (see log above:)

    at 23:43 another person enters the bathroom and takes a shower, the humidity rises well above MAX, but the FAN stays off

    23:54,  00:50 The fan doesn't respond to manual interference to get the fan on (of cause a scene activation killing the running scene could be a work-around

    01:30 even 2 hours later the humidity is above MAX and even above 90%:

    The humidity stays high for the next hours, but as the FAN is OFF the humidity starts to spread to the adjacent room:

    Please login or register to see this attachment.

     

    So I have 3 suggestions to make the script even smarter:

    First suggestion:   if the humidity is higher then High Limit do not enter fanSleepMinutes loop, so humidity must be between MIN and MAX values and runTimeSec> fanRunMinutes  to enter the sleep loop

     

    Please login or register to see this code.

     

    Second suggestion

    During the FANSLEEP loop, any humidity ABOVE max should start the FAN.

    Of course that needs recoding the loop.

    A workaround is perhaps a second scene (not tested yet) checking if the next conditions is not met:  higher than HIGH Humidity, Scene activated and Fan off

    Please login or register to see this code.

    Third suggestion

    A MANUAL possibility to overrule the scene by putting the fan on for a specific time, after which the scene takes over again.

    A workaround is again a (second) scene activation in combination with a global variable.

     

    @petergebruers I hope that you realize that my feedback is to make the scene smarter.

    And I realize that you would like to stick to one humidity sensor (as indicated in your earlier post).

    The options for FANRUN and FANSLEEP are a very good approach for the scene to "wait for better conditions", if the lower limit is not reached.

    But in any case that even the higher limit is not reached the scene should (re)start the fan.

    Edited by net
    Link to comment
    Share on other sites

    • 0

    Hi to you all.

    I have struggled with this problem for few months... the major problem that you have fixed Min and Max limits. 

    In reality the humidity changes all the time, even during the day and I don't mentioning during the seasons. Based on my experience this is the REASON that FAN in many cases couldn't reach MIN limit  or doesn't starts properly.

    In order to create dynamic limits I have found that additional sensor is required. The sensor could be motion or light, in my case I'm using Aeon Lab humidity, motion and light sensor. Three sensors in one package, best solution and could be connected directly to power (w/o batteries).

    After adding these sensors  the scene runs excellent for last two years w/o FANSLEEP or any other timeouts.  The fan triggered immediately if the humidity increased by 2% and not only when humidity reaches MAX limit, so  it keeps humidity level very low at  bathroom constantly. I don't have steam/fog on my mirror and the walls  and ceiling are clean.

    Please consider to add sensors....

    Edited by cag014
    Link to comment
    Share on other sites

    Join the conversation

    You can post now and register later. If you have an account, sign in now to post with your account.

    Guest
    Answer this question...

    ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

    ×
    ×
    • Create New...