Washing machine power consumption trigger

input_select:

and fixed original post.

1 Like

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

1 Like

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
10 Likes

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.

4 Likes

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.

  1. A dropdown Helper with 3 options: Standby, Washing, Completed. Screenshot at the end.

  2. 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:
image

4 Likes