Homey Community Forum

Manage humidity in bathroom based on calculated average humidity


How to manage your humidity in the bathroom

This flow is created to measure the changes of humidity and manage the speed of the balance ventilation in the bathroom to achieve a normal humidity after using the bathroom.

In my case i added a device (power plug) on the balance ventilation to switch to high speed (so i overruled the remote, when needed).

First step is to create two number variables.

Note! - Make sure you add a value to the variable. It needs to multiply in the formula and and when you don’t add a value it stays 0 (e.g. 10 x 0 = 0) and the flow won’t work.

1. Average RV
2. Limit RV

Average RV is calculating after every change the RV and deviates it by a formula to realise the average RV

Limit RF is the Average RV with a self set percentage when RV is in acceptable value

First flow - HUM001 this is the flow which calculates the Average RV

The IF card contains the change at the sensor in your bathroom (in my case i used the Aqara Temp sensor)

The THEN card executes the formula to set the Average RV percentage
Note! in the formula i use round to get a number without decimals, be aware that round is spelled correctly and typed in lowercase like the example!

Second flow - HUM002 this flow sets your desired max when ventilation can stop

The IF card is trigged when te variable Average RV changes

The THEN card calculates the Limit RV

Third flow - Starting ventilation on high speed. (In my case, i used the Aqara Human Body sensor in the shower part of the bathroom)

The IF card is triggered when motion is detected

The THEN card starts several things

  1. Starts the fourth flow to turn that on
  2. Starts the ventilation on high speed
  3. Starting the mirror heating
    4 and 5 Heater (in my case i have air heating and when showering i set the blower to max to get extra air in the bathroom)
  4. Starting a timer ( i like to ventilate at least 500 seconds)
  5. Make a notification

Fourth flow - Stopping the ventilation

The IF card triggers a timer to check every two minutes (whatever you prefer)

The AND card checks if the timer is zero and if the Limit RV is less then the real RV

The THEN card stops ventilation and this (the fourth) flow


Am i missing something? When i make both numeric (better logic) variables, they do not change , when humidity goes up… (they stay 0 )


Try to set them the first time on a value, e.g. 80


Considered this option:


The virtual thermostat works perfectly, I don’t have experience with the virtual hygrostat.


Maybe a solution, but humidity is never a fixed number, it’s depending on weather and heating conditions. So it’s hard to set a value as a fixed value to reach.


Another possibility is to compare the humidity in the bathroom to other temperature/humidity sensors indoors. With the group app it’s easy to calculate an average of them all, and than make a (better) logic when the value is greater than the average/or use the vthermo/humidity app as a thermostat with the average humidity tag as “fixed” value.


Every possibility to achieve te goal is okay


After reading reading the comments I decided to calculate the “delta” between the average humidity in three bedrooms and the humidity in the bathroom. If that delta exceeds 10% the ventilation (standard on “1”) is set to 2, if it exceeds 20% the ventilation is set to 3 (max).


I used a Fibaro FGS-222 and two 230v two-way relais to set the ventilation (WTW-unit)


I am intrigued by your solution, would that also work for a (dutch) mechanische ventilatie / mechanical ventilation?, and if so, would you care to share your schematics?

Our mechanical ventilation is an Itho unit, previously managed by a three-way switch, connected by a Perilex, currently handled by radio remotes, which is nice, but still requires human on/off. I am looking for a way to make this also smart.