Here is a picture of my power usage for three laundry cycles:
I’d like to be able to detect the final spike, which is the spin cycle, to determine when it is done.
Today I have:
id: '1669991006668'
alias: Laundry
description: ''
trigger:
- type: power
platform: device
device_id: 4c36f3551e2f91dab7abc8e6becfa53e
entity_id: sensor.laundry_electric_consumption_w
domain: sensor
below: 200
for:
hours: 0
minutes: 0
seconds: 30
condition: []
action:
- service: notify.david_text
data:
message: Laundry Done
mode: single
So I look for 200W then it has to be below 200 watts for 30s. I think that means it has to cross 200w, then when it falls back below 200, the counter starts?
It has been working, but what happens with the small spikes? Is it possible to say it has to be above 200 for 30s, then when it goes below 200, trigger?
thanks
BebeMischa
(Bebe Mischa)
December 2, 2022, 8:32pm
2
I think, you can better concentrate on the marked moment in this pic.
It look always similar and takes more than 30 seconds.
So maybe just look for below like 10W for like 2 minutes. For my machine below 5 for 45 second was the sweetspot…
moerpel
(moerpel)
December 2, 2022, 8:38pm
3
This is exactly how I built this. It waits until the machine is longer than 3 min below 11W.
Works well.
I have my automation setup to be similar. However, I’m having issues where the automation gets triggered randomly when the washer is not in use.
I had this issue when I had this running on Hubitat. I’m just moving over, this is my last thing to do.
This is my concern as well.
That did catch the end of the last laundry cycle (yes my wife has been busy today).
We’ll see if it also catches false positives.
thanks for the suggestions
GSzabados
(Gábor Szabados)
December 2, 2022, 11:00pm
7
I do this for my dishwasher:
alias: Dishwasher Notification
description: ""
trigger:
- platform: numeric_state
entity_id: sensor.dishwasher_power
above: 17
id: dishwasher_start
condition: []
action:
- choose:
- conditions:
- condition: trigger
id: dishwasher_start
sequence:
- wait_for_trigger:
- platform: numeric_state
entity_id: sensor.dishwasher_power
for:
hours: 0
minutes: 10
seconds: 0
below: 1
timeout:
hours: 4
minutes: 0
seconds: 0
milliseconds: 0
continue_on_timeout: false
- service: notify.mobile_app_mobile_phone
data:
message: >-
The Dishwasher finished at
{{(as_timestamp(states.sensor.dishwasher_power.last_changed) |
timestamp_custom('%H:%M '))}}
title: Dishwasher Program Completed
- service: notify.persistent_notification
data:
title: Dishwasher Program Completed
message: >-
The Dishwasher finished at
{{(as_timestamp(states.sensor.dishwasher_power.last_changed)
| timestamp_custom('%H:%M '))}}
default: []
mode: single
It triggers when the dishwasher starts, and waits for the moment when at the end the dishwasher goes below limit for 10 minutes. There is a timeout as well.
My dishwasher has periods where the power usage looks similar to the end, but sorted so had to do it for a 10 minutes period at the end. The start trigger makes is bulletproof, as it will not register anything else, just if started. The mode single makes it sure that the automation not triggers again if already started.
1 Like