🔌 Detect and monitor the state of an appliance based on its power consumption - V2.1.1 - Updated!

Hey @finalbillybong! Thank you for showing interest in this blueprint. I’m sorry that you are facing some problems with the dishwasher. I’m finding that it is pretty difficult to debug this automation with the tools offered by HA, so, it could be that something is missing in the logic.

  • Would you mind sharing a screenshot of the power consumption of your washing machine during a cycle? (something like this would be great)

  • Could you also share the states of your state machine during that same period?

Thank you in advance :slight_smile:

Hi. Here are the screenshots you requested.

I have my starting threshold set to 10w and my finish set to 4w. (dishwasher draws 3w and idle but also dips to 3w during cycle) It looks like the state machine didn’t change during the cycle were as previously it was starting fine but ending too soon.


If you need any more info let me know.

Thanks again

Very interresting thank you @leofabri for your in depth work.

I found your post looking for a way to turn ON/OFF different big loads with prioritisation to stay within a maximum load limit before tripping the main. it still happen to me despite the Italian 150% max power rule for 90 mn.
I see it as “asking permission to turn ON” before actually doing it, based on a shelly EM to meter the house, and different Shelly 1PM - 4PM for the loads. introducing delay to queue the jobs (with notifications). but this subject could interrest many with limited power supply or solar installation…

heavy loads in my country side is artesian well pump (3hp-2.4Kw), pool pumps (1&2hp), boiler 3Kw, Owen, Kittle, toaster; Washing machine. I live within 3Kw supply (4.5Kw max for 90mn with obligation to return <3Kw after that).
your work on overload is particularly interresting to me for Pozzo and pumps. will dig in soon …

@Pensee - Hi! Absolutely! This should fit your use case. You may also want to check out HA_PowerControl to handle those big loads, turn them on/off automatically and avoid blackouts.
I live in Italy as well, and I have the same 3KW limit. My automation should keep you posted about what’s going on with your appliances.

I don’t have as many things to power. But why not, this could be the right solution to your problems!

Have fun and keep me updated on this :wink:

Hi @finalbillybong! Sorry for the late reply, I don’t have a lot of time these days. As you may have noticed, I released V2.1, please update and see if the situation improves. I spotted a bug with the timer, hopefully, this will fix it.

If the problem persists please feel free to ask.

Big news! Version 2.1.0 has been released!

Useful links:

Hey there. Sorry for my slow reply. Life and all that! I have updated to latest version and it seems to be much better. My wife is a huge fan of changing the programme on the dishwasher every cycle so I have not tested each one yet.

Oh I did notice that the link to GitHub on the blueprint is broken.

Thanks for your work on this. It’s an amazing blueprint.

Thank you for your appreciation!

Do you refer to this link here?
broken_link

It was fixed with this commit. I didn’t feel like forcing people to update to a newer version was the right thing to do just because of this minor detail, that’s why I pushed this small change to V2.1. If you want your blueprint to reflect this fix you should update it again :sweat_smile:

Yes that’s the one.

@leofabri This is great, I just followed your instructions and set it up for my washing machine (on a smart plug)!

I was wondering, is there any way to get a version that did not require the ON/OFF switch control itself? I have the Sense whole home power monitor that has identified lots of appliances, like my dishwasher and dryer, and can now report their individual power consumption but I do not have the ON/OFF control for them. This automation is way too complex for me to understand if its even possible to strip out that control, so I figured I’d just ask here.

Either way, great job, I’m excited to see how this works for my washing machine!

2 Likes

Great work on the blueprint! Love it already, only have to convince the girlfriend that I also get the notification when an appliance is ready ;).

Perhaps something for the documentation: I have added the helpers through the GUI (settings > Devices & Services > Helpers > Create Helper) to add Toggles, Timers and Dropdown for my dishwasher, washing machine and dryer.

I do experience (as some others) multiple alerts that the job is finished before it actually has. My washing machine actually drops to 0W on occassion triggering the job_complete. I will have a play with the Delayed Job Completion duration to see if that works.

Hey @dirtdagg! I didn’t design the automation to work without the ON/OFF switch control, and the current logic is using that piece of information here and there, so I would say it’s mandatory. I’ll review this request for the next version, but it’s required.
You could definitely bypass that entity by creating a helper switch that could simulate the socket control via software.

1 Like

Thanks, man :grinning:! I did consider including the creation of helpers through the GUI in the documentation, but that would take longer to explain. Copying and pasting my configuration seemed the more appropriate solution back then. I’ll definitely add that now that I see interest.

Please make sure that your timer’s duration is set to 15 minutes even when using the GUI. You can then define your custom delay through the automation’s config.


Yeah, I that behavior in your graph. There are a lot of dips! Exactly, try setting your Delayed Job Completion to maybe 1 minute or less. According to my tests, it should work. You may also have to play with the starting and finishing threshold a bit to get this right :wink:

Thanks for your reply! I think adding the GUI option also makes it easier for the ‘new generation’ of HA users who are not comfortable with editing configuration files. I don’t mind editing the configuration file, but I rather do it through a GUI because it feels more idiot-proof.

I’ve had a play around and changed the power plug that has been measuring the energy use to see if that would make a difference. I’ve changed it from a TuYa TS011F_plug_1 to a TuYa TS011F_plug_3. That actually made quite a difference. The plug_3 reports based on polling because it’s supposed to be broken. That apparantly smoothes out dropping to 0W…

Hi, very interested in using this, are there any plans to incorporate the state of a second appliance?

e.g; Don’t announce that the washer has finished, if the drier is still active

Then, when the drier has finished, announce both.

Thanks
Alan

Hi Alan! the blueprint was made with the goal of controlling each individual appliance, so sorry, but no, I have no plans for that. The blueprint itself is already very articulated but modular. Such an addition would be cool but perhaps “unnecessary” to most users.


You can still achieve what you want by combining the two automations together: one for the washer and one for the drier.

Instead of announcing that the job was completed straight away when an appliance is done, you could play with the customizable “Action(s) when a job cycle is finished” section of my blueprint, so that you check if the washer / the dryer is still performing a cycle, and then choose when to announce what, for both.

This could be a raw implementation of your request:

- “Action(s) when a job cycle is finished” on the dryer automation (YAML code).

Note: Change the entities accordingly as they might have a different name.

    actions_job_cycle_ends: # <- This is a custom action. After you've set up the blueprint (follow the documentation), you'll see the "Action(s) when a job cycle is finished" section. This is its corresponding yaml configuration
      - if:
          - condition: state
            entity_id: input_boolean.washing_machine_job_cycle # Your wahing machine job cycle indicator (coming from the other blueprint)
            state: 'off'
        then:
          # Do something. I'll send a notification. This is just an example
          - service: notify.mobile_app_<someone's_phone> # For example: send a notification to a phone
            data:
              title: Washing & Drying Job completed
              message: The job was completed on both the dryer and the washing machine
        else: []

- “Action(s) when a job cycle is finished” of the washing machine automation (YAML code).

Note: Change the entities accordingly as they might have a different name.

    actions_job_cycle_ends: # <- This is a custom action. After you've set up the blueprint (follow the documentation), you'll see the "Action(s) when a job cycle is finished" section. This is its corresponding yaml configuration
      - if:
          - condition: state
            entity_id: input_boolean.dryer_job_cycle # Your dryer job cycle indicator (coming from the other blueprint)
            state: 'off'
        then:
          # Do something. I'll send a notification. This is just an example. 
          # Note that this part is the same on both
          - service: notify.mobile_app_<someone's_phone> # For example: send a notification to a phone
            data:
              title: Washing & Drying Job completed
              message: The job was completed on both the dryer and the washing machine
        else: []

A few notes about this:

I made this example to show you how you could achieve that. It’s actually very straightforward and definitely possible. Please note that there are limitations. The biggest one in my opinion is that you may not have the washer running at all but the notification would mislead you into thinking the opposite. Also, the notification isn’t aware of the past.

Why to add the logic to both, you might ask. Well, what happens if the washer finishes before the dryer? The above conditions would have to be placed on both the automations so that the appliance that ends first is the one that sends the notification.

Please let me know if you need more help. Have a great day :wink:

FIXED → :bug::x: NEW BUG DISCOVERED - 07/15/2022 :x::bug:

Hello folks!! Hope you are all enjoying the blueprint.
Today I’m reporting a nasty bug in the configuration.
It only happens when you don’t indicate a Appliance Suspended entity (which I indicated as optional). When this condition is met, the automation becomes unresponsive and no longer indicates when the socket is unplugged.

A small and almost untraceable error is shown:
> Error: In ‘not’ (item 1 of 2): In ‘template’ condition: AttributeError: ‘list’ object has no attribute ‘lower’

This behavior is not wanted and will be fixed very soon in the next release.
If You are experiencing the problem, the only advice I can provide at the moment is to create a dummy input_number that will indicate a value of 0 and assign it to the Appliance Suspended entity* entry in the visual configuration of the blueprint.

1 Like

07/21/2022 - Version 2.1.1 has been released!

The code has been reorganized and some bugs got fixed :wink:

Follow the guide to update to the latest version.

1 Like

Some links were dead, I went through each one of them to make sure that they work.

Now, they seem to be doing their job! Nice :slightly_smiling_face:, sorry for the delay

Hey Leo,

I’m giving this a test run and I noticed that mine stays in ‘job_ongoing’ and never kicks over to complete.

any thoughts on what might be causing this? Here is an output of the trace.