I am working on an automation that reminds me to take the laundry out of the dryer. The trigger is the dryer stopping and then I thought I could wait 15 min for motion in the laundry room and if there isn’t any send a notification. The notification is firing immediately and I think the problem is that there hasnt been motion in the room while the load is running. How can I trigger off no motion starting at the end of the load?
alias: Dryer Reminder automation
description: a separate notification if the dryer hasn't been emptied in 15 min.
trigger:
- type: turned_on
platform: device
device_id: ad70df2bcb8ca3f2b746a3a8c8a5d095
entity_id: 0587d184417c9d6a51745759c260db1d
domain: binary_sensor
for:
hours: 0
minutes: 0
seconds: 10
condition:
- condition: state
state: "off"
for:
hours: 0
minutes: 15
seconds: 0
entity_id: binary_sensor.laundry_room_motion_motion
action:
- data:
message: Don't forget to take the laundry out of the Dryer
action: notify.pottshomebot
- data:
cache: true
entity_id: media_player.living_room
message: Don't forget to take the laundry out of the dryer.
action: tts.cloud_say
mode: single
Conditions don’t wait. As shown above, your automation is triggered by the binary sensor turning on and staying that way for 10 seconds. Then it checks the motion sensor… if the sensor has been “on” at any time in the last 15 minutes the condition fails and the automation stops. If there hasn’t been any motion in the preceding 15 minutes the automation continues.
If you want to wait for something to happen you need to use one of the Wait actions. In your case you could also just change the value of the for
duration in your trigger.
That way would require the dryer to have been stopped for 15 minutes before the motion sensor is checked.
alias: Dryer Reminder automation
description: a separate notification if the dryer hasn't been emptied in 15 min.
trigger:
- alias: "Fire when the dryer has been stopped for 15 minutes"
type: turned_on
platform: device
device_id: ad70df2bcb8ca3f2b746a3a8c8a5d095
entity_id: 0587d184417c9d6a51745759c260db1d
domain: binary_sensor
for:
hours: 0
minutes: 15
seconds: 0
condition:
- alias: "Test if the area has been motionless for the last 15 minutes"
condition: state
state: "off"
for:
hours: 0
minutes: 15
seconds: 0
entity_id: binary_sensor.laundry_room_motion_motion
action:
- data:
message: Don't forget to take the laundry out of the Dryer
action: notify.pottshomebot
- data:
cache: true
entity_id: media_player.living_room
message: Don't forget to take the laundry out of the dryer.
action: tts.cloud_say
mode: single
First get rid of the device trigger.
Trigger - dryer turning off
Condition - motion sensor off
Actions
- wait template on motion detection turning on for 15 minutes
- if the wait.completed if false then send the notification.