Cómo comunicar ESP8266 con la red WiFi

Arduino IDE es un entorno de desarrollo que permite programar abstrayéndonos del hardware utilizado. De este modo no es necesario conocer los detalles de hardware de cada dispositivo, basta con instalar las librerías necesarias para la placa que estemos utilizando. Para descargar el instalador del IDE de Arduino, acceder a https://www.arduino.cc/en/Main/Software. La instalación es muy simple, solamente seguimos los pasos indicados por el instalador.

smart home sonoff
https://www.dpbolvw.net/click-100206359-14090791

Instalando las librerías

Para utilizar NodeMCU necesitamos instalar las librerías en el entorno Arduino. 

Vamos a https://github.com/esp8266/Arduino y en la sección “Installing with Boards Manager” están las instrucciones para agregar la librería. Básicamente, lo que dice es lo siguiente:

1 – Abrir el software Arduino e ir al menú Archivo → Preferencias y en el cuadro “Gestor de URL adicionales de tarjetas” agregar la siguiente url https://arduino.esp8266.com/stable/package_esp8266com_index.json. En el caso que ya haya otras tarjetas, las urls van separadas por coma. También se puede abrir una ventana haciendo clic en el botón de la derecha y agregando la url en un nuevo renglón, tal como se ve en la siguiente figura.

2 – Luego, vamos a Herramientas → Placa → Gestor de tarjetas, tal como se muestra en la figura siguiente.

En el gestor de tarjetas buscar ESP8266 o NodeMCU y aparecerá el paquete correspondiente. Hacemos click en el botón para instalar y el IDE bajará los paquetes desde Internet y los instalará en el entorno.

Accede al curso gratuito «Los 4 fundamentos en la gestión de dispositivos IoT»

Gestionando el hardware

Una vez instalada la placa, la seleccionamos en el menú, como se muestra en la figura siguiente. Debemos verificar que la placa que seleccionamos es la adecuada, de acuerdo al hardware que estamos utilizando.

Para poder comunicarse con la tarjeta desde Arduino es necesario saber en qué puerto está conectado. Si bien la conexión es por USB, se emula un puerto serie en 115200 baudios. Para identificar el número del puerto en Windows, se puede ir a Administrador de dispositivos → Puertos (COM y LPT). Generalmente es un puerto con numeración mayor a 3 (COM3, COM19, etc.). El número de puerto también puede cambiar si cambiamos la interfaz USB donde conectamos la placa.

Programando la placa

Ahora veremos cómo programar el ESP8266 para que pueda conectarse a la red WiFi. Para esto, modificamos el código siguiente con los parámetros de conexión de nuestra red WiFi, compilamos y enviamos el código a la placa.

 #include <ESP8266WiFi.h>

Luego especificamos los datos de acceso a la red WiFi

// Wifi: SSID y password
const char* WIFI_SSID = "Tud red WiFi”;
const char* WIFI_PASSWORD = "Tu clave WiFi";

En la función setup se establece la conexión con la red WiFi

void setup() {
  // Se setea la conexión serie
  Serial.begin(115200);

  // Se inicializa la conexión WiFi

  Serial.print("INFO: Conectando ");

  // Se establece el modo station, para que se conecte al AP WiFi
  WiFi.mode(WIFI_STA);
  Serial.println(WIFI_SSID);
  // Se inicia la conexión con los parámetros de la red
  WiFi.begin(WIFI_SSID, WIFI_PASSWORD);

  // Espera hasta conectar
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }

  Serial.println("");
  Serial.println("INFO: WiFi conectado");
  Serial.println("INFO: dirección IP: ");
  Serial.println(WiFi.localIP());
}

Una vez compilado y cargado el software, abrimos el monitor serie en el menú herramientas de Arduino y verificamos que la tarjeta se haya conectado a la red WiFi. En la consola podremos ver los datos de conexión que la tarjeta enviará por el puerto serie. Es posible que necesitemos reiniciar la tarjeta para ver estos mensajes, ya que si tardamos demasiado en abrir el monitor serie nos podemos perder la recepción de los mensajes, que solo se envían una vez.

Te invito a seguir experimentando y conectar el microcontrolador a la plataforma de Adafruit. Lo explico en este artículo.

1 comentario en «Cómo comunicar ESP8266 con la red WiFi»

  1. Pingback: MQTT vs HTTP - Qué elegir para tu proyecto IoT | IoT Consulting

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.