Home Assistant es una plataforma de automatización del hogar basada en software libre que se ejecuta en una computadora y le permite controlar y automatizar dispositivos del hogar, como luces, cerraduras, electrodomésticos y más. Home Assistant se puede integrar con una amplia variedad de dispositivos y servicios, como Amazon Alexa, Google Home y muchos otros, y puede ser controlado a través de una interfaz web o a través de una aplicación móvil. Es una herramienta muy útil para aquellos que quieren tener control sobre sus dispositivos del hogar y automatizar tareas repetitivas.
Home Assistant es por tanto un software de código abierto que le permite monitorear dispositivos IoT en su hogar que además, puede crear automatización fácilmente. Por ejemplo, cuando la temperatura es inferior a 21 grados, puede enviar una notificación a su dispositivo móvil. Además, puede hacer funcionar su calentador si tiene un calentador conectado.
Algunos ejemplos de lo que puede hacer con Home Assistant incluyen:
Encender o apagar las luces de la casa de manera automática cuando se active o desactive un sensor de movimiento.
Abrir o cerrar las persianas de manera automática cuando se active o desactive un sensor de luz.
Encender o apagar la calefacción de manera automática cuando la temperatura del hogar suba o baje por debajo de un cierto umbral.
Recibir notificaciones cuando se abra o cierre una puerta o ventana.
Controlar los electrodomésticos de la casa, como la lavadora o el horno, a través de una interfaz web o una aplicación móvil.
Como puede ver, hay muchas cosas que puede hacer con Home Assistant, y esta es solo una pequeña muestra. Si tiene dispositivos inteligentes en su hogar o está interesado en automatizar tareas y procesos, Home Assistant puede ser una herramienta muy útil para usted.
Existen varias formas de instalar Home Assistant, dependiendo de su plataforma y preferencias personales. A continuación se presentan algunas opciones comunes:
Instalación en un ordenador con sistema operativo de escritorio: Para instalar Home Assistant en un ordenador con sistema operativo de escritorio (como Windows, MacOS o Linux), primero debe descargar el instalador del sitio web oficial de Home Assistant. A continuación, siga las instrucciones del instalador para completar la instalación.
Instalación en una Raspberry Pi: Home Assistant se puede instalar en una Raspberry Pi, que es un ordenador de bajo costo y tamaño reducido. Para hacerlo, primero debe instalar el sistema operativo Raspberry Pi en una tarjeta SD, luego descargar e instalar Home Assistant siguiendo las instrucciones del sitio web oficial.
Instalación en una nube: Si prefiere no tener que administrar su propio ordenador, puede instalar Home Assistant en un servicio en la nube como Google Cloud, Amazon Web Services o Azure. Esto le permitirá acceder a Home Assistant desde cualquier lugar y en cualquier momento, pero también implicará ciertos costos de suscripción.
Instalación en un contenedor: Si prefiere una instalación más ligera y fácil de actualizar, puede instalar Home Assistant en un contenedor, como Docker. Esto le permitirá ejecutar Home Assistant en cualquier plataforma compatible con Docker sin tener que preocuparse por la instalación y configuración del sistema operativo.
En la practica, en la mayoría de los casos, Home Assistant se suele instalar en una Raspberry pi como se muestra en el documento oficial . Sin embargo, en este post vamos ver cómo instalar en su ordenador y de un modo terriblemente sencillo usando docker compose.
Comencemos por crear el directorio myproject. En este directorio, cree un subdirectorio llamado config. Debería tener un árbol que se parezca a:
| myproject
| -- docker-compose.yaml
| -- config
Ahora agregue el archivo docker-compose.yaml a la carpeta myproject.
Cree su cuenta usando un nombre de usuario y contraseña
Agregue su ubicación si está interesado en ver datos meteorológicos
Luego haga clic en finalizar
Debería aparecer una página de inicio similar a la siguiente:
Estos son lo pasos para continuar con la configuración del asistente doméstico:
Haga clic en Configuration, en la parte inferior izquierda.
Ir a Integrations
Haga clic en el +botón en la parte inferior derecha.
Aparecerá un modal con la lista de dispositivos compatibles, haga clic en esphome.
Agregue la dirección IP de su ESP32, deje el puerto en 6053.
Haga clic en finalizar.
Ahora tienes un ESPhome configurado correctamente.
Agregar datos a la página de inicio
Una vez que haya configurado un dispositivo ESPhome, ahora puede agregar los datos que proporciona a su página de inicio. Por ejemplo, si su dispositivo está conectado al termómetro Xiaomi Mijia, el objetivo podria server los datos de temperatura y humedad, por lo tendría que seguir los siguientes pasos:
Haga clic en Configuration, en la parte inferior izquierda.
Ir a Devices.
Haga clic en su dispositivo.
En la parte inferior Entidades, haga clic en Add to Lovelace.
Finalmente, regrese a la página de inicio y controle la temperatura de su sala de estar desde la página de inicio.
Acceso a la temperatura desde el exterior
Vigilar su casa cuando está adentro es importante, pero también lo es cuando está afuera.
En primer lugar, abra el puerto 8123 en su router y reenvíelo al host del asistente doméstico.
Descargue la aplicación Home Assistant para Android o iOS .
Hemos hablado o en este blog de Node MCU, una plataforma de prototipado rápido para el desarrollo de proyectos IoT que esta basada en el chip ESP8266, el cual se ha extendido enormemente debido a su facilidad para desarrollar proyectos open source que pueden además pueden involucrar el IoT . Viene con conectividad WiFi integrada ( gracias al chip ESP8266) y puede ser programada a través de una conexión USB utilizando un lenguaje de programación como Arduino o Lua. Además, la placa NodeMCU cuenta con una serie de pines de entrada/salida (GPIO) que se pueden utilizar para conectar y controlar dispositivos externos ( sin embargo, sólo posee una entrada/salida analógica pero para eso podemos optar por el ESP32). Es una opción popular para proyectos de Internet de las cosas (IoT) debido a su bajo costo, facilidad de uso y porque integra capacidades de comunicación via WiFi , conteniendo en su interior un microprocesador que puede ser programado fácilmente. Obviamente, ante todo, no podemos perder de vista su bajisimo precio (menos de 10€ ) comparados con otras opciones, pues no debemos olvidar que incluye el modulo wifi integrado y un bus GPIO para conectar dispositivos de E/S
Por otro lado, Tasmota es un firmware alternativo para dispositivos de Internet de las cosas (IoT, por sus siglas en inglés). Se utiliza principalmente para dar soporte a dispositivos domésticos inteligentes, como interruptores y enchufes inteligentes, luces y termóstatos.
Como amigo lector se puede imaginar, Tasmota es una opción popular entre los usuarios de IoT debido a su flexibilidad y facilidad de uso, y también porque es open source y puede ser modificado y mejorado por cualquier persona.
Tasmota es soportado por muchísimos fabricantes que ofrecen soluciones de IoT a medida, en este post vamos a ver como es bastante fácil instalar Tasmota en una placa node-mcu y de este modo simplificar mucho su uso.
Configuración inicial de Node-MCU
Antes de configurar Tasmota, si empezamos por primera vez debemos realizar los típicos pasos de preparar el entorno de desarrollo, instalar los drivers y probar la placa.
Estos pasos a seguir para conectar un ESP8266 son los siguientes:
Instalación del IDE de Arduino .Si aun no lo tiene instalado, se puede hacer desde aqui
Es necesario instalar el controlador USB requerido en su ordenador para que pueda programar el ESP8266. Independientemente de la opción de firmware que elijamos, primero necesitamos comunicarnos con la placa de desarrollo ESP-12E utilizando la interfaz USB de su ordenador.
El módulo USB a Serial UART incluido en la placa es Silicon Labs ‘CP2012, un módulo de comunicación inalámbrico que se utiliza para conectar dispositivos a través de una conexión USB. Este módulo es compatible con una amplia variedad de protocolos de comunicación, incluyendo Bluetooth, Zigbee y Thread, lo que lo hace ideal para aplicaciones de Internet de las cosas (IoT). Además, el módulo CP2012 viene con una placa de desarrollo de hardware que se puede utilizar para probar y desarrollar aplicaciones que utilicen el módulo. Es una opción popular para aquellos que quieren conectar dispositivos de manera inalámbrica de manera fácil y económica.
Antes de nada generalmente necesitamos instalar los controladores de puerto COM virtual (VCP) fácilmente disponibles para su sistema operativo específico. Una vez instalado, debemos verificar que el CP2102 sea reconocido por su ordenador.
Una vez que el controlador está instalado, podemos conectar el cable USB al puerto USB de su ordenador y la placa. Después de hacerlo, deberíamos ver el mensaje: software del controlador del dispositivo instalado correctamente.
Además, podemos verificar manualmente que todo funcione correctamente siguiendo estos pasos:
Abra el Administrador de dispositivos (disponible a través del Panel de control → Sistema y seguridad → Administrador de dispositivos en la sección Sistema).
Debajo de la entrada Puertos (COM & LPT), debe haber un puerto abierto llamado USB-SERIAL CP2102 (COM) donde hay un número típicamente mayor o igual a 3.
Ahora que estamos listos para comunicarnos con nuestro ESP8266 a través del CP2102, podemos explorar algunas de las diferentes opciones de firmware disponibles.
Conecte un cable usb de datos al ESP8266.
Seleccione Herramientas –>ESP8266 y ahi la placa que haya comprado. En caso de haberla comprado en Amazon aqui seleccione NodeMCU 1.0 (ESP-12EModule).
En el IDE de Arduino, vaya al menú de herramientas, seleccionada su placa y elija el puerto al que está conectado su ESP8266.En el ejemplo es el COM11
Ahora copie el siguiente código para probar que puede subir y que el node-mcu funciona . Copie desde el entorno de arduino las siguintes lineas y ejecute el código en la placa :
/*ESP8266 Led Parapadeante*/
void setup() { pinMode(LED_BUILTIN, OUTPUT);// Initializa el pin de LED_BUILTIN como salida
}
void loop() {// la función de bucle se repite una y otra vez para siempre
digitalWrite(LED_BUILTIN, LOW);// encienda el LED
delay(1000); //Espera de 1 segundo
digitalWrite(LED_BUILTIN, HIGH);// Apague el LED haciendo que el voltaje sea ALTO
delay(2000); //Espere dos segundos para dejar apagado LED
}
Como puede apreciar , el código ejecuta un bucle infinito en el que pone el estado bajo un segundo (encendiendo el led) para posteriormente forzar a nivel alto dos segundos(apagando el led ) y así indefinidamente gracias al bucle que se repite indefinidamente.
El LED azul en el módulo ESP – 01 está conectado a GPIO 1, (que también es el pin TXD, por lo que no podemos usar Serial.print () al mismo tiempo), si todo va bien debería parpadear el led interno. Tenga en cuenta que el nivel de voltaje es BAJO pero en realidad el LED está encendido, porque es bajo en el ESP. En este código se usa LED_BUILTIN para encontrar el pin con el LED interno de modo.
INSTALACION SW DE TASMOTA
Tasmota es un firmware especial para los microcontroladores fabricados por la empresa Espressif con los micros ESP8266, ESP32, ESP32-S o ESP32-C3.
Si ha trabajado alguna vez con el IDE de Arduino, después de elegir la placa con la que va a trabajar y escribir su código, lo ha subido a una placa ESP8266, en ese momento hemos creado un firmware, (bueno en realidad es el IDE Arduino quien junta todas las piezas y crea el firmware para posteriormente subirlo a la memoria de la placa).
Ahora que ya sabemos de qué se trata un firmware sigamos con Tasmota. Soporta una gran cantidad de dispositivos ya fabricados en el mercado, como los de SONOFF o TUYA, pero también los que podemos construir, por ejemplo, con un Wemos D1 Mini.
Se integra vía MQTT (MQ Telemetry Transport) con cualquier controlador, por ejemplo, Home ssistant, Jeedom, openHab. MQTT que es un protocolo muy fácil de implementar que hace que las maquina hablen entre ellas y que es un estándar en el Internet de las Cosas (IoT).
MQTT (Message Queuing Telemetry Transport) es un protocolo de red diseñado para la conectividad de dispositivos y redes de sensores de baja potencia y ancho de banda. Se utiliza a menudo en aplicaciones de Internet de las cosas (IoT) debido a su eficiencia y facilidad de uso.
En MQTT, los dispositivos se conectan a un servidor central llamado «broker» y se suscriben a «temas» específicos. Los dispositivos también pueden publicar mensajes a estos temas. Cuando se publica un mensaje a un tema, todos los dispositivos suscritos al tema recibirán el mensaje. Esto permite que los dispositivos se comuniquen entre sí de manera eficiente y sin tener que estar constantemente conectados al servidor central.
MQTT es un protocolo de red ligero y fácil de implementar, lo que lo hace ideal para aplicaciones en las que la potencia y la banda ancha son limitadas.
Algunos ejemplos de controladores que soportan MQTT:
Una vez conectado el dispositivo de una de las dos opciones anteriores, solo nos queda subir el firmware de Tasmota. Estas son algunas opciones más útiles:
Tasmotizer: si solo utiliza Tasmota en tu entorno esta es la opción correcta
Backup Automático antes de subir el código, así poder restaurar el firmware original del fabricante.
Subir imágenes .bin al dispositivo, que se descargan automáticamente
Envío de configuración wifi, MQTT etc. Para no tener que conectarnos de nuevo al dispositivo.
Recoger la IP del dispositivo, Tasmota avisa que esta opción depende del estado del dispositivo y que puede no funcionar.
Para Windows existe un ejecutable, para MAC o Linux debe hacerse con Python y se instala desde el terminal.
ESP-Flasher: herramienta multiplataforma basada en esptool.py, disponible para MAC y Windows, la puede descargar en este enlace ESP-Flasher.
Resumida pues para instalar Tasmota en una placa NodeMCU, necesitaremos seguir los siguientes pasos :
Descargue e instale el Arduino IDE en su ordenador.
Abre el Arduino IDE y ve a «Archivo» -> «Preferencias».
Cierre la ventana de preferencias y ve a «Herramientas» -> «Placa» -> «Gestor de tarjetas».
Busque «esp8266» en el gestor de tarjetas y selecciónalo. Haga clic en «Instalar» para instalar el soporte para la placa NodeMCU.
Descargue la última versión de Tasmota desde el sitio web oficial.
Descomprima el archivo .zip descargado y copie el contenido en una carpeta en su ordenador.
Abra el Arduino IDE y selecciona «Archivo» -> «Abrir» para abrir el archivo «tasmota.ino» que se encuentra en la carpeta de Tasmota.
Conecte la placa NodeMCU a tu ordenador a través del cable USB.
Vaya a «Herramientas» -> «Placa» y selecciona «NodeMCU 1.0 (ESP-12E Module)».
Vaya a «Herramientas» -> «Puerto» y seleccione el puerto al que está conectada la placa NodeMCU.
Haga clic en el botón «Cargar» para cargar Tasmota en la placa NodeMCU.
Una vez que Tasmota se haya cargado correctamente en la placa NodeMCU, estará listo para configurar y utilizar la placa con el software Tasmota. Estos son los pasos a seguir para instalar Tasmota en su node-mcu .
En cuanto ejecutemos el codigo tasmota.ino enos deberia aparecer la ventana siguinte:
Podria haber problemas
Una vez seleccionada la placa debemos borrar el fw existente:
Nos pedirá confirmación antes de borrar el dispositivo:
Tardara un rato en completar la instalación, que ira apareciendo conforme se vaya instalando:
En unos segundos debería aparece el mensaje de concluida la instalación:
Concluida la instalación tenemos la opción de acceder al interfaz del propio Tasmota o abandonar:
Si todo va bien nos aparece el interfaz de Tasmota con todas las opciones disponibles
Antes de nada debemos acceder al menú configuración, para configurar los parámetros de red:
Una vez configurado, podemos guardar , configuración o resetear y a partir de aqui disfrutar de todas la opciones posibles
Resumen
Para instalar Tasmota en un dispositivo IoT, primero deberemos descargar el firmware Tasmota y guardarlo en su ordenador. Luego, deberá conectárse al dispositivo IoT utilizando una herramienta de programación como el Puente de Servicio de Firmware (FSP) o el monitor de puerto serie. A continuación, deberá cargar el firmware Tasmota en el dispositivo siguiendo las instrucciones del fabricante.
A continuación se presentan los pasos generales que debe seguir para instalar Tasmota:
Descargar el firmware Tasmota y guárdelo en su ordenador.
Conecte el dispositivo IoT a su ordenador utilizando un cable de programación, como un cable USB-TTL o un cable FTDI.
Abra el Puente de Servicio de Firmware (FSP) o el monitor de puerto serie.
Seleccione el puerto correcto en el Puente de Servicio de Firmware o el monitor de puerto serie.
Cargue el firmware Tasmota en el dispositivo siguiendo las instrucciones del fabricante.
Una vez que el proceso de carga del firmware haya finalizado, deberá configurar Tasmota siguiendo las instrucciones del fabricante. Esto puede incluir la conexión del dispositivo a tu red Wi-Fi y la configuración de parámetros adicionales.
Recuerde que los pasos específicos para instalar Tasmota pueden variar según el dispositivo IoT que esté utilizando. Es importante seguir las instrucciones del fabricante para asegurarse de que el proceso de instalación se realice correctamente.
Debe estar conectado para enviar un comentario.