Utilización de Node-RED para controlar las entradas/salidas del ESP8266/ESP32 y mostrar los datos de sensores en su interfaz.
El software Node-RED se ejecuta en una Raspberry Pi y la comunicación entre el ESP8266 y el software Node-RED se realiza a través del protocolo de comunicación MQTT.
Se programará el ESP32 usando Arduino IDE
Requisitos:
Primeros pasos con NodeRed y Raspberry Pi
La comunicación entre Arduino IDE y Node-RED a través del protocolo MQTT permite intercambiar datos y comandos entre un dispositivo basado en ESP8266 o ESP32 (programado con Arduino IDE) y un servidor Node-RED que se ejecuta en otra máquina, como una Raspberry Pi.
- Preparación del entorno:
- Asegurarse que Node-RED esté instalado y en funcionamiento en la máquina que actuará como servidor.
- Configurar un servidor MQTT y verifica que esté en funcionamiento en la misma máquina que Node-RED.
- Conecta tu ESP8266 o ESP32 a la red Wi-Fi para que pueda acceder al servidor MQTT.
- Uso de la librería PubSubClient en Arduino IDE:
- En Arduino IDE, instalar la librería PubSubClient para facilitar la comunicación MQTT.
- Configura tu dispositivo ESP8266 o ESP32 para conectarse a la red Wi-Fi y establecer una conexión con el servidor MQTT utilizando la dirección IP y el puerto correspondientes.
- Envío* de mensajes MQTT desde Arduino IDE:
- Una vez establecida la conexión MQTT, utilizar la función
client.publish()
para enviar mensajes al servidor Node-RED. - Define un «topic» específico para cada tipo de mensaje que desees enviar. Esto permitirá que el servidor Node-RED identifique y procese la información adecuadamente.
- Una vez establecida la conexión MQTT, utilizar la función
- Opcional: Recepción de mensajes MQTT en Arduino IDE*:
- Para recibir mensajes del servidor Node-RED, puedes utilizar la función
client.subscribe()
para suscribirte a ciertos «topics» MQTT desde tu código de Arduino. De esta manera, tu dispositivo puede recibir comandos o información desde el servidor.
- Para recibir mensajes del servidor Node-RED, puedes utilizar la función
- Configuración de Node-RED:
- En Node-RED, configurar el nodo MQTT para que se conecte al servidor MQTT que está en funcionamiento en la Raspberry Pi u otra máquina.
- Utiliza el nodo MQTT para escuchar los «topics» a los que tu ESP8266/ESP32 está publicando y/o suscrito.
- Procesamiento de mensajes en Node-RED:
- Una vez que Node-RED reciba los mensajes de un dispositivo ESP8266/ESP32, puedes procesarlos utilizando diferentes nodos para la lógica y la visualización. Esto te permitirá realizar acciones o presentar los datos recibidos según tus necesidades.
- Prueba y Depuración.