Notify when the washing machine is done

Since I’ve gotten into home automation I’ve been trying to think of ways to make my life easier.

One thing that bothered me was not knowing when the washing machine was complete. We have a high efficiency washing machine which means the time it takes is somewhat dynamic based on the clothes in the machine. There is an audible tune but I’m not always listening for it or hear it. I set out to integrate it into my home automation system so I would know when the washing machine was complete.

In order to automate, I would need to:

  • Determine when the machine is finished
  • Setup a notification integration to alert me when it’s done
  • Write an automation to notify me

Determine when the machine is finished

I purchased the TP-Link HS110 plugin electrical energy monitor and switch. It connects to my WiFi and I can read the current electrical usage remotely. In my home automation system Home-assistant.io there is already a component that integrates with it. I simply needed to connect it to my WiFi and configure the plug.

Home-assistant.io configuration:

switch:
- platform: tplink
host: 192.168.1.3
name: "Washing Machine"
sensor:
- platform: template
sensors:
washing_machine_current
:
friendly_name: 'Washing Machine Current'
value_template
: '{{ states.switch.washing_machine.attributes["Current consumption"].split(" ")[0] }}'
unit_of_measurement
: 'W'

After it is configured you can see its current consumption and historical consumption. I now have a way of determining when the washing machine is running.

Setup a notification integration to alert me when it’s done

I wanted to have a low cost way of sending push notifications to my phone with whatever data I wanted. There are a number of integrations with the home-assistant.io platform, but I found the Pushover integration to be the most reliable, and it only a one time purchase of $5 USD.

A sample configuration for Pushover for home-assistant.io

notify:
- name: PUSHOVER
platform: pushover
api_key: ABCDEFGHJKLMNOPQRSTUVXYZ
user_key: ABCDEFGHJKLMNOPQRSTUVXYZ

Write an automation to notify me

In order to notify me when the washing machine is completed, I needed to monitor for when the current usage drops below a certain threshold. In this case, I just watch for when the washing_machine_current goes below 1W. When that happens, I use pushover to send a push notification to my phone.

Home-assistant.io configuration:

automation:
- alias: "Notify when washing machine complete"
trigger
:
platform: numeric_state
entity_id: sensor.washing_machine_current
below: 1.0

action:
service: notify.pushover
data_template:
title: "Washing machine complete"
message
: "The washing machine has finished. You should remove the clothes."

The resulting notification:

Push notification

This has so far been my favourite simple home automation integration. It is simple, and also has the added benefit of telling me how long the laundry has been sitting in the washing machine as the notification time continues to update.