¿Qué es Node-RED?
Node-RED es una herramienta de desarrollo basada en flujos que permite conectar dispositivos y servicios de forma visual mediante un navegador web.
Creado originalmente por IBM, Node-RED está diseñado para facilitar la integración de servicios de IoT y automatización mediante una interfaz gráfica de arrastrar y soltar.
Node-RED permite crear nuestros “programas” mediante flujos de trabajo visuales a través una interfaz gráfica muy sencilla. Esto facilita la integración de diferentes servicios y dispositivos sin necesidad de escribir código extensivo.

Características principales de Node-RED,
- Interfaz visual: Utiliza una interfaz gráfica basada en navegador para diseñar flujos de trabajo.
- Arrastrar y soltar: Permite arrastrar nodos y conectarlos para definir la lógica del flujo.
- Integración: Soporta una amplia variedad de protocolos y servicios, como HTTP, MQTT, y más.
- Extensible: Ofrece una amplia gama de nodos para diferentes propósitos y permite la creación de nodos personalizados.
Para más información y recursos sobre Node-RED, puedes visitar la documentación oficial de Node-RED.
Instalación de Node-RED en Raspberry Pi
Para instalar Node-RED en nuestra Raspberry Pi, seguimos estos pasos. Como siempre, primero es recomendable actualizar los paquetes existentes en el sistema
sudo apt update sudo apt upgrade
Luego, instalamos Node-RED utilizando el script de instalación oficial proporcionado por el proyecto. Ejecutamos el siguiente comando para descargar e instalar Node-RED:
bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)
Este script se encargará de instalar Node.js (si no está ya instalado) y Node-RED en nuestra Raspberry Pi.
Para que Node-RED se inicie automáticamente al arrancar la Raspberry Pi, ejecutamos el siguiente comando:
sudo systemctl enable nodered.service
Finalmente, podemos iniciar Node-RED con el siguiente comando:
node-red
Si quieres probar en un ordenador, puedes instalarlo simplemente consudo npm install -g --unsafe-perm node-red
Uso Básico de Node-RED
Una vez instalado, puedes acceder a la interfaz de usuario de Node-RED desde un navegador web en la dirección http://<IP-de-tu-Raspberry-Pi>:1880. Aquí es donde construirás tus flujos de trabajo.

Para crear un flujo de trabajo en node-red, simplemente arrastramos los nodos que queremos utilizar desde la paleta de nodos en la izquierda de la pantalla y los conectamos entre sí.
Luego, podemos configurar cada nodo para que se adapte a nuestras necesidades específicas. Para ello hacemos click sobre él, y en la paleta de la derecha nos aparecerán las opciones disponibles.
Por ejemplo, si queremos leer el valor de un sensor y publicarlo en una red social, podríamos arrastrar un nodo de sensor, un nodo de publicación en redes sociales y conectarlos entre sí.
Luego, configuraríamos el nodo de sensor para leer el sensor específico que estemos utilizando y el nodo de publicación en redes sociales para conectarnos a nuestra cuenta de Twitter o Facebook.
Finalmente, una vez que hayamos creado nuestro flujo de trabajo podemos desplegarlo (ejecutarlo). Para ello hacemos clic en el botón “Deploy” para implementarlo y empezar a procesar datos.
También podemos acceder a los datos procesados y visualizarlos en gráficos y tablas utilizando los nodos de visualización disponibles en la paleta de nodos.
Ejemplo de Flujo de Trabajo
Vamos a crear un flujo simple que inyecte un mensaje y lo muestre en la consola de depuración:

Este flujo simplemente usa un nodo Inject para generar un texto que enviamos a Debug para visualizarlo. Por defecto, si no cambiamos la configuración, el modo Inject simplemente genera un Timestamp (la hora actual).
Ahora le damos encendemos la pestaña de Debug y le damos al botón de “Deploy” para desplegar el flujo. Cuando activemos el nodo “TimeStamp” (pulsando en el cuadradito azul que tiene a la izquierda) veremos que el mensaje aparece en la pestaña de Debug.

Integración de dispositivos
Node-RED es está muy bien integrado con Raspberry PI ya puede acceder directamente a sus GPIO para realizar lecturas o generar salidas.
Para ello antes deberemos instalar la biblioteca de arboles de nodos Raspberry Pi GPIO para controlar los pines GPIO de la Raspberry Pi:
- Abre el menú de nodos y busca “node-red-node-pi-gpio”
- Haz clic en “Instalar” para añadir este nodo a tu instancia de Node-RED
Una vez instalado.
Ahora, cuando envíes un mensaje desde el nodo “Inject”, el pin GPIO 17 cambiará de estado, encendiendo o apagando un LED conectado a él.

