Integrar cualquier lavadora en Home Assistant

En esta guía vas a aprender a integrar cualquier lavadora en Home Assistant, así como el lavavajillas, secadora o electrodoméstico similar.

Aunque en esta guía me refiera a la lavadora, en realidad el procedimiento es el mismo para cualquier aparato que tengas que funcione de manera similar, haciendo pequeñas adaptaciones para que todo sea coherente.

De esta integración puedes esperar lo siguiente:

  • Monitorización del estado (apagada / lavando / finalizado)
  • Recordatorio de acciones requeridas (tender la ropa, recoger los platos…)
  • Añadir detergente a la lista de la compra automáticamente (cuando sea necesario).

Monitorización del estado

El primer paso para integrar cualquier lavadora en Home Assistant es saber si está apagada o funcionando. Esto es realmente sencillo y lo único que necesitamos es interponer un enchufe inteligente con monitorización de consumo.

Aunque muchos enchufes baratos tienen esta función, por motivos de seguridad te recomiendo que utilices enchufes de calidad para electrodomésticos potentes. De esta forma tendrás una mayor protección, no sólo para que estos no se estropeen, sino para que no se produzca alguna situación (como un cortocircuito) que ponga en peligro tu integridad o la de tu familia. En mi caso voy a utilizar el Shelly Plus Plug S que tengo integrado en Home Assistant.

shelly plus plug s
*Algún precio puede haber cambiado desde la última revisión

Hecho esto, si buscas entre las entidades de tu enchufe con monitorización de consumo, encontrarás una que te indica la potencia (en mi caso ‘sensor.lavadora_switch_power’). Lo que vamos a hacer es crear un ayudante que registre los distintos estados de la lavadora, y lo vamos a modificar en función de la potencia registrada en el enchufe.

Para ello sigue estos pasos:

  1. Ve a Ajustes > Dispositivos y servicios > Ayudantes > Crear ayudante > Desplegable.
  2. Indica un nombre y un icono adecuado y añade estas opciones: “Apagada”, “Lavando” y “Finalizado” (o los términos que mejor se ajusten a tu electrodoméstico). Pulsa en “Crear”. Esto creará la entidad ‘input_select.lavadora’.
  3. Ahora vamos a crear una automatización con distintos ‘trigger id’ que altere estos estados, en función de la potencia del enchufe.
  4. El primer ‘trigger’ o desencadenante va a cambiar el estado de la lavadora de “Apagada” a “Lavando” cuando el enchufe detecte que está requiriendo potencia. Para ello introduce lo siguiente:
    • Disparador. Selecciona el tipo “Estado numérico” y busca la entidad de tu enchufe inteligente que indica la potencia (en mi caso ‘sensor.lavadora_switch_power’). En el apartado “Por encima de”, indica número fijo e introduce un valor (por ejemplo, ‘5’), y en el campo durante indica, por ejemplo, 2 minutos. ¿Por qué hacemos esto? Hay electrodomésticos que en estado de ‘stand-by’ consumen algo de potencia, por lo que no podemos simplemente ajustarlo a que se dispare cuando supere los 0 watios, ya que podría generar falsos positivos. Sin embargo, si que puedes ajustar estos valores revisando el histórico del sensor para ver cuánto consume realmente.
    • Acción. Añade como acción una del tipo “Llamar servicio” y busca el servicio ‘input_select.select_option’. Luego indica como entidad el ayudante que has creado (‘input_select.lavadora’) y como opción “Lavando” (o la que hayas definido, mientras coincida con el valor definido en el ayudante).
  5. El segundo ‘trigger’ va a hacer lo contrario, cambiando el estado de “Lavando” a “Finalizado” cuando el enchufe no detecte demanda de energía. Hazlo de esta manera:
    • Disparador. Selecciona el tipo “Estado numérico” y busca la entidad de tu enchufe inteligente que indica la potencia (en mi caso ‘sensor.lavadora_switch_power’). En el apartado “Por debajo de”, indica número fijo e introduce el mismo valor que en el trigger anterior (por ejemplo, ‘5’), y en el campo durante indica, por ejemplo, 2 minutos. En este caso es prevenir de nuevo que el estado cambie a “Finalizado” cuando se trata de una pausa prevista dentro del programa de lavado.
    • Condición. Selecciona el tipo “Estado” e indica que el valor del ayudante (‘input_select.lavadora’) sea “Lavando”, para que únicamente se ejecute cuando la lavadora haya estado en funcionamiento.
    • Acción. Añade como acción una del tipo “Llamar servicio” y busca el servicio ‘input_select.select_option’. Luego indica como entidad el ayudante que has creado (‘input_select.lavadora’) y como opción “Finalizado”.
    • Acción (2). Añade como acción una del tipo “Llamar servicio” y busca el servicio ‘notify’ correspondiente a tu dispositivo para que te envíe una notificación cuando la lavadora haya terminado, para que sepas que tienes que tender la ropa (también podría ser una notificación de audio o encender una luz roja, como tú prefieras).

Con estos pasos ya puedes comprobar que el ayudante cambia de estado cuando lo hace la lavadora.

Recordatorio de acciones requeridas

Habrás notado que la secuencia de estados a pasado de “Apagada” a “Lavando”, pero ha terminado en “Finalizado”. Esto lo hacemos para podamos diferenciar dos situaciones distintas. La primera, en la que la lavadora no ha sido usada recientemente (apagada). La segunda, cuando la lavadora ha terminado y está esperando que vayamos a tender la ropa (finalizado).

Para terminar de integrar cualquier lavadora en Home Assistant y cerrar el ciclo vamos a hacer uso de un sensor magnético de puertas/ventanas cerradas. En mi caso he utilizado un sensor de este tipo, que tengo integrado en Home Assistant a través de zigbee2mqtt. Estos sensores tienen dos estados, cuando están en contacto (cerrado) y cuando no (abierto).

*Algún precio puede haber cambiado desde la última revisión

Una vez integrado el sensor en HA sólo tienes que instalarlo en la puerta de la lavadora, de forma que cuando esté cerrada, las dos partes del sensor hagan contacto el contacto suficiente para que se informe como “cerrado” (no suele ser necesario que estén en contacto total).

Hecho esto, sobre la automatización que hemos creado en el apartado anterior, tienes que añadir un nuevo desencadenante:

  • Disparador. Selecciona el tipo “Estado” y busca la entidad de tu sensor de puerta abierta, que indica si está abierta o cerrada. En el campo “A” indica “Abierto” (u “on” según corresponda en tu sensor).
  • Condición. Selecciona el tipo “Estado” e indica que el valor del ayudante (‘input_select.lavadora’) sea “Finalizado”, para que únicamente se ejecute después de que la lavadora termine.
  • Acción. Añade como acción una del tipo “Llamar servicio” y busca el servicio ‘input_select.select_option’. Luego indica como entidad el ayudante que has creado (‘input_select.lavadora’) y como opción “Apagada”.

De esta forma cuando abramos la puerta de la lavadora para sacar la ropa, el ciclo se reiniciará.

Pero, ¿qué pasa si cuando recibimos la notificación estamos fuera de casa, ocupados o simplemente nos olvidamos? Para esta situación vamos a añadir otro ‘trigger’ más, para crear un recordatorio cada ‘x’ minutos hasta que saquemos la ropa.

  • Disparador. Selecciona el tipo “Patrón de tiempo” y en el campo minutos indica el número de minutos tras el cuál quieres recibir el aviso, precedido de una barra ‘/’ (por ejemplo ‘/10’).
  • Condición. Selecciona el tipo “Estado” e indica que el valor del ayudante (‘input_select.lavadora’) sea “Finalizado”, para que únicamente se ejecute después de que la lavadora termine.
  • Acción. Añade como acción una del tipo “Llamar servicio” y busca el servicio ‘notify’ correspondiente a tu dispositivo para que te envíe, de nuevo, una notificación (o lo que tú quieras). Ten en cuenta que está acción se repetirá hasta que saques la ropa.

Añadir detergente a la lista de la compra automáticamente

Otra ventaja de integrar cualquier lavadora en Home Assistant es que puedes automatizar en la lista de la compra los productos asociados (detergente, suavizante, etc). La idea es sencilla, desde el momento que podemos monitorizar el ciclo de funcionamiento de la lavadora, también podemos contar los ciclos. Y si podemos contar los ciclos, también podemos controlar la cantidad de detergente, pastillas, suavizante o productos que utilicemos (por ejemplo, supongamos que utilizo 2 pastillas en cada lavado).

Mediante un sencillo cálculo, puedo deducir cada cuántos lavados necesitaré detergente. Por ejemplo, si el paquete trae 50 pastillas, y gasto 2 por lavado, necesitaré comprar detergente cada 25 lavados. Con este dato lo único que tengo que hacer es crear un contador de ciclos de lavado que añada el producto a mi lista de la compra cuando llegue a 25, y en ese momento se reinicie.

El proceso es el siguiente:

  1. Ve a Ajustes > Dispositivos y servicios > Ayudantes. Crea un nuevo ayudante de tipo contador y dale el nombre que quieras (por ejemplo, “lavadora”). Indica ‘0’ como valor mínimo, y como máximo el número de lavados que puedes hacer con un envase de detergente (siguiendo el ejemplo, ’25’). Esto creará la entidad ‘counter.lavadora’.
  2. Vuelve a la automatización que has creado en el paso de “Monitorización del estado”. Lo que vamos a hacer es añadir una nueva acción asociada al primer ‘trigger’ que va a cambiar el estado de la lavadora de “Apagada” a “Lavando”, para que incremente el contador de lavados o gasto de detergente. Para ello añade como acción una del tipo “Llamar servicio”, busca el servicio ‘counter.increment’ y selecciona la entidad del contador que has creado en el paso 1 (por ejemplo, ‘counter.lavadora’).
  3. Ahora vamos a añadir un nuevo desencadenante sobre la automatización para que cuando el contador llegue a su valor máximo, añada el detergente a la lista de la compra y se reinicie:
    • Disparador. Selecciona el tipo “Estado numérico” y busca la entidad del contador de lavados. En el apartado “Modo por encima de” selecciona número fijo, e indica uno menos de los lavados que puedes hacer con tu detergente (por ejemplo ’24’).
    • Acción. Añade como acción una del tipo “Llamar servicio”, busca el servicio ‘shopping_list.add_item’ e indica el producto en el campo nombre (detergente, suavizante…)
    • Acción (2). Añade otra acción del tipo “Llamar servicio”, busca el servicio ‘counter.reset’ y selecciona la entidad de tu contador (por ejemplo, ‘counter.lavadora’). De esta forma el contador volverá a empezar.
  4. Si quieres crear un indicador del porcentaje de detergente que te queda, basta con incluir el siguiente código en tu fichero ‘sensors.yaml’.
- platform: template
  sensors:
    lavadora_detergente:
      friendly_name: "Detergente (lavadora)"
      icon_template: mdi:washing-machine
      unit_of_measurement: "%"
      value_template: >
        {% set lavados = states('counter.lavadora') | int %}
        {% set porcentaje = (1 - (lavados / 25))*100 %}
        {{ porcentaje }}

Otras ideas de automatización

Hay muchas cosas que puedes hacer después de integrar cualquier lavadora en Home Assistant! Aquí tienes algunas ideas:

tarjeta cocina

¿Dudas?¿necesitas ayuda? entra aquí
Y si te ha gustado, compártelo! 🙂
Send this to a friend