Skip to content

Instantly share code, notes, and snippets.

  • Save dotWee/2eabe1b049e51e73361a516e41be1f2c to your computer and use it in GitHub Desktop.
Save dotWee/2eabe1b049e51e73361a516e41be1f2c to your computer and use it in GitHub Desktop.
Home Assistant Blueprint: Notify or do something when an appliance like a dishwasher or washing machine finishes
blueprint:
name: Appliance has finished
description: Do something when an appliance (like a washing machine or dishwasher has finished as detected by a power sensor.
domain: automation
input:
power_sensor:
name: Power Sensor
description: Power sensor entity (e.g. from a smart plug device).
selector:
entity:
domain: sensor
starting_threshold:
name: Starting power threshold
description: Power threshold above which we assume the appliance has started.
default: 5
selector:
number:
min: 1.0
max: 100.0
unit_of_measurement: W
mode: slider
step: 1.0
starting_hysteresis:
name: Starting hysteresis
description: Time duration the power measurement has to stay above the starting
power threshold.
default: 5
selector:
number:
min: 0.25
max: 60.0
unit_of_measurement: min
mode: slider
step: 0.25
finishing_threshold:
name: Finishing power threshold
description: Power threshold below which we assume the appliance has finished.
default: 5
selector:
number:
min: 1.0
max: 100.0
unit_of_measurement: W
mode: slider
step: 1.0
finishing_hysteresis:
name: Finishing hysteresis
description: Time duration the power measurement has to stay below the finishing power threshold.
default: 5
selector:
number:
min: 0.25
max: 60.0
unit_of_measurement: min
mode: slider
step: 0.25
off_threshold:
name: Machine Off threshold
description: Power threshold above which we assume the appliance is turned off.
default: 1
selector:
number:
min: 0.0
max: 5.0
unit_of_measurement: W
mode: slider
step: 0.1
off_hysteresis:
name: Machine Off hysteresis
description: Time duration the power measurement has to stay above the Machine Off threshold power threshold.
default: 1
selector:
number:
min: 0.25
max: 60.0
unit_of_measurement: min
mode: slider
step: 0.25
actions:
name: Actions
description: Actions (e.g. pushing a notification, TTS announcement, ...)
selector:
action: {}
pre_actions:
name: Actions
description: Actions when starting threshhold is crossed
selector:
action: {}
off_actions:
name: Actions
description: Actions when offlibe threshhold is crossed
selector:
action: {}
source_url: https://gist.github.com/dotWee/2eabe1b049e51e73361a516e41be1f2c
trigger:
- platform: numeric_state
entity_id: !input 'power_sensor'
for:
minutes: !input 'starting_hysteresis'
above: !input 'starting_threshold'
condition: []
action:
- choose: []
default: !input pre_actions
- wait_for_trigger:
- platform: numeric_state
entity_id: !input power_sensor
below: !input finishing_threshold
for:
minutes: !input finishing_hysteresis
- choose: []
default: !input actions
- wait_for_trigger:
- platform: numeric_state
entity_id: !input power_sensor
below: !input off_threshold
for:
minutes: !input off_hysteresis
- choose: []
default: !input off_actions
mode: single
max_exceeded: silent
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment