ESP8266 - Controla un LED a través de la web
Este tutorial te enseña cómo controlar un LED a través de una interfaz web usando un navegador en una PC o un teléfono inteligente, utilizando el ESP8266. En detalle, el ESP8266 será programado para funcionar como un servidor web. Supongamos que la dirección IP del ESP8266 es 192.168.0.5. Aquí están los detalles de cómo funciona:
- Cuando ingresas 192.168.0.3 en el navegador, el navegador envía una solicitud al ESP8266, y el ESP8266 responde con una página web que contiene el botón de encendido/apagado para controlar el LED.
- De manera similar, cuando haces clic en el botón 'Encender' en la página web o escribes 192.168.0.3/led1/on en el navegador, el ESP8266 enciende el LED y responde con la página de control.
- Igualmente, cuando haces clic en el botón 'Apagar' en la página web o escribes 192.168.0.3/led1/off en el navegador, el ESP8266 apaga el LED y responde con la página de control.
Aprenderemos a través de dos ejemplos de código:
- El contenido HTML está incrustado en el código ESP8266
- El contenido HTML está separado del código ESP8266 y se guarda en un archivo .h
El tutorial ofrece los fundamentos que puedes personalizar de forma rápida e innovadora para lograr lo siguiente:
- Controlar múltiples LEDs a través de la web
- Rediseño de la interfaz de usuario de la web (UI)
Hardware Requerido
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Buy Note: Use the LED Module for easier wiring. It includes an integrated resistor.
Acerca de LED y ESP8266
Si no conoces LED y ESP8266 (disposición de pines, cómo funciona, cómo programar ...), aprende sobre ellos en los siguientes tutoriales:
Diagrama de Cableado

This image is created using Fritzing. Click to enlarge image
Para obtener m\u00e1s informaci\u00f3n, consulte Pines del ESP8266 y c\u00f3mo alimentar ESP8266 y otros componentes.
Código ESP8266 - El contenido HTML está incrustado en el código ESP8266
Pasos R\u00e1pidos
Para empezar con ESP8266 en el IDE de Arduino, siga estos pasos:
- Consulta el tutorial cómo configurar el entorno para ESP8266 en Arduino IDE si es la primera vez que usas ESP8266.
- Conecta los componentes como se muestra en el diagrama.
- Conecta la placa ESP8266 a tu computadora usando un cable USB.
- Abre el IDE de Arduino en tu computadora.
- Elige la placa ESP8266 correcta, como (p. ej. NodeMCU 1.0 (ESP-12E Module)), y su respectivo puerto COM.
- Copia el código anterior y ábrelo con el IDE de Arduino.
- Cambia la información de wifi (SSID y contraseña) en el código por la tuya.
- Haz clic en el botón Subir en el IDE de Arduino para cargar el código en el ESP8266.
- Abre el Monitor Serial.
- Consulta el resultado en el Monitor Serial.
- Verá una dirección IP, por ejemplo: 192.168.0.3. Esta es la dirección IP del servidor web ESP8266
- Abra un navegador web e introduzca uno de los tres formatos siguientes en la barra de direcciones:
- Tenga en cuenta que la dirección IP podría variar. Por favor, verifique el valor actual en el Monitor Serial.
- También verá la salida que se muestra a continuación en el Monitor Serial.
- Verifique el estado del LED
- Podrá ver la página web de la placa ESP8266 en el navegador web como se muestra a continuación

- Ahora puedes controlar el encendido y el apagado del LED a través de la interfaz web.
Código ESP8266 - El contenido HTML está separado del código ESP8266
Dado que una página web gráfica contiene una gran cantidad de contenido HTML, incrustarlo en el código ESP8266 como antes resulta inconveniente. Para abordar esto, necesitamos separar el código del ESP8266 y el código HTML en archivos diferentes:
- El código ESP8266 se colocará en un archivo .ino.
- El código HTML (incluyendo HTML, CSS y JavaScript) se colocará en un archivo .h.
Pasos R\u00e1pidos
- Abre el IDE de Arduino y crea un nuevo sketch. Dale un nombre, por ejemplo, newbiely.com.ino
- Copia el código de abajo y ábrelo con el IDE de Arduino
- Cambia la información de WiFi (SSID y contraseña) en el código por la tuya
- Crea el archivo index.h en Arduino IDE haciendo:
- Haz clic en el botón justo debajo del icono del monitor serie y elige Nueva pestaña, o usa las teclas Ctrl+Shift+N.
- Escribe el nombre del archivo index.h y haz clic en el botón Aceptar
- Copia el código de abajo y pégalo en el index.h.
- Ahora tienes el código en dos archivos: newbiely.com.ino y index.h
- Haz clic en el botón Subir en el IDE de Arduino para cargar el código al ESP8266
- Accede a la página web de la placa ESP8266 a través de un navegador web en tu PC o teléfono como antes. Verás algo similar al código anterior, como se muestra a continuación:
- Si modificas el contenido HTML en el index.h y no tocas nada en el archivo newbiely.com.ino, al compilar y subir el código al ESP8266, Arduino IDE no actualizará el contenido HTML.
- Para hacer que Arduino IDE actualice el contenido HTML en este caso, realiza un cambio en el archivo newbiely.com.ino (por ejemplo, agregar una línea en blanco, añadir un comentario...).
- Controlar múltiples LEDs a través de la web
- Rediseño de la interfaz de usuario web (UI)



※ Nota:
Puede personalizar de forma rápida e innovadora el código anterior para lograr lo siguiente: