Cómo instalar Node-RED en una Raspberry PI para su asistente de hogar inteligente


Node-RED es una herramienta gráfica que permite crear flujos para automatizaciones domésticas inteligentes. Muchos utilizan Node-RED en combinación con Home Assistant, que es una plataforma de automatización del hogar de código abierto, para obtener lo mejor de ambos mundos. La forma más común de conectar Node-RED y el Asistente de Casa es a través del complemento, en este artículo te voy a mostrar una forma alternativa que te dará mucha más flexibilidad y control.

Para instalar Node-RED en una Raspberry PI, necesitarás tener instalado el sistema operativo Raspberry PI (formalmente conocido como Rasbian), luego conectarte vía terminal y ejecutar algunos comandos para extraer e instalar Node.js y Node-Red. Para conectarse al asistente doméstico y a Node-RED es necesario generar un token de larga duración en HA y añadirlo en la configuración del servidor en los nodos de node red. En este punto puede importar sus flujos desde el JSON, que creó previamente.

Al final de este post, ¡tendrás una instancia de Node-RED en funcionamiento en tu IP!

QUÉ NECESITO PARA HACER ESTE PROYECTO

  • Raspberry pi, al menos la versión 3b+
  • Cable Ethernet
  • Tarjeta SD de 32 GB
  • Lector de tarjetas si su PC no tiene uno
  • Alimentación

CÓMO INSTALAR EL SISTEMA OPERATIVO DE RASPBERRY PI

Coge la tarjeta SD y ponla en tu ordenador, utiliza un lector de tarjetas si no tienes una ranura SD.

Ahora descarga el Raspberry PI Imager aquí -> https://www.raspberrypi.org/software/ puedes instalarlo en Mac, Windows o Ubuntu.

Una vez instalada la impresora de imágenes, es el momento de instalar el sistema operativo.

Haz clic en "elegir el sistema operativo" y selecciona Raspberry PI 32-bit.

Ahora haz clic en "elegir almacenamiento" y busca la tarjeta SD, busca la marca de la tarjeta y la memoria que has comprado. Recuerde que esto BORRAR todo el contenido de la tarjeta. En mi ejemplo, el medio lector de tarjetas SD de APPLE.

Haga clic en escribir, este proceso tardará hasta 5 minutos.

HABILITAR SSH EN RASPBERRY PI

En esta etapa necesitamos conectarnos a tu raspberry pi con un ordenador, antes de poder hacerlo necesitamos usar un terminal en Mac o CMD en Windows vía SSH.

Ve a un editor de texto y crea un archivo vacío con el ssh (sin extensión), y guárdalo en la tarjeta sd. Si ya no puedes ver la tarjeta SD es posible que haya sido expulsada, simplemente conéctala de nuevo. (compruebe que el archivo no tiene un . txt al final).

Ahora estamos listos para expulsar nuestra tarjeta SD y ponerla en nuestra Raspberry PI. Conecte la IP a un cable ethernet y a una fuente de alimentación.

ENCONTRAR LA DIRECCIÓN IP DE RASPBERRY PI

Para poder interactuar con la IP vamos a necesitar encontrar la dirección IP de la misma. Esto será diferente en función del router que tengas en casa. Yo uso una configuración Unifi, así que me conecto a mi controlador Unifi, voy a la lista de dispositivos y busco la frambuesa pi. Si no lo encuentras, intenta buscar el tiempo de actividad. Una vez que hayas encontrado la ip, la mía es 192.168.1.81 puedes ponerle una dirección fija (esto es recomendable pero también es un paso opcional).

Mi dirección IP fija es 192.168.1.82, que cambié de la dirección por defecto que tenía asignada.

INSTALAR NODE-RED EN RASPBERRY PI

Abra un terminal en su PC y escriba lo siguiente:

ssh pi@192.168.1.82

Reemplaza tu dirección ip en lugar de la mía. La contraseña por defecto es frambuesa.

Ahora podemos instalar node-red, esto también instalará node.js para nosotros

bash 

NODO DE INICIO ROJO

Para iniciar el nodo rojo podemos hacerlo de dos maneras:

  1. Iniciarlo manualmente cada vez nosotros mismos
  2. Añadirlo como servicio
#Run manually
node-red-pi —max-old-space-size=256
#Add as a service
sudo systemctl enable nodered.service

Sólo necesitarás una de las anteriores, yo activaría el servicio y reiniciaría la IP.

Ahora debería ver esto en su pantalla con información sobre cómo acceder al nodo rojo.

Para conectarse al nodo rojo, abra un navegador y escriba lo siguiente:

https://{your_pi_ip_address}:1880 –> https://192.168.1.82:1880.

Por eso es importante tener una dirección IP fija, para que no cambie cada vez que la IP se reinicie.

AÑADIR LA PALETA DEL ASISTENTE DE CASA A NODE-RED

En el nodo-rojo vaya al menú de configuración de la derecha y haga clic en la paleta de gestión.

Ve a la pestaña de instalación y escribe esto: node-red-contrib-home-assistant-websocket

home assistant web socket pallette

Ahora, en la parte izquierda puedes ver todos los nodos del asistente de hogar. Los que uso son el servicio de llamadas, el estado actual, los eventos, todos los eventos en el estado.

CREAR UN TOKEN DE ACCESO DE LARGA DURACIÓN EN HOME ASSISTANT

Para conectar el asistente doméstico al nodo-rojo necesitamos un token de larga duración.

  1. Ve al asistente de inicio, haz clic en tu nombre de usuario.
  2. Desplácese en la parte inferior, haga clic en crear token.
  3. Dale un nombre a tu token y cópialo y pégalo en un lugar seguro.

No compartas tu token, si crees que lo has hecho bórralo y genera uno nuevo.

token

Ahora ve al nodo-rojo y busca un nodo de asistente de hogar, desmarca la opción "Uso el complemento de asistente de hogar" e introduce lo siguiente:

URL base -> La URL de su asistente en casa.

Access Token -> el token que acabamos de generar.

FLUJOS DE IMPORTACIÓN Y EXPORTACIÓN DEL NODO ROJO

Si ya tienes instalado node-red, probablemente en el complemento del asistente de casa, yo exportaría los flujos y los importaría en el nuevo sistema. Ve al menú de configuración, haz clic en exportar, haz clic en JSON y copia al portapapeles.

the export node red flow

Ahora ve a tu nuevo sistema node-red y vaya al mismo menú, esta vez elija la importación y pegue el JSON.

import node red flow

Ahora, al final, tenemos que hacer algo de limpieza.

En primer lugar, haz clic en un nodo del asistente doméstico y comprueba si tienes varios servidores o no. Elimine el vinculado al complemento si lo tiene.

Último punto, puede que necesites añadir más paletas dependiendo de lo que tuvieras en tu sistema anterior.

RESUMEN

Ahora deberías tener un sistema node-red corriendo en una raspberry pi, esta pi tendrá que estar siempre encendida para que puedas usar node red. Tome la precauciĆ³n de eliminar el complemento del asistente de casa una vez que esté seguro del nuevo sistema.

No dudes en contactarme, y hazme saber si el rendimiento de tu Node-red ha mejorado o no, seguro que el asistente en casa funcionará más rápido sin el complemento Node Red.

NODO CURSO ROJO

¿Qué es lo que hay que saber sobre el nodo rojo y cómo utilizarlo en la domótica?

Entradas recientes