input_select:
and fixed original post.
input_select:
and fixed original post.
Ah ok I thought so. So to clarify for any noobs:
Configuration.yaml:
input_select:
state_washingmachine:
name: Washing Machine state
options:
- Switched Off
- Powered Down
- Idle
- Rinse / Spin
- Wash
icon: mdi:tumble-dryer
The rest in automations.yaml
The power consumption issue on the washing machine totally depends on the power consumption the capacity of the machine as if the machine is heavily loaded, then it will consume more and if the machine is less loaded, then it will consume less. You can know much better from washing machine repair service as well.
Just want to add my version with only 2 states: Washing and Ready.
And based on the Watt power usage.
I used below 10W (for a duration of 2 min.) for Ready and above 100W (for 10 sec. as it normally starts with heating directly) for Washing, which I guess works for any normal washing machine.
Based on the info in this thread and the example in the input select page.
Configuration.yaml:
input_select:
state_washingmachine:
name: Washing Machine state
options:
- Ready
- Washing
icon: mdi:tumble-dryer
In automation.yaml or after automation: in configuration.yaml
- id: washingmachine_washing
alias: 'Washing Machine - washing state'
trigger:
- above: 100
entity_id: sensor.wasmachine_power
for: 00:00:10
platform: numeric_state
action:
- service: input_select.select_option
data:
entity_id: input_select.state_washingmachine
option: 'Washing'
- id: washingmachine_ready
alias: 'Washing Machine - ready state'
trigger:
- below: 10
entity_id: sensor.wasmachine_power
for: 00:02:00
platform: numeric_state
action:
- service: input_select.select_option
data:
entity_id: input_select.state_washingmachine
option: 'Ready'
I furthermore added the automation to blink the living room (woonkamer) and Diner table (keuken tafel) when done.
- id: washing_machine_ready
alias: Washing machine ready
trigger:
platform: state
entity_id: input_select.state_washingmachine
from: "Washing"
to: "Ready"
action:
- service: light.toggle
entity_id:
- light.woonkamer_plafond_lamp
- light.eettafel_lamp
- delay: 00:00:01
- service: light.toggle
entity_id:
- light.woonkamer_plafond_lamp
- light.eettafel_lamp
- delay: 00:00:01
- service: light.toggle
entity_id:
- light.woonkamer_plafond_lamp
- light.eettafel_lamp
- delay: 00:00:01
- service: light.toggle
entity_id:
- light.woonkamer_plafond_lamp
- light.eettafel_lamp
I switched consumption meters and am running into problems; my new meter occasionally has got some strange power spikes which causes my automation to trigger randomly. I solved this by applying a moving average filter to it. Not ideal as a moving median would be a better fit, but thats not possible yet in Esphome (feature request opened by someone else who faces the same issue https://github.com/esphome/feature-requests/issues/364)
@philhawthorne Has a very good post here about this topic: https://philhawthorne.com/making-dumb-dishwashers-and-washing-machines-smart-alerts-when-the-dishes-and-clothes-are-cleaned/
It works really well for me after a bit of tweaking to compensate for the way my appliances work.
Thank you for this. Using the recent Helpers, I did it with 1 Helper and 1 Automation (using Choose conditions). Putting it here for anyone that this can be useful to.
A dropdown Helper with 3 options: Standby, Washing, Completed. Screenshot at the end.
An automation that covers both state changes choosing a trigger, with an app notification too.
alias: Lavadora
description: ''
trigger:
- platform: numeric_state
entity_id: sensor.lavadora_power
for:
hours: 0
minutes: 0
seconds: 15
id: lavadora_washing
above: '40'
- platform: numeric_state
entity_id: sensor.lavadora_power
below: '20'
for:
hours: 0
minutes: 2
seconds: 0
id: lavadora_standby
condition: []
action:
- choose:
- conditions:
- condition: trigger
id: lavadora_washing
sequence:
- service: input_select.select_option
target:
entity_id: input_select.lavadora
data:
option: Lavando
- conditions:
- condition: trigger
id: lavadora_standby
sequence:
- service: input_select.select_option
target:
entity_id: input_select.lavadora
data:
option: Completada
- service: notify.mobile_app_iphone_de_antonio
data:
message: Lavadora finalizada. Vaciar
default: []
mode: single
I also set a Conditional Card as a warning and a Script to reset the state to Empty
The Helper:
And all this can of course be placed on the Dashboard: