Feature request: Add minimum duration conditions for boolean capabilities

Feature request: Add minimum duration conditions for boolean capabilities

Homey already has When cards that can trigger when a boolean capability has remained inactive for a specific duration. However, these cards cannot be used effectively as a condition when another event triggers the Flow.

For example, I want to start my robot vacuum when it becomes available, but only if the room has been empty for at least one hour.

Suggested Flow:

  • When: The robot vacuum becomes available
  • And: The motion alarm in the room has been inactive for at least 1 hour
  • Then: Start the robot vacuum

The current duration-based When card only triggers at the relevant time interval. It does not allow a later Flow trigger to check whether the capability has already been inactive for at least that duration.

Please add an And card for boolean capabilities with conditions such as:

  • The motion alarm has been inactive for at least X seconds or minutes
  • The contact alarm has been inactive for at least X seconds or minutes
  • The presence alarm has been inactive for at least X seconds or minutes
  • The boolean capability has been active for at least X seconds or minutes

The condition should evaluate the time since the last state change when the Flow runs. This would make it possible to combine occupancy conditions with unrelated triggers, such as starting a robot vacuum, changing heating settings, or turning off lights.

An alternative solution would be to expose the elapsed time since the last boolean state change as a token or Logic value, preferably in seconds.

You can easily create this yourself:

In your advanced flow:

When motion alarm has been inactive for 1 hour Then set boolean variable No_Motion_for_1_hour to true.

When motion detected Then set No_Motion_for_1_hour to false

When Robot Vacuum available And variable No_Motion_for_1_hour is true Then start Robot Vacuum.

When motion alarm has been inactive for 1 hour And the robot vacuum is available Then start robot vacuum.

That is not entirely correct.

Because OP wants the robot vacuum to start when it becomes available and motion alarm has been inactive for at least 1 hour. So it should also start if it becomes availabe while the motion sensor has been inactive for, for example, 2 hours.