Home Bluetooth proxies con ESPHome en Home Assistant
Post
Cancel

Bluetooth proxies con ESPHome en Home Assistant

Configuramos un ESP32 como un Bluetooth Proxy usando ESPHome para ampliar la cobertura Bluetooth de Home Assistant.

¿Qué es Bluetooth Proxy?

En un post previo, vimos como integrar una red mallada de Zigbee, comentábamos que la principal diferencia que proveía Zigbee frente a Bluetooth es precisamente que funciona como una ‘red en malla’ en lugar de una comunicación direccional.

Diferencias entre red mallada y direccional

Sin embargo, muchos dispositivos domóticos (especialmente sensores baratos) funcionan exclusivamente con Bluetooth, si bien ya existe una solución llamada ESPHome, ahora nos proveen con una nueva solución, usar Bluetooth como si fuera una red mallada gracias a múltiples ESP32.

Lista de componentes

  • ESP32 y un cable microUSB a USB.
  • Nuestro sistema domótico con Home Assistant.
  • Nuestro ordenador de trabajo con conexión a internet.
  • Alrededor de 15 minutos de tiempo libre.

La instalación es realmente sencilla dado que se hace desde el propio navegador, no es necesario ningún programa para flashear los ESP32, aunque es posible descargar el binario correspondiente y flashearlo ‘a mano’, es mucho más rápido y sencillo hacerlo directamente desde el navegador.

Para ello tenemos que tener en cuenta que la web oficial ESPHome Bluetooth Proxies solo soporta esta funcionalidad desde Google Chrome o Microsoft Edge. No podemos hacerlo desde otros navegadores como Brave, Opera, etc…

También hay que tener en cuenta que los dispositivos compatibles solo incluyen los ESP32 ‘normales’, no los modelos C3 o similares. Cuando tengamos la web abierta y el ESP listo, conectamos este al ordenador mediante el cable microUSB a USB y continuamos.

ESP32 Conectado

Flasheo

Pulsamos sobre el botón que dice ‘CONNECT’ y el navegador (si estamos usando uno compatible) nos pedirá permisos para conectarse a un puerto COM. Seleccionamos el dispositivo y pulsamos ‘Conectar’.

Confirmación navegador conexión ESP32

Debemos tener en cuenta que si no disponemos de los drivers tendremos que instalarlos o no podremos conectarnos al dispositivo. En tal caso la propia web nos avisa de ello y nos dispone los enlaces para descargar los drivers oficiales.

Aviso drivers

Tras pulsar ‘Conectar’, nos da la opción de flashear el dispositivo o consultar sus logs en tiempo real, pulsamos Install ESP32 Generic y nos avisa entonces de que todos los datos del ESP serán borrados, hacemos click en Install y esperamos.

Opciones instalación Aviso previo

Tras unos segundos (puede tardar un poco), la instalación finaliza.

Instalación completada

Home Assistant

El assistente nos pedirá conectar el dispositivo a la red Wifi que vamos a usar, seleccionamos nuestra red en el desplegable y nos conectamos.

Configuración red

Cuando se haya conectado, dispondremos de un botón que nos lleva directamente a Home Assistant si este está en local, aunque si estamos usando una URL personalizada para acceder a Home Assistant de forma remota es quizás más fácil que vayamos a nuestra interfaz de Home Assistant ya y veremos que ha detectado automáticamente el nuevo dispositivo en el momento que este se conectó a nuestra red.

Si navegamos al panel de ESPHome en Home Assistant veremos que ya aparece el dispositivo, a la espera de que lo añadamos pulsando el botón Adopt. Si no sabes a que me refiero con el panel de ESPHome, deberías comenzar por ESTE post.

Añadir nodo a ESPHome

En el momento en que adoptemos el dispositivo, deberemos introducir una clave de encriptado, esta clave es única, NO debemos compartirla con nadie y permite a nuestros dispositivos ESPHome Proxies comunicarse entre sí.

Añadir clave encriptado

¿Cómo generamos una clave? La mejor opción es navegar a la web oficial de ESPHome y utilizar la que nos genera. La de la imagen solo es un ejemplo. Cada vez que recargemos la web nos genera una nueva.

Claves generadas desde ESPHome

Tras este paso, ESPHome comenzará a instalar las dependencias necesarias, veremos el proceso desde la consola que se nos abre en el navegador. Una vez acabe este proceso, veremos el nuevo dispositivo desde el panel de ESPHome en Home Assistant.

OTA Completado Nodo añadido

Ya podemos editar el nodo usando el botón Edit y añadir nuestros sensores Bluetooth como indica la documentación; haremos esto para todos los nodos que tengamos (tiene poco sentido si solo tenemos un único nodo, ya que eso no sería una red en malla).

Apuntes finales

Podríamos pensar que si yo tengo (por ejemplo) dos nodos, que vamos a llamar ‘Nodo_A’ y ‘Nodo_B’, y un sensor del tipo que sea, vamos a llamarlo ‘Sensor’, entonces añadiríamos ‘Sensor’ al nodo que más cercano este a este. ¡Pero esto no es lo que queremos hacer en una red mallada!

Copiando y pegando la misma configuración en ambos nodos hace que Home Assistant entienda que se trata de una red en malla, con esto hemos ganado una ventaja: ahora podemos mover nuestros sensores por toda la casa sin necesidad de mover los nodos, nuestros sensores se conectarán al nodo más cercano e, incluso si algún nodo deja de funcionar, los sensores podrán conectarse a otro nodo cercano y no perderemos la conexión con estos. Habremos aumentado la conectividad de nuestra red y reducido los puntos de fallo únicos.

This post is licensed under CC BY 4.0 by the author.

Instalación y configuración de acceso SSH a Home Assistant

-