Si quieres detectar fugas de agua en tu hogar, y además, mirar la temperatura que hay en una determinada estancia de casa, el dispositivo Shelly Flood te permitirá hacer todo esto de una manera muy sencilla. Este pequeño dispositivo funciona con una pila de tipo CR123A que no viene incluida al comprarlo, es algo que debemos tener en cuenta. La forma de conectarse a la red es a través de Wi-Fi, pero solamente se conectará al Wi-Fi cuando haya una detección de inundación o cuando cambie la temperatura, con el objetivo de ahorrar energía y que la pila nos pueda durar más de un año. ¿Quieres saber cómo integrar este dispositivo en tu Home Assistant?
El Shelly Flood se puede integrar de manera muy sencilla en Home Assistant, para poder recibir avisos de inundación y temperatura. Lo más eficiente es hacerlo a través de MQTT, con el objetivo de ahorrar energía ya que es un dispositivo que funciona con pilas. En RedesZone tenéis un completo tutorial de cómo configurar MQTT Broker en Home Assistant, y también ejemplos de cómo configurarlo con unos sensores de apertura de puertas y ventanas de Shelly, y es que el procedimiento en este caso sería muy similar.
Características del Shelly Flood
El Shelly Flood es un detector de inundaciones de muy pequeño tamaño, tiene una forma circular, midiendo tan solo 7cm de diámetro por 1,9cm de alto. Este dispositivo nos permitirá recibir notificaciones de inundación, y ver en todo momento la temperatura a la que estamos en la estancia donde lo coloquemos, ya que dispone de los dos sensores. Este dispositivo se conectará a la red inalámbrica Wi-Fi a través de la banda de 2.4GHz, con el objetivo de conseguir la mejor cobertura posible, ya que esta banda permite atravesar mucho mejor los obstáculos. En un entorno doméstico, podemos cubrir una distancia de unos 30 metros aproximadamente, aunque todo dependerá de los materiales de las paredes, interferencias, colocación del router Wi-Fi que tengamos y demás.
Aunque este dispositivo se alimenta a través de una pila de tipo CR123A, el fabricante nos proporciona una autonomía estimada de hasta 18 meses, aunque dependerá de cómo lo tengamos configurado, porque si tenemos IP fija consumirá menos que si tiene que hacer la petición al servidor DHCP de nuestro router. Lo mismo ocurre con el método de comunicación, si usamos MQTT será realmente eficiente. Por último, otra configuración útil es que solamente proporcione lecturas de temperatura si cambia en 0,5ºC o 1ºC, tendremos menos mediciones, pero ahorraremos mucha batería porque no tendremos tantas conexiones con la red Wi-Fi.
Este dispositivo se puede usar tanto en el Cloud del fabricante Shelly, como también de manera local, usando, por ejemplo, Home Assistant con el MQTT Broker configurado. Un aspecto muy importante, es que cuando está en stand-by no podremos conectarnos vía web a su interfaz gráfica de usuario, ya que estará ahorrando mucha energía. Para poder despertarlo, tendremos que pulsar el botón físico del interior del Shelly una vez, y así estará disponible durante un minuto aproximadamente, para luego volver a apagarse.
Instalación y recomendaciones de configuración
Para poder integrar el Shelly Flood en nuestro sistema de domótica, lo primero que debemos hacer es configurarlo a través de la aplicación oficial de Shelly. Básicamente lo que tenemos que hacer es descargar la app de Shelly Cloud para Android o iOS, registrarnos en la aplicación (si no lo hemos hecho antes), y dar de alta el dispositivo como cualquier otro equipo del fabricante.
En el proceso de configuración, tendremos que elegir nuestra red inalámbrica Wi-Fi con el nombre de la red (SSID), así como introducir la contraseña de acceso. Este dispositivo es compatible con seguridad WPA2-Personal, el resto de cifrados como WPA2-Enterprise o WPA3-Personal no están soportados de momento. Una vez que hayamos configurado este dispositivo con la red Wi-Fi, ya estará listo para funcionar y mandarnos avisos en caso de inundación. Un aspecto muy importante, es que, en caso de inundación, además de avisarnos al móvil también se pondrá a pitar al tener un pequeño altavoz en su interior.
Una vez que lo tengamos configurado con la aplicación, nuestra recomendación es que realices los siguientes ajustes para optimizar la duración de la batería. Si accedemos vía web con la dirección IP privada que se le ha proporcionado por parte del servidor DHCP, veremos el menú principal:
Un ajuste muy recomendable es que solamente mande actualizaciones de temperaturas cuando tengamos una diferencia de 0,5ºC e incluso 1ºC. Recibiremos menos estados de temperatura y no será tan exacto, pero a cambio, ahorraremos una gran cantidad de energía de la pila, aumentando su autonomía que se estima en unos 18 meses aproximadamente.
Otras opciones que tenemos en este mismo menú, es calibrar correctamente el sensor de temperatura, por si mide más grados o menos grados que otro termómetro que tengamos. Además, también podemos configurarlo en modo lluvia para que no nos alerte son sonidos:
Ahora tenemos que poner una dirección IP fija al dispositivo, para que no tengamos que usar el cliente DHCP y gastemos energía cada vez que se conecta al router, ya que tendremos que pasar por los diferentes mensajes de DHCP. Para hacer esto, nos vamos a la sección de «Internet & Security» y podemos ver tanto el SSID como la clave de la red Wi-Fi, y justo debajo las opciones de configuración de la dirección IP del propio dispositivo, con su máscara, puerta de enlace y DNS.
Después de poner IP fija, también puedes optar por pinchar en reconectar una vez que hayas puesto el sensor en la ubicación final, para que se conecte al nodo Mesh (si es que lo tienes) y así verificar que todo funciona correctamente. Este equipo al tener batería no dispone de roaming WiFi como sí tienen otros modelos de Shelly.
Por último, otra recomendación si lo vamos a integrar en Home Assistant, es desactivar la gestión a través del Cloud de Shelly, ya que no necesitaremos esta funcionalidad, y ahorraremos también energía ya que no se conectará continuamente. La opción está justo al final del menú «Internet & Security».
Como podéis ver, hay varios ajustes que son muy recomendables hacer para mejorar la autonomía de la pila de tipo CR123A. Ahora vamos a ver cómo podemos integrar este dispositivo en Home Assistant a través de MQTT.
Integración de Shelly Flood en Home Assistant
El fabricante Shelly nos permite integrar en Home Assistant usando dos protocolos diferentes, tanto CoIoT como también MQTT. En ambos casos tendremos las mismas funcionalidades, hacerlo con CoIoT es algo más «automático» que hacerlo por MQTT, sin embargo, MQTT es más eficiente ya que es un protocolo diseñado específicamente para ahorrar muchos datos. Nosotros hemos estado usando ambas formas y la verdad es que funcionan perfectamente las dos, así que lo dejamos a tu elección.
Configurar el Shelly Flood con CoIoT
El protocolo predeterminado es CoIoT y nos permitirá integrarlo de manera realmente sencilla. Simplemente nos vamos a la sección de «Internet & Security«, y en el submenú de «Advanced – Developer Settings» ponemos:
- Enable CoIoT: activado
- CoIoT peer: dirección IP de nuestro Home Assistant y el puerto 5683 que es el predeterminado. De esta forma, la comunicación será unicast y no multicast, evitando problemas.
Una vez que hayamos hecho esto, nos vamos a nuestro Home Assistant y reconocerá automáticamente que hay un nuevo dispositivo, pinchamos en «Configurar» para integrarlo y ya lo tendremos. Al ser un dispositivo a batería, posiblemente tengas que pulsar una vez en el botón físico que hay en el interior, para que se comunique con la red Wi-Fi y envíe mensajes a Home Assistant, para que el sistema domótico lo reconozca y lo añada al listado de dispositivos.
En caso de no reconocerlo automáticamente, podemos hacerlo manualmente, para ello nos vamos a «Ajustes / Dispositivos y servicios«, pinchamos en el botón de «Añadir integración«, buscamos «Shelly» y ponemos la dirección IP privada del Shelly Flood que hemos configurado, un aspecto muy importante es que antes de pinchar en el botón «Enviar» tenéis que pulsar el botón físico del dispositivo Shelly Flood, para «despertarlo».
Una vez que lo hayamos dado de alta, podemos verlo en nuestro Home Assistant de la siguiente forma:
Como habéis visto, es muy sencillo configurar este dispositivo Shelly Flood a través de CoIoT en nuestro Home Assistant, y es que no tenemos que usar MQTT ni realizar complejas configuraciones.
Configurar el Shelly Flood con MQTT
Lo primero que debemos hacer es habilitar el protocolo MQTT en el Shelly Flood, y configurarlo con los datos de dirección IP, puerto, usuario y contraseña del MQTT Broker de nuestro Home Assistant. Anteriormente hemos mencionado que tenéis un completo tutorial de cómo configurar MQTT Broker en el sistema de domótica, es necesario que lo sigáis si no habéis configurado antes un dispositivo a través de MQTT.
Para añadir un dispositivo vía MQTT, tenemos que escuchar todos los topic, ya sea a través de Home Assistant o bien usando un programa de terceros. Una vez capturados los topic, podremos escribir el código YAML necesario para asignar esta información a un sensor (temperatura y batería) y sensor binario (inundación true o false). Si usas un sistema operativo Windows, puedes usar el programa MQTT Explorer y conectarte al MQTT Broker de Home Assistant.
Una vez que lo hayas instalado, lo tienes que ejecutar y tendremos que añadir una nueva conexión con los siguientes datos:
- Name: el nombre de la conexión guardada, puedes poner un nombre descriptivo.
- Validate certificate: desmarcado.
- Encryption: desmarcado.
- Protocol: mqtt://
- Host: IP_privada_home_assistant
- Port: 1883
- Username: nombre usuario que hayas puesto
- Password: contraseña que hayas definido
Ahora pinchamos en «Save» para guardar el perfil, y pinchamos en «Connect» para conectarnos al MQTT de Home Assistant donde vamos a recibir todos los mensajes.
Aquí podéis ver todos los topic y también la ruta a ellos. Como podéis ver, la ruta hacia los sensores es «shellies/shellyflood-98CDAC2E43F4/sensor/» y dentro tenemos la temperatura, el flood si es verdadero o falso, y también el estado de la batería.
En la parte de la derecha podemos ver también información adicional como red Wi-Fi conectada, señal de la red WiFi etc.
Con la información obtenida a través de estos mensajes, ya podremos programar el MQTT correctamente y dar de alta un total de tres entidades (temperatura, batería y flood).
Para configurar Home Assistant, nos aseguramos que en el archivo configuration.yaml tenemos la siguiente línea:
- mqtt: !include AA_todomqtt.yaml
Ahora editaremos este archivo de configuración, para proceder a poner todos los topic anteriores:
sensor:
## Sensores Shelly Flood por MQTT ##
- state_topic: "shellies/shellyflood-98CDAC2E43F4/sensor/temperature"
name: "Shelly-Flood-MQTT-temperatura"
unique_id: "shellyflood-mqtt-temperatura"
unit_of_measurement: "ºC"
expire_after: 1209600
icon: mdi:thermometer
qos: 1
json_attributes_topic: "shellies/shellyflood-98CDAC2E43F4/announce"
- state_topic: "shellies/shellyflood-98CDAC2E43F4/sensor/battery"
name: "Shelly-Flood-MQTT-bateria"
unique_id: "shellyflood-mqtt-bateria"
unit_of_measurement: '%'
expire_after: 1209600
device_class: battery
icon: mdi:battery
qos: 1
json_attributes_topic: "shellies/shellyflood-98CDAC2E43F4/announce"
En la siguiente imagen podéis ver una captura de pantalla de cómo quedaría:
Ahora configuraremos el sensor binario así:
binary_sensor:
- state_topic: "shellies/shellyflood-98CDAC2E43F4/sensor/flood"
name: "Shelly-Flood-MQTT-inundacion"
unique_id: "shellyflood-mqtt-inundacion"
expire_after: 1209600
icon: mdi:water
qos: 1
payload_on: "true"
payload_off: "false"
device_class: moisture
json_attributes_topic: "shellies/shellyflood-98CDAC2E43F4/announce"
La captura de pantalla la podéis ver aquí:
Una vez que hayamos configurado todo esto en nuestro Home Assistant, tendremos que reiniciar el sistema con recarga de integraciones y ya los tendremos datos de alta, aunque sin estado ya que no hemos recibido comunicación hasta que pulsemos el botón físico del dispositivo, ya que funciona con pilas.
Ahora procedemos a añadir una tarjeta con las tres entidades, podemos buscarlo por entidad y añadirlas las tres a la vez para visualizarlas todas juntas:
Al añadirlas, nos aparecerán los estados como «No disponible«, ya que no hemos recibido ningún estado.
Si pulsamos el botón físico del Shelly Flood, podemos ver los datos que nos envía:
Por supuesto, podéis cambiar el nombre que aparece en la visualización de los estados, ya sea a través del código YAML o directamente a través de la interfaz gráfica de usuario.
Como podéis ver, usar el protocolo MQTT es bastante más complejo que el CoIoT que os hemos mostrado anteriormente, pero también funciona muy bien y podemos recibir todos los estados del sensor en tiempo real. Ahora os vamos a enseñar cómo crear automatizaciones usando este dispositivo.
Automatizaciones que podemos crear
Las automatizaciones con este dispositivo por MQTT son similares a otros sensores, simplemente debemos irnos a «Ajustes / Automatizaciones«, crear una nueva automatización, y en la sección «Cuando» elegir el estado del sensor a «Húmedo«, tal y como podéis ver aquí:
De esta forma, en cuanto el sensor pase a húmedo (independientemente del estado anterior), se ejecutará la acción de «Entonces hacer«. En nuestro caso, hemos querido que se apague automáticamente un enchufe inteligente que teníamos configurado previamente, y también que nos envíe una notificación por Telegram indicando el suceso, tal y como podéis ver aquí:
De esta forma tan sencilla, podremos monitorizar en nuestro hogar si hay algún tipo de inundación, y avisarnos por Telegram o realizar ciertas automatizaciones más avanzadas. Este tipo de dispositivos los podemos poner en el interior de la casa sin problemas, también existen modelos que son de exterior. Gracias a este sistema de domótica tan avanzado, podremos realizar este tipo de acciones tan avanzadas sin problemas.
Si usas un dispositivo externo, podrás saber también, por ejemplo, cuando llueve. Dependerá de la sensibilidad a la que lo ajustes, pero es un buen método si necesitas saber, por ejemplo, si llueve para quitar la ropa, regar las plantas, etc.
Desventajas de Shelly Flood
Pese a que tiene muchas ventajas, y es un producto genial, vamos a recopilar los posibles problemas y desventajas con las que cuenta, por si alguna se te había pasado por alto:
- Dependencia de Wi-Fi: Obviamente, para poder recibir notificaciones necesitamos una conexión a internet, por tanto, tendremos que tener un router con WiFi al cual poder conectarnos, que nos llegue la señal, y que sea continuo.
- Batería: Aunque tiene una batería de larga duración, no es infinita, por lo que tendremos que estar pendientes de cambiarla cuando lo requiera. Algo a tener en cuenta antes de instalarlo, pensando en un sitio de fácil acceso para ello.
- Coste: Pese a que no hablamos de mucha diferencia, existen métodos de detección de fugas más económicos, sobre todo en los casos en los que vayamos a requerir una cantidad importante de ellos. De ser solo uno o dos, será irrisoria la inversión.
- Sensibilidad: Aunque la sensibilidad es ajustable, puede haber situaciones donde el dispositivo no detecte pequeñas cantidades de agua o falsas alarmas en ambientes muy húmedos.
Puede que no sean contras para muchos, pero hay que tenerlas claras ya que muchas veces lo más obvio es lo que se nos pasa, y no está de más recordarlas.
Existen alternativas como Zircon Leak Alert, la cual es más económica, simplemente esta activará una alarma sonora fuerte al contacto con el agua, pero no podremos tener notificaciones a distancia, por tanto, la función principal de la que hablamos hoy, la perderíamos.