Utilizar ESP-01 como periférico WiFi en ArduinoBlocks (parte I)

El módulo ESP-01 basado en el microcontrolador ESP8266 es una opción sencilla y económica para añadir conectividad WiFi a nuestro Arduino
 La opción más sencilla y recomendada es utilizar un adaptador para facilitar la conexión serie a nuestro Arduino:



De esta forma sólo necesitamos conectar los pines VCC,GND del adaptador y los pines RX, TX para recibir y enviar información a dos pines de Arduino (similar a un módulo Bluettoth HC-06).

El módulo viene preconfigurado para funcionar a 115200 bps por lo que sólo sería posible conectarlo a los pines 0,1 de Arduino para utilizar el puerto serie hardware. Si queremos utilizarlo en otros pines (para no interferir en la programación y no tener que estar desconectando cada vez) debemos reprogramarlo, para funcionar a 9600 bps por ejemplo.

Reprogramación del módulo ESP-01 para funcionar a 9600 bps

A partir de este momento ya podemos trabajar  con el módulo en cualquier pin de Arduino, en nuestro caso utilizaremos los pines 2,3

Utilizando los bloques MQTT vamos a realizar un programa de prueba para enviar la temperatura y humedad medida con un sensor DHT-11 a través del servidor gratuito iot.eclipse.org  y visualizaremos los datos en un móvil o tablet con un cliente MQTT




Al utilizar un servidor gratuito sin seguridad (no tenemos ni usuario ni clave) cualquier usuario que se suscriba a los mismos "topics" podrá visualizar nuestros datos, pero para pruebas es una buena primera opción.

Vamos a definir 2 topics:

Para la temperatura: ab/iot1/temperatura
Para la humedad: ab/iot1/humedad 



(Se debe especificar el SSID y clave de la red WiFi correctamente)

Importante: La comunicación WiFi necesita procesar datos continuamente, por lo que debemos evitar bloques tipo "esperar" o condiciones de bloqueo, por lo que utilizaremos el bloque "ejecutar cada"

Una vez subido, nuestro Arduino debería conectarse a la red WiFi y publica los datos al servidor MQTT cada 5s

Configuración de un cliente MQTT en Android:

Utilizaremos la aplicación MQTT Dash, donde configuraremos una conexión con el servidor iot.eclipse.org y añadiremos una suscripción a los mismos topics para visualizar los datos publicados

https://play.google.com/store/apps/details?id=net.routix.mqttdash&hl=es_419


Definir la conexión al servidor MQTT:


Definir los componentes y asociarlos a un "topic" del que recibirán la información

En este caso creamos componentes del tipo "text"


Una vez definido todos los componentes (temperatura y humedad)  y sus topics, ya podemos visualizar los datos en el panel principal:






Comentarios

Entradas populares de este blog

Publicar y almacenar datos en Internet con ThingSpeak

Gráficos y animaciones en pantallas OLED i2c

Dashboard MQTT con Adafruit IO y ArduinoBlocks