I am struggeling to detect the dishwasher being done, looking at the power consumption.
Here are three examples of dishwashing:
The washing cycle could potentially be split down into segments of:
- rinsing/pre-wash
- heating water
- washing
- heating to dry
- drying/waiting
However there are multiple points especially at the very end, where power consumption drops to zero.
How can I reliably detect, when the fully cycle has been completed?
Current Automations
##########################################################
## Dishwasher powered off
##########################################################
- alias: Dishwasher - powered off
id: 'dishwasher_powered_off'
trigger:
#When power plug is turned off
- platform: state
entity_id: switch.dishwasher
to: 'off'
action:
- service: input_select.select_option
data:
entity_id: input_select.dishwasher_status_dropdown
option: 'Off'
##########################################################
## Dishwasher idle
##########################################################
- alias: Dishwasher - Idle
id: 'dishwasher_idle'
trigger:
#Initial state, when power plug is turned on
- platform: state
entity_id: switch.dishwasher
to: 'on'
#Return to idle, after x minutes of being done
- platform: state
entity_id: input_select.dishwasher_status_dropdown
to: 'Done'
for: '00:15:00'
## TBD: No door/window sensor installed to detect
## dishwasher being opend after dishwashing process has finished.
action:
- service: input_select.select_option
data:
entity_id: input_select.dishwasher_status_dropdown
option: 'Idle'
##########################################################
## Dishwasher process started
##########################################################
- alias: Dishwasher - process started
id: 'dishwasher_process_started'
trigger:
#Power consumption threshold to sense dishwasher is running
- platform: numeric_state
entity_id: sensor.dishwasher_power
above: 5.0 #W
action:
- service: input_select.select_option
data:
entity_id: input_select.dishwasher_status_dropdown
option: 'Running'
##########################################################
## Dishwasher process finished
##########################################################
- alias: Dishwasher - process finished
id: 'dishwasher_process_finished'
trigger:
#Power consumption threshold to sense dishwasher is done
- platform: state
entity_id: sensor.dishwasher_power
to: 0.0 #W
for: '00:01:00'
## TBD - Done detection currently flawed!!
condition:
- condition: state
entity_id: input_select.dishwasher_status_dropdown
state: 'Running'
action:
- service: input_select.select_option
data:
entity_id: dishwasher_status_dropdown
option: 'Done'