Si has llegado hasta aquí es movido por la curiosidad, es lo que mueve al mundo y la intención de este artículo es multiplicar esta curiosidad. Vamos a ver él ¿qué?, ¿cómo? Y ¿por qué? De un Controlador, en este caso Home Assistant.
Antes de nada, ¿te apetece asistir a un mini-curso gratuito sobre domótica? Es tan sencillo como entrar aquí.
Y os aviso, esto es como un vicio, en el futuro cuando tengas Home Assistant y le empieces a añadir dispositivos, esto va a ser el nunca acabar, que si un sensor, que si no detecta presencia apaga una luz, que si otro que me envíe una foto, el riego, el aire acondicionado, la calefacción, él…
La diversión esta asegurada.
Veremos las diversas modalidades de instalación de Home Assistant, la mejor versión, y tocaremos todos los palos para que tengas una idea lo más completa de lo que te puede deparar el futuro.
Aparte también es mi intención que te vayas familiarizando con la jerga de Home Assistant. Cada Controlador de cada fabricante tiene la suya particular, Complementos (Add-Ons), Integraciones (Integrations), Entidades (Entities), Vistas (Views).
Y para ello voy a instalar Home Assistant OS.
Sujetaros bien que empezamos.
Indice de contenidos
- 1 ¿Qué es Home Assistant?
- 2 ¿Qué son las automatizaciones en Home Assistant?
- 3 Métodos de instalación Home Assistant
- 4 ¿Cuál es la mejor versión de Home Assistant?
- 5 Instalar Home Assistant
- 6 Configurar Home Assistant
- 7 Instalación de complementos en Home Assistant
- 8 Agregar Integraciones en Home Assistant
¿Qué es Home Assistant?
Home Assistant es un Controlador, podría parar aquí el artículo y… no lo leería nadie, pero quedaros con ese nombre: Controlador.
¿Y qué hace un Controlador?
Humm… controlar ¿no? Vamos a profundizar un poco más.
Este Controlador se compone de un software (como Chrome, Word o Skype) que necesita de un hardware como vuestro ordenador (u otros muchos dispositivos existentes en el mercado), que se comunica por un medio que puede ser cable o wifi (también hay otros medios que utilizan otros protocolos como bluetooth, zigbee y z-wave)
Como ves se parece bastante a un ordenador/computadora, tenemos un software, un hardware y medios para comunicarnos.
¿Qué más?
Pues a este bichito se le conectan dispositivos, principalmente dispositivos que son capaces de transmitir y recibir información, los cuales a su vez pueden tener sensores y actuadores.
Sensores que transmiten información
Un termómetro digital, seguro que tenéis alguno por casa, suelen dar la temperatura y la humedad, imaginaros que utilizando un medio, cable o wifi, es capaz de enviar a vuestro Controlador (Home Assistant) cada, 5 minutos la temperatura.
Y ese dato se almacena en nuestro Home Assistant, nuestro Controlador.
Un ejemplo básico podría ser una ESP32 o ESP8266 con un sensor de temperatura DHT11 conectado, o un ESP32 CAM que es una pequeña cámara que nos podrá enviar imágenes vía streaming o el envío de fotos (desde este mismo dispositivo) a nuestro correo electrónico.
Atentos ahora porque esta es la esencia de un sistema Domótico: dependiendo del fabricante o la empresa. Utilizan la siguiente palabra clave: escenarios/escenas/rutina/automatizaciones
¿Qué son las automatizaciones en Home Assistant?
Es una automatización que configuramos en nuestro Controlador (Home Assistant) para que cuando por ejemplo, la temperatura que nos envía el dispositivo sensor baje, por ejemplo, de 18 grados envíe una señal (dispara) a un Actuador para que arranque la caldera hasta que la temperatura llegue a 22 grados (porque así lo he configurado) y enviará otra señal para que pare la caldera.
Los que ya sabéis todo esto, seguid leyendo por favor, solo pretendo ponernos a todos en la misma casilla de salida.
Entonces, tenemos dispositivos que envían información recogida por sensores. Sensores de presencia (PIR), cámaras (IP), aperturas de puertas y ventanas, nivel de agua, etc. Esta información es tratada por el Controlador Home Assistant y vía escenarios/automatizaciones activará una Sirena (señal de alarma), el apagado de un radiador (por una apertura de una ventana) o envió de una foto desde la cámara a nuestro correo electrónico por haber detectado presencia.
Ya Charly, pero eso ya lo hacen muchos fabricantes sin meterse en tanto lío.
Es verdad, lo sé. Pero ten esto en cuenta, estarás atado a ese fabricante y consumirás lo que este fabricante quiera, ojo que a lo mejor es más que suficiente para vosotros. Yo no puedo entrar en esa discusión, es algo personal.
¿Por qué utilizar Home Assistant?
Un Controlador como Home Assistant lo que te dará, será LIBERTAD de utilizar los cientos de sensores y actuadores que existen en el mercado, de distintos fabricantes.
Una cámara IP por ejemplo, cualquier fabricante te cobra 20, o 30 €, una ESP32 CAM cuesta 8, si solo necesitas una a lo mejor no merece la pena, pero ¿y si necesitas 6?. Aquí está el siguiente punto donde quería llegar, ECONOMÍA.
El otro punto para mi mucho más importante es la PRIVACIDAD, seguro que alguna vez te has sentido observado, ¿no te ha ocurrido que al hablar delante del móvil de… por ejemplo comprar un coche? Y al día siguiente empezar a recibir ofertas, a mí me da miedo. Por eso no quiero compartir (con quien sea) los datos de la temperatura de mi casa, cuando arranco o paro la calefacción o subo las persianas etc.
Otro punto a tener en cuenta, el Controlador Home Assistant no está basado en ningún tipo de nube, es local a vuestra casa, es vuestra privacidad, aparte que seguirá funcionando si se va internet al carajo.
Por último, es de código libre (open source) y hay una gran comunidad detrás, es un producto maduro que está entre los 3 sistemas domóticos de código libre más potentes. (junto con OpenHAB y Jeedom, esto es una opinión personal).
Libertad, Economía, Privacidad, Local, Gran Comunidad, suena bien. ¿No?
Ahora que estamos todos en la misma fila de salida, vamos a por la instalación.
Métodos de instalación Home Assistant
El Controlador Home Assistant se puede instalar casi en cualquier dispositivo, tu portátil, Raspberry PI, Intel NUC, una máquina virtual, etc. Para hacer una pequeña prueba de instalación puedes utilizar lo que tengáis a mano, pero si estás pensando en algo a más a largo plazo, piensa que debe de ser un equipo que va a estar encendido las 24 horas del día, aquí una Raspberry no tiene competencia, consume poco y hace poco ruido.
Otro tema es la versión a instalar, aquí hay un poco de lío con los nombres, cambios de nomenclatura, Home Assistant, Hass.IO, HassOS, Home Assistant Core, and Home Assistant Supervised.
Demasiados nombres ¿verdad? Los voy a explicar brevemente.
Primero os pego esta tabla resumen:
- Home Assistant Core : programado en Python y puede ser ejecutado en varios sistemas operativos. No proporciona la experiencia del Supervisor completa, por lo tanto, no proporciona el panel de Supervisor ni los complementos. Antes se llamaba simplemente Home Assistant
- Cuando está disponible como una imagen Docker se llama Home Assistant Container.
- Home Assistant : solia llamarse Hass.IO. Home Assistant es un ecosistema totalmente administrado por la interfaz de usuario (en este caso a través de un navegador) que ejecuta el Home Assistant Core, el Supervisor Home Assistant y Home Assistant Complementos.
- Se añaden nuevas funcionalidades: una mejor administración, la gestión del almacén de complementos o actualizaciones en un clic.
- Home Assistant se ejecuta sobre Home Assistant Operating System
- Home Assistant Supervised: se trata de la experiencia Home Assistant completa en un sistema operativo Linux regular como Ubuntu o Debian. Tendrás todo incluido en el Home Assistant (Home Assistant Supervisor y complementos) con el beneficio adicional de ejecutar tu versión preferida de Linux.
- Home Assistant Operating System: antes HassOS, es una distribución de un Linux muy ligero tuneado para ejecutar Home Assistant y sus complementos. Está optimizada para ejecutarse en dispositivos como Raspberry Pi, Intel NUC y Tinker Board.
- Es verdad que tenemos muy poco control sobre Home Assistant Operating System y no se basa en una distribución regular de Linux como Ubuntu, digamos que es un Home Assistant empaquetado cuyo primer objetivo es evitar complicaciones a los menos experimentados.
- No podremos utilizar este sistema para algo más que no sea Home Assistant.
- Por lo tanto, podemos pensar: ¿Home Assistant Operating System es la opción ideal para los que empiezan?.
¿Cuál es la mejor versión de Home Assistant?
Para saberlo tienes que responderte a estas tres preguntas:
- Sobre que hardware lo vas a ejecutar (un PC, Raspberry etc.)
- Si vas a querer que tu sistema ejecute algo más que Home Assistant.
- Y por supuesto, la experiencia que tengas.
A ver que os parece esta elección de instalación:
- Controlador: Home Assistant: por su potencia, por la gran comunidad que hay detrás y por la privacidad de mis datos.
- Versión: Home Assistant Operating System, por su sencillez para usuarios menos experimentados, un sistema empaquetado para no tener complicaciones extras.
- Hardware : Raspberry Pi, por economía, nos vale cualquier RPI 3 o RPI 4
Componentes esenciales para instalar Home Assistant
- Cualquier Raspberry 3 o 4 es válida, mejor la 4, pero si tienes una 3 a mano, no lo dudes.
- Fuente de alimentación: 2.5 Amperios para RPI 3 y 3.5 Amperios para RPI 4
- Tarjera de memoria Micro-SD: esta parte es importante, es la típica tarjeta que compras cuando queremos ampliar la memoria de almacenamiento de tu móvil.
- En relación a su rendimiento hay varias opciones, 2 principalmente:
- Application Performance Class 1 (A1) – Rendimiento A1 es de 1500 lectura IOPS, 500 escritura IOPS.
- Application Performance Class 2 (A2) – Rendimiento A2 es de 4000 lectura IOPS, 2000 escritura IOPS.
Que explicado muy básicamente son unos requerimientos de rendimiento y durabilidad que los fabricantes deben de cumplir para poder poner esa etiqueta.
Si no lo sabes, IOPS es una medida que se utiliza sobre todo en Almacenamiento de datos en general, piensa que es como el metro o como el litro pero asociado a almacenamiento.
Lo importante con que una tarjeta A2 lee más de 3 veces más rápido y escribe 4 veces más rápido que una tarjeta que cumpla el requerimiento A1. Eso sí que es una dato a tener en cuenta, quedaros con ello.
Aunque, si todo esto que estás empezando tiene una continuación y por ejemplo lo utilizas para una gestión de un sistema de Alarma, sensores de apertura/cierra, sirena, cámaras, es decir, algo más comprometido, la opción que yo utilizo y, por tanto, mi recomendación es una unidad SSD usb3.x, es decir, en formato pendrive/pincho. La RPI 4 ya sabe arrancar desde un pendrive y no es necesaria la micro-SD.
Esta última opción sube un peldaño más en la profesionalidad de tu sistema Domótico. De momento eso es el futuro, sigamos en el presente.
- Pero si no te quieres liar venden unos kits todo incluido Aliexpress o Amazon
- Nos faltaría el cable de red para conectar nuestra RPI 3/4 a red (comúnmente llamado latiguillo) para poder acceder remotamente a nuestro Home Assistant
Instalar Home Assistant
Ya tenemos claro lo que necesitamos, en este artículo voy a utilizar una RPI 3 con una tarjeta de memoria tipo A1 de 32 GB. Elijo estos dispositivos aunque sé que no son los más recomendados, lo hago para que veas que con muy poca inversión se pueden hacer cosas en domótica.
Pero ojo, tampoco nos peguemos un tiro en el pie, para sacar el máximo rendimiento a Home Assistant una RPI 4 4GB + micro-SD A2 32GB o SSD USB3.x es lo adecuado.
También necesitaremos un adaptador (para PC) para escribir la imagen de Home Assistant a la tarjeta de memoria, yo utilizo normalmente el adaptador que suele venir con la tarjeta de memoria, lógicamente vuestro ordenado tiene que tener un hueco para introducir el adaptador.
Una muestra:
Estos son los pasos principales:
- Bajar la imagen para nuestra RPI 3
- Escribir la imagen anterior a nuestra tarjeta Micro-SD
- Insertar la tarjeta en la RPI 3
- Conectar el cable de red
- Conectar eléctricamente nuestra RPI 3 con el adaptador de corriente
- Probar el acceso
Desarrollo de estos pasos:
Para pasar la imagen de Home Assistant a la tarjeta de memoria necesitamos un programa, hay muchos y normalmente son multiplataforma, es decir, hay versiones para Windows, MAC o Linux.
Normalmente, utilizo el programa que ofrece la propia Fundacion Raspberry Pi, en este caso voy a utilizar otro, cuya diferencia principal es que te permite pasar la imagen desde una url de internet, vamos que te ahorras un paso. El programa es una utilidad de Balena que se llama Etcher, lo podéis descargar aquí.
Como ves esta disponible para todos los sistemas operativos
Estos serian los ficheros descargados para las distintas plataformas, yo utilizaré el de macOS
Ejecutar el que os corresponda y tendrás una pantalla similar a esta
- Pulsamos la opción de Flash from URL
- En esta página está la url que debemos de descargar dependiendo de nuestra RPI.
Si quieres descargar la imagen a vuestro ordenador puedes ir directamente al GitHub de Home Assistant. En el momento de escribir este artículo acababa de salir la versión 7 y curiosamente no estaba actualizado en la web.
Pegamos la url anterior, se descargará la imagen y continuamos con el proceso OK
Seleccionamos la tarjeta de memoria SELECT TARGET
Y copiar la imagen FLASH!
Copiando y fin, ya podemos sacar la tarjeta de memoria del PC.
Bueno, no ha sido tan difícil, ¿no?.
Un consejo, si vas a utilizar una micro-SD ya usada, suelo formatearla antes de copiar la imagen, aunque no lo parezca, gano tiempo.
Bien, un tema, antes de introducir la tarjeta de memoria en la RPI, conectemos el cable de red y finalmente el adaptador de corriente, debemos de preguntarnos:
¿Cómo conectarse a Home Assistant?
La respuesta es fácil: a través de un navegador, ¿pero cuál es la IP? Esa es más difícil.
Si vuestro router ADSL o similar, funciona correctamente, cualquier equipo que solicite acceder a la red, será recompensado con una dirección IP, dirección ip de vuestra LAN doméstica, algo así 192.168.1.XX, donde XX identificara la ip de vuestro dispositivo.
En este momento, es cuando debes de preguntarte que destreza o experiencia tienes en acceder y administrar tu router. Ya que se abren varias posibilidades, de momento vamos a ir despacito y pensar que nos da un poco de yuyu tocar el router.
Entonces ¿Cómo puedes saber la IP de nuestro Home Assistant?
La estrategia es muy simple escanear tu red con alguna herramienta, tipo Angry IP Scanner para windows (también hay una versión para Linux y LanScan para MAC).
Ejemplo con Angry IP Scanner antes de conectar Home Assistant
Y después donde aparece la nueva asignación de IP para nuestra Raspberry Pi.
Vista desde el programa LanScan (para macOS).
Finalmente, probamos a poner http://homeassistant.local:8123/ en tu navegador y listo, aparece la pantalla de bienvenida de tu Home Assistant.
Supongo que ahora te estás preguntando que por qué entonces hemos estado escaneando la red en busca de cambios y altas de IP. Es muy sencillo siempre tienes que tener un plan B.
¿Qué pasaría si no cargase la página de Home Assistant?
Pues ya lo sabes, a escanear la red y ver que es lo que está pasando. Lanzar un ping y después acceder por la IP es decir http://192.168.1.36:8123/
Ahora sí que podemos arrancar (por fin) nuestro sistema domótico Home Assistant.
Configurar Home Assistant
Alta de usuario.
Ubicación, sistema métrico y divisa.
Si queremos compartir con Home Assistant información para mejorar su producto.
Finalmente, realiza un tipo de escaneos de tu entorno, para detectar elementos que se puedan Integrar con Home Assistant, en mi caso descubrió Tado (gestor de calefacción), toda una sorpresa y desde luego sin ninguna intención comercial, pero… son buenos y caros, yo los compro en blackfriday.
Pulsamos TERMINAR
Y ya esta, no me digas que no esta chupao, es fácil, solo con un poco de paciencia llegas hasta aquí sin problemas.
Ahora una recomendación, la nomenclatura.
¿Cómo vamos a referenciar nuestros dispositivos para que todo esto no se convierta en una jungla de nombres?
Estos dispositivos, Home Assistant los llama Entidades y es una parte muy importante de lo que es el entorno de Home Assistant
Home Assistant ejemplo nomenclatura
Que quieres nombrar un enchufe inteligente de la habitación de Lucas.
Este nombre de Entidad estará formado por el tipo de entidad (Dominio), seguido de un punto, luego la ubicación/habitación, el nombre del dispositivo y su posición en la habitación, útil sobre todo si hay dos dispositivos idénticos en la misma habitación, si no, podemos no poner nada.
Aquí hay varios ejemplos, piensa en uno y conviértelo en un hábito es una muy muy buena práctica.
Acceso al EDITOR de la Interfaz de Usuario IU
Dos opciones. Que actualice automáticamente por Home Assistant o tambien puedes empezar desde cero, tomando el control, para ello debes hacer clic en TOMAR EL CONTROL.
El Panel de Control se puede dividir en vistas/pestañas, es el primer filtro para organizar nuestros dispositivos (ojo que también puede haber más de un panel de control), pulsando en + se pueden añadir las que consideres.
He decidido crear varias vistas que son cada una de las ubicaciones de mi casa
Podemos configurar el nombre de la vista, darle un icono, URL y temas personalizados que solo aplicaran a esa tarjeta. Además, podemos ver otra forma y la más simple de mostrar una entidad: mediante ‘insignias’ (badge).
Las insignias (bagdes) no son más que una representación mediante un símbolo/icono de todos los sensores, botones que has situado en una determinada vista.
Añado dos entidades que vienen por defecto en mi instalación
Después de GUARDAR, si hago clic en cualquiera de las dos insignias, vemos que datos reales tenemos.
Finalmente, las Vistas quedan así.
El siguiente podría ser crear tarjetas (cards) que es otra manera de representar nuestros sensores, botones, estado y organizarlos etc.
Os pego la lista de todas las tarjetas de las que disponemos de forma nativa:
- Panel de alarma
- Botón
- Condición
- Entidades
- Entidad
- Filtro de entidades
- Medida
- Vistazo rápido
- Gráfico histórico
- Pila horizontal
- Humidificador
- Luz
- Mapa
- Markdown
- Control multimedia
- Imagen
- Elementos en imagen
- Entidad en imagen
- Medidas en imagen
- Estado de planta
- Sensor
- Lista de la compra
- Termostato
- Pila vertical
- Pronóstico del tiempo
- Página web
Instalación de complementos en Home Assistant
¿Qué es un Complemento?
Es un software adicional que se puede agregar a nuestro Home Assistant para obtener una funcionalidad adicional, hay algunos complementos específicos que requieres que tenga habilitado el modo avanzado en la instalación de su Home Assistant.
Los 5 que yo instalaría sin dudar:
- File Editor.
- SSH.
- HACS (Home Assistant community store).
- SAMBA.
- Home Assistant Google Drive Backup (snapshot).
Y como muestra un botón. Vamos a instalar File Editor, que nos servirá como ejemplo para los demás.
El primer sitio donde debemos de dirigirnos es al Supervisor.
Vemos que no tenemos ninguno instalado, clic en el botón de TIENDA DE COMPLEMENTOS
Un comentario: existen dos tipos de Complementos, los propios del equipo de Home Assistant y los de la Comunidad de Home Assistant, haz clic en cualquiera y podrás instalar el addon, así como la descripción, la documentación, lo que es, lo que hace etc.
File editor es una aplicación web que nos permite navegar por el sistema de ficheros de Home Assistant, abrir y modificar ficheros, aparte de tener incorporado un marcado de sintaxis, esto ayuda.
Clic en INSTALAR
Tres opciones, si queremos que se arranque con Home Assistant, si queremos que el servicio se reinicie si se cae y si queremos que aparezca en el panel lateral.
Por último clic en INICIAR.
Vemos que han aparecido dos vistas/pestañas más, el fichero de configuración y un registro donde podremos investigar posibles problemas de funcionamiento, el log de toda la vida.
También puedes abrir el File Editor
Esta sería la ventana de trabajo, podemos crear ficheros, modificarlos, o si pulsamos en el icono en forma de carpeta podemos ver los propios ficheros del sistema.
Finalmente abrimos un fichero.
Esta sería la dinámica para cualquier otro Complemento, fácil, ¿no?
Agregar Integraciones en Home Assistant
¿Qué son las integraciones en Home Assistant?
Home Assistant cuenta con un gran repertorio de integraciones oficiales y desarrolladas por la comunidad. Además, disponemos de HACS, un catálogo adicional de componentes desarrollados por terceros.
Básicamente, es añadir a Home Assistant dispositivos ya administrados por el propio fabricante, por ejemplo HUE de Phillips, bombillas inteligentes, que a través de una app para móvil podemos gestionar.
¿Y si pudiéramos gestionarlo desde Home Assistant?
Podríamos hacer que la bombilla inteligente interactuase con otros dispositivos (de otros fabricantes) conectados a nuestro Home Assistant, ¿ves las posibilidades?
Existen varias integraciones:
- Integraciones que se instalan desde la interfaz de Lovelace (mi ejemplo).
- Integraciones que se instalan desde YAML (MQTT por ejemplo).
- Integraciones de terceros (vía HACS por ejemplo).
Una muestra, ojo hay más de 1800, tela marinera https://www.home-assistant.io/integrations/ a destacar: MQTT Home Assistant, ESPHome, Zigbee Home Automation, con solo estos tres ya estamos desbordados, cientos de posibilidades.
Vamos a ver como ejemplo la integración con TADO que es un sistema para gestionar una caldera (compatible con OpenTherm) y todas las válvulas termostáticas de cada radiador.
Vamos allá, clic en Configuración, luego Integraciones.
Como ves anteriormente Home Assistant había descubierto mi sistema TADO, también aparece una integración con la propia RPI, un servicio meteorológico y el Supervisor.
Clic en CONFIGURAR en TADO, me pedirá usuario y clave de acceso a mi sistema TADO
Detecta todos mis dispositivos clic en TERMINAR.
Aquí puedes ver el resumen de lo descubierto:
Dispositivos
Entidades
Áreas
Si pinchas en algún dispositivo/entidad podemos ver datos reales
A partir de aquí quedaría ver como visualizar los datos que nos interesen en el Panel de Control, añado como ejemplo la temperatura de una zona que en TADO la tengo definida como Entrada.
Y quedaría así:
Resumen sobre Home Assistant
Bien, lo voy a dejar aquí, espero haber conseguido picaros un poco con Home Assistant, quitaros el miedo y sobre todo multiplicar vuestra curiosidad. Si ahora estás pensando en que sensores puedes instalar, donde y como los puedo relacionar, habré conseguido mi objetivo.
Hasta una próxima ocasión, Ciao.
Gracias a Depositphotos por la cesión de las imágenes.