šŸ“³ Appliance Notifications & Actions - Washing Machine - Clothes Dryer - Dish Washer - ETC

FAQ - How to Use the Built in Run Status to Display the Appliance Run Status

:dart: Visually display the appliance’s current run status (e.g., Washing, Error, or Finished + Still Waiting & Read) in your dashboard using a dropdown helper.

Each status input in the blueprint includes example values to get you started, but you can be as creative as you like… have some fun with it!

:warning: The statuses must match exactly (including case sensitivity) with the ones you defined in each input. If they don’t, the automation will stop running and an error will be logged.

Step 1: Create a Dropdown Helper

  1. In the sidebar, go to Settings → Devices & Services.

  2. Click the ā€œHelpersā€ tab at the top.

  3. Click ā€œ+ Create Helperā€ (bottom right).

  4. Select ā€œDropdownā€ from the list.

  5. Fill out the fields:

  • Name: e.g., Washing Machine Fun Status

  • Icon (optional): e.g., mdi:washing-machine or mdi:format-list-checks

  • Options:
    Add your dropdown options, e.g.:

    • Scrubbing Away!
    • Drama in the Drum!
    • All Done!
    • Wrinkle Risk Rising!
    • Next Load Please!
  • Click Create.

Step 2: Configure the Blueprint

  1. Enable the Run Status option and select the Dropdown Helper you created in Step 1.

  2. For each status input, enter the run statuses you created in your Dropdown Helper.

    :warning: The statuses must match exactly (including case sensitivity) with the ones you defined in each input. If they don’t, the automation will stop running and an error will be logged.

    • Start Status – The status displayed when the appliance starts.
    • Watchdog Status – The status displayed when the watchdog is triggered. If you are not using the watchdog, leave this input blank.
    • End Status – The status displayed when the appliance has finished. This can be the final Finished status when you are not using the Reminder Notification Options.
    • End Reminder Status – The status displayed when all reminders have been sent and the appliance has not been attended.
    • End – Attended Status – The status displayed when the Reminder Notification Entity detects the appliance has been attended to (e.g., door opened, lid lifted, etc.). This is the final Ready status of your appliance when you are using the Reminder Notification Options.

Step 3: Add the Dropdown to Your Dashboard

Now add your new dropdown helper to any dashboard card you like.

You can style it as simple or advanced as you want, even tie it into other visuals using Mushroom, Button Card, or Tile Card.

Enjoy

Blacky :smiley:

Back to FAQ: Click Here

1 Like

This is an awesome blueprint, thank you for your hard work.

I have a request:
Its possible to trigger the notification based on a change in state?
I have a samsung washer using smarthings integration, and the power entitie updates slow. The notification sends like 1-2 minutes after beggining.

@marko.lomas

You can, but the blueprint is really designed to work best with an energy sensor. A delay of 1-2 minutes isn’t significant in the grand scheme of things, and I recommend using it. This way, you won’t lose any of the extra features.

But if you must then you can trick it by using a template sensor. When the state is ON = 100W and when it is OFF = 0W. Then you can use this as your power sensor, set the Start - Appliance Power Setpoint to 90W with a Start - Power Time Delay of 0.1 just encase you turn it ON you can turn it OFF again and it wont run. Then set your End - Appliance Power Setpoint to 10W.

  1. Go to Settings > Devices & Services > Helpers.
  2. Click ā€œ+ Create Helperā€ and choose Template > Template a sensor.
  3. Set a Name for your new sensor.
  4. In the State template field, paste the code below.
    Replace input_boolean.your_entity_id_here with the actual entity ID you would like to use. Replace the whole entity ID.
  5. Set the device class to Energy.
{% if is_state('input_boolean.your_entity_id_here', 'on') %}
  100
{% else %}
  0
{% endif %}

Blacky :grinning:

Hey,

Thanks for the quick replies. I figured out that my dishwasher and washer sensors were plugged in wrong. I have that part sorted now… so the pictures above are all out of whack. So basically we are starting over. I will provide the most current error image, the yaml as well and then the graph for the time the automation happened.

I am not sure how this will format but… I uploaded two screenshots from the trace (see time stamp at top) the first one got to the end and then error at sending the notification for end. The second load got all the way through but i never received a notification for it to end. Also not sure why the process ended early. The graph shows both laundry loads and their power draw.



Yaml as requested

alias: Washer Notification
description: Notify when washer is turned on, and off with consumption
use_blueprint:
  path: Blackshome/appliance-notifications.yaml
  input:
    power_sensor: sensor.washer_power_minute_average
    start_appliance_power: 50
    running_dead_zone: 3
    include_start_notify: enable_start_notify_options
    start_notify_device:
      - 7f7f8236f7086f27dafba109a9220e43
    include_end_notify: enable_end_notify_options
    include_power_tracking: enable_power_tracking
    power_consumption_sensor: sensor.dishwasher_energy_today
    end_notify_device:
      - 7f7f8236f7086f27dafba109a9220e43
    end_notify_icon: mdi:washing-machine-off
    end_notify_data:
      - icon
    start_notify_data:
      - icon

@henson_kraj

Your so close. The reason why you are not receiving a notification at the end is because in Energy Tracking you have enabled Enable - End Notify with Energy Used (kWh) but you haven’t selected your 3 input helpers. This FAQ shows you how to create the helpers click here. Once you created the helpers and selected them in the blueprint inputs it should work.

Blacky :grinning:

New Update 3.7

:thinking: Watts your appliance up to, you’re always in the know from start to finish! :bellhop_bell: :electric_plug: :money_with_wings:

:new: New Features

  • Run Status - Added an option to display your appliance’s run status on your dashboard.

If you like this blueprint? Consider hitting the :heart: button in the top post :+1:

If you like my blueprints, and would like to show your support or just say thank you? Click Here :smiling_face_with_three_hearts:

Enjoy

Blacky :grinning:

1 Like

thanks for the help above… i will look into and respond. Do i need to update blueprints or are they automatic?

@henson_kraj

You need to manually update them. Just click on the import blueprint button again found in the first post of the thread. Click here to go to the top.

Blacky :grinning:

Or go to HA → Settings- Automations → Blueprints
right click on the 3 dots right to the automation and choose ā€œReimport Blueprintā€
Slightly more clicks but also a possibility :slight_smile:

Ronny

1 Like

Really great! You made my custom actions obsolete with this new feature!
I really appreciate all your support you are offering here. Hope you have received my donation.

@Bastian007

Thanks!! Your welcome and I hope it helps you.

Yes I did receive your donation!.. Thank you for your support… it really helps me! :pray: :sparkling_heart:

Blacky :grinning:

@Blacky I have been having an issue where one of my automations from this blueprint (for the dryer) seems to hang sometimes and thus prevents new instances from running. I’ve been trying to figure out why for a bit. I’ve enabled the watchdog function, but I’ve noticed I don’t get a notification from that either and the automation still hangs from time to time. In an effort to debug, I clicked ā€œtake controlā€ on the blueprint just so I could see the fully generated yaml. I noticed this in the watchdog section. It seems this is intended to exit the automation and perform the watchdog notifications. Is this valid? Or an error in the blueprint? or did this come from the ā€œtake controlā€ process or something else? I did not complete the ā€œtake controlā€ process, so the blueprint still exists as it did for now. Grasping for straws at this point so just wanted to ask.

                  - choose:
                      - alias: Perform the custom watchdoog action
                        conditions:
                          - condition: template
                            value_template: >-
                              {{ 'enable_watchdog_custom_actions' in
                              include_custom_actions }}
                        sequence: []
                  - stop: Stop the automation

@sdholden28

This is because you taken control and broken the blueprint.

I really not a fan of that feature. Your best to keep the blueprint intact and ask for help here. If you provide your YAML of your automation with what is happening that is a good starting point. This YAML code are the settings you have selected in the automation so I can help. To do this go into your automation, top right 3 dots, Edit in YAML, copy all the code, come back to the forum and in your reply at the top tool bar click on ā€œ</>ā€ and paste code in there.

Blacky :grinning:

Thank you. Here is the blueprint as it stands right now.

alias: Notify - Dryer Cycle Complete
description: ""
use_blueprint:
  path: Blackshome/appliance-notifications.yaml
  input:
    power_sensor: sensor.dryer_power_monitor_channel_1_power
    running_dead_zone: 20
    start_title: Dryer
    include_end_notify: enable_end_notify_options
    end_notify_device:
      - 37e49ccf65f1e88a023904de97ff6153
      - 3d5a14c1e9f5cde0a732d7fb22ef71d4
    end_message_title: Dryer
    end_message: The Dryer has finished a cycle
    end_notify_data:
      - high_priority
      - sticky
      - icon
    end_reminder_notification: enable_reminder_notification_clear
    end_reminder_notification_message: Hey! The dryer has finished. Time to empty!
    include_duration_tracking: enable_duration_tracking
    include_cycle_counter: enable_cycle_counter_and_notify
    cycle_counter_helper: counter.dryer_cycle_count
    include_custom_actions:
      - enable_start_custom_actions
      - enable_end_custom_actions
    start_custom_actions:
      - action: input_boolean.turn_on
        metadata: {}
        data: {}
        target:
          entity_id: input_boolean.dryer_cycle_active
      - action: input_datetime.set_datetime
        metadata: {}
        data:
          datetime: "{{ now().strftime('%Y-%m-%d %H:%M:%S') }}"
        target:
          entity_id: input_datetime.dryer_start_time
    end_custom_actions:
      - action: input_boolean.turn_off
        metadata: {}
        data: {}
        target:
          entity_id: input_boolean.dryer_cycle_active
      - action: input_datetime.set_datetime
        metadata: {}
        data:
          datetime: "{{ now().strftime('%Y-%m-%d %H:%M:%S') }}"
        target:
          entity_id: input_datetime.dryer_last_cycle_completed
    after_time: "06:00:00"
    before_time: "22:00:00"
    end_reminder_notification_entity: binary_sensor.dryer_door_sensor_window_door_is_open
    end_reminder_notification_time_delay: 15
    end_reminder_notification_max_count: 1
    end_notify_tag: drying-clothes
    end_notify_icon: mdi:tumble-dryer-alert
    include_time: time_enabled
    include_watchdog: enable_watchdog
    watchdog_timeframe:
      hours: 2
      minutes: 0
      seconds: 0
    watchdog_notify_device:
      - 3d5a14c1e9f5cde0a732d7fb22ef71d4
    watchdog_notify_data:
      - high_priority
      - icon
      - sticky
    include_device_tracker:
      - zone_end
      - zone_watchdog
    notify_zone: zone.home
    start_appliance_power: 30
    end_appliance_power: 10
    end_repeat_count: 1

@sdholden28

Thanks for your YAML.

Lets go through a few things.

  1. In you power settings you have a running dead zone of 20 min. If you dryer completes before then you wont be notified because the End - Appliance Power Setpoint has to go from above 10 watts to below 10 watts after 20 min. Lets try and remove the running dead zone for now.
  2. End notify looks good!
  3. Time restrictions, you only be notified between 6am to 10pm. All looks good.
  4. Duration Tracking, looks good.
  5. Cycle Counter, looks good.
  6. Watchdog, looks good. I added the same notification tag and updated the message for a clothes dryer. You can remove the tag if you like…
  7. Device Tracker. looks good must be at home (in HA to get it). I am going to disable this for now just to test it then once it is working just enable it again.
  8. Start Notify, is disabled… lets enable it to start with for testing so you know it starts then just disable it once it is working.
  9. Custom actions look ok.

Try this YAML, copy and paste it in.

alias: Notify - Dryer Cycle Complete
description: ""
use_blueprint:
  path: Blackshome/appliance-notifications.yaml
  input:
    power_sensor: sensor.dryer_power_monitor_channel_1_power
    running_dead_zone: 0
    start_title: Dryer
    include_end_notify: enable_end_notify_options
    end_notify_device:
      - 37e49ccf65f1e88a023904de97ff6153
      - 3d5a14c1e9f5cde0a732d7fb22ef71d4
    end_message_title: Dryer
    end_message: The Dryer has finished a cycle
    end_notify_data:
      - high_priority
      - sticky
      - icon
    end_reminder_notification: enable_reminder_notification_clear
    end_reminder_notification_message: Hey! The dryer has finished. Time to empty!
    include_duration_tracking: enable_duration_tracking
    include_cycle_counter: enable_cycle_counter_and_notify
    cycle_counter_helper: counter.dryer_cycle_count
    include_custom_actions:
      - enable_start_custom_actions
      - enable_end_custom_actions
    start_custom_actions:
      - action: input_boolean.turn_on
        metadata: {}
        data: {}
        target:
          entity_id: input_boolean.dryer_cycle_active
      - action: input_datetime.set_datetime
        metadata: {}
        data:
          datetime: "{{ now().strftime('%Y-%m-%d %H:%M:%S') }}"
        target:
          entity_id: input_datetime.dryer_start_time
    end_custom_actions:
      - action: input_boolean.turn_off
        metadata: {}
        data: {}
        target:
          entity_id: input_boolean.dryer_cycle_active
      - action: input_datetime.set_datetime
        metadata: {}
        data:
          datetime: "{{ now().strftime('%Y-%m-%d %H:%M:%S') }}"
        target:
          entity_id: input_datetime.dryer_last_cycle_completed
    after_time: "06:00:00"
    before_time: "22:00:00"
    end_reminder_notification_entity: binary_sensor.dryer_door_sensor_window_door_is_open
    end_reminder_notification_time_delay: 15
    end_reminder_notification_max_count: 1
    end_notify_tag: drying-clothes
    end_notify_icon: mdi:tumble-dryer-alert
    include_time: time_enabled
    include_watchdog: enable_watchdog
    watchdog_timeframe:
      hours: 2
      minutes: 0
      seconds: 0
    watchdog_notify_device:
      - 3d5a14c1e9f5cde0a732d7fb22ef71d4
    watchdog_notify_data:
      - high_priority
      - icon
      - sticky
    include_device_tracker: []
    notify_zone: zone.home
    start_appliance_power: 30
    end_appliance_power: 10
    end_repeat_count: 1
    watchdog_notify_tag: drying-clothes
    start_notify_tag: drying-clothes
    include_start_notify: enable_start_notify_options
    start_notify_device:
      - 3d5a14c1e9f5cde0a732d7fb22ef71d4
    start_notify_data:
      - sticky
      - icon
    start_message: YES! It's Dry Time
    watchdog_message: Uh-oh! Time to check the clothes dryer.

Blacky :grinning:

Hi, I am struggling to detect the end of my clothes dryer. The problem is, that its not an fixed cycles as it detects if the clothes are still wet. And then there also this anti-crease feature at the end of the cycle which turns the clothes every few minutes. At the picture you can see two cycles which are looking completely different. So the start is detected reliable.


At the end of the 2nd cycle you can see this anti-crease feature. Any hints how to solve this?

@smoki3

We need to look at the lowest reading in detail.

  1. What is the lowest reading at point A and for how long. Does point A happen every time?

  2. What is the lowest reading at point B and for how long.

  3. What is the lowest reading at point C.

Once I know that I can help.

Blacky :grinning:

alias: Solceller (appliance)
description: ""
use_blueprint:
  path: Blackshome/appliance-notifications.yaml
  input:
    power_sensor: sensor.solceller_pa_fake
    start_appliance_power: 90
    end_appliance_power: 10
    running_dead_zone: 0
    include_power_tracking: enable_power_tracking
    power_consumption_sensor: sensor.syltenas_total_energi
    end_message_kwh: "Fƶrbrukning "
    start_power_consumption: input_number.solceller_appliance_start
    end_power_consumption: input_number.solceller_appliance_end
    include_custom_actions:
      - enable_start_custom_actions
      - enable_end_custom_actions
    start_custom_actions:
      - action: input_boolean.turn_on
        metadata: {}
        data: {}
        target:
          entity_id:
            - input_boolean.solceller_appliance_kor
      - variables:
          msg: Solceller PĆ…ā—ļøšŸ˜Ž
      - action: notify.mobile_app_miz_iphone13
        data:
          message: "HAšŸ‡øšŸ‡ŖšŸŒ³: {{ msg }}"
      - action: rest_command.send_whatsapp
        data:
          message: "{{ msg }}"
      - action: notify.email_notify
        data:
          title: "HAšŸ‡øšŸ‡ŖšŸŒ³: {{ msg }}"
          message: "{{ msg }}"
    end_custom_actions:
      - action: input_boolean.turn_off
        metadata: {}
        data: {}
        target:
          entity_id:
            - input_boolean.solceller_appliance_kor
      - variables:
          msg: Solceller AVā—ļøšŸ˜Ž
          con: >
            {% set kwh = states(end_power_consumption) | float -
            states(start_power_consumption) | float %} 
            {{'\n'}}{{end_message_kwh}} {{kwh | round(2) }} kWh {% if
            include_duration_tracking == "enable_duration_tracking" %}   {% set
            end_time = now().timestamp() %} {% set duration = (end_time -
            start_time) | int %}  {% set hours = (duration // 3600) | int %}  {%
            set minutes = ((duration % 3600) // 60) | int %} {% set seconds =
            (duration % 60) | int %}  {{'\r'}}Tid {{ '%02d' | format(hours)}}:{{
            '%02d' | format(minutes) }}:{{ '%02d' | format(seconds) }}   {%
            endif %}
      - action: notify.mobile_app_miz_iphone13
        data:
          message: |-
            HAšŸ‡øšŸ‡ŖšŸŒ³: {{ msg }}
            {{ con }}
      - action: rest_command.send_whatsapp
        data:
          message: |-
            {{ msg }}%0a{{ con|replace('
            ', '%0a') }}
      - action: notify.email_notify
        data:
          title: "HAšŸ‡øšŸ‡ŖšŸŒ³: {{ msg }}"
          message: |-
            {{ msg }}
            {{ con }}
    start_time_delay: 0
    end_time_delay: 0

Hi @Blacky ! I try pasting again, hope it goes well and help you.

The fake value works:

But the blueprint doesn’t get trigged byt it, below output from the logbook

Ideas?

@michael.miz.ziegler

We finally go there. Your YAML looks good… most of it is custom actions.

Your Power Sensor is wrong unless this is a custom template to then run some actions every day… this seams odd. You can do this with my :round_pushpin: State Notifications & Actions blueprint. This blueprint is really designed to look a an actual power sensor that fluctuates as it goes through a cycle.

Have you selected the correct power sensor?

Blacky :grinning: