I have a flow for when the humidity increases by 8% the fan turn on . It works perfectly. But randomly the sensors (xiaomi aqara) lose communication with homey, and report 0% humidity, and when they regain communication my flow is activated.
Any ideas how I can prevent it from activating after reporting that 0% humidity?
Dont think that will work, the humidity has just changed (thats what triggered the flow) so it will not be 0 anymore…
But you probably stored the previous value too (you need it to calculate if it increased) so use that tag in the AND
Can I ask what kind of environment you are measuring?
I guess its a steamroom?
At least humidity >50 is pretty high for a normal room, especially in winter.
And increasing humidity with 8, within two measuring points, that a huge step.
Try this:
1
when sensor humidity change
Then set number variable humidity(i use better logic) But add a delay of 1sec
For the second flow use the humidity not the variable
2
When sensor humidity increased min by 8
And variable humidity is greater than 50
Then turn on fan
These two flows will run at the same time
When value is 0 only flow1 will run the THEN
When the humidity is measured again the second flow will not run vpbecause the variable is still 0 (and will change 1 second later)
If your humidity sensor has larger interval for measuring you can increase the delay
This should do it in one flow, it is a modified version of mine. Beware that “Luchtvochtigheid” is used of two sensors, but you really can’t tell which is which in the flow. (Actually, one is the local variable, the other is the sensor in the other room). You have to guess which is which https://homey.app/f/OI2Cns
1 I think that the delay of 1 second may not work, I don’t know how long it fails when it reports 0.
2 I don’t have that card in the when section, only “the humidity has changed”, that is why I use the variable.
I have the aqara’s linked directly to homey, I do not own the aqara bridge.
The flow I provided should not trigger when the connection fails, because it ignores any case when a humidity value is 0. So if the bathroom reports 0, the flow stops in the and. If the bathroom humidity changes when the other room is 0, the flow stops in the and.
The same should apply if you copy the humidity to a variable - just don’t do that when it is 0, humidity is never 0. It will only do it’s work when both values are correct.
There is a small problem in the case that the other room would come back from 0% humidity to a value that is more than 8% below the bathroom’s humidity. Because as long as the bathroom humidity does’t change, nothing happens. In that (probably rare) case you should consider a similar flow that checks if you need ventilation when the other room’s humidity changes.
The delay is added to prevent that the variable is updated, before it is used by the second flow.
The 2 flows will run at the same time. But you want to prevent that the second flow is using the variable and that variable is just updated a ms before…