Configuración del entorno
El ESP32 es el microcontrolador más popular en proyectos IoT. Tiene WiFi y Bluetooth integrados, dos núcleos de 240 MHz, 520 KB de RAM y más de 30 pines GPIO — todo por menos de 5 USD. En este tutorial configurarás el entorno completo para programarlo desde Windows.
¿Qué necesitas?
Sección titulada «¿Qué necesitas?»| Componente | Descripción |
|---|---|
| Placa ESP32 | Cualquier módulo ESP32 (DevKit V1, ESP32-WROOM, NodeMCU-32S, etc.) |
| Cable USB | Micro-USB o USB-C según tu placa — debe ser un cable de datos, no solo de carga |
| PC con Windows | Windows 10 o Windows 11 |
| Arduino IDE 2 | Descarga gratuita en arduino.cc |
Paso 1: Instalar Arduino IDE 2
Sección titulada «Paso 1: Instalar Arduino IDE 2»- Ve a https://www.arduino.cc/en/software
- Descarga Arduino IDE 2 para Windows (archivo
.exe) - Ejecuta el instalador — acepta los valores por defecto
- Abre Arduino IDE al finalizar
Paso 2: Instalar el driver CP2102 (chip USB-UART)
Sección titulada «Paso 2: Instalar el driver CP2102 (chip USB-UART)»La mayoría de placas ESP32 usan el chip Silicon Labs CP2102 para convertir USB a comunicación serie (UART). Sin este driver, Windows no puede comunicarse con la placa.
- Ve a la página oficial de Silicon Labs: https://www.silabs.com/software-and-tools/usb-to-uart-bridge-vcp-drivers?tab=downloads
- Descarga CP210x Windows Drivers (el paquete ZIP universal)
- Extrae el ZIP en una carpeta que puedas encontrar fácilmente, por ejemplo
C:\Drivers\CP210x - Conecta el ESP32 al PC con el cable USB
Instalar el driver desde el Administrador de dispositivos
Sección titulada «Instalar el driver desde el Administrador de dispositivos»- Abre el Administrador de dispositivos (
Win + X → Administrador de dispositivos) - Busca un dispositivo desconocido — aparecerá como “Dispositivo desconocido” o “CP2102 USB to UART Bridge Controller” con un ícono de advertencia ⚠️ bajo Otros dispositivos
- Haz clic derecho sobre ese dispositivo → Actualizar controlador
- Selecciona “Buscar controladores en mi equipo”
- Haz clic en Examinar… y navega hasta la carpeta donde extrajiste el ZIP (ej:
C:\Drivers\CP210x) - Asegúrate de que la casilla “Incluir subcarpetas” esté marcada
- Haz clic en Siguiente — Windows instalará el driver automáticamente
Verificar que el driver está instalado correctamente
Sección titulada «Verificar que el driver está instalado correctamente»Una vez instalado, en el Administrador de dispositivos expande Puertos (COM y LPT) y deberías ver:
Puertos (COM y LPT) └─ Silicon Labs CP210x USB to UART Bridge (COM3) ← ✅ listoSi el dispositivo sigue mostrando ⚠️ después de la instalación, verifica que seleccionaste la carpeta correcta con los archivos extraídos. Si no aparece ningún dispositivo nuevo al conectar el ESP32, prueba con otro cable USB — muchos cables baratos son solo de carga y no tienen los pines de datos.
Paso 3: Agregar soporte para ESP32 en Arduino IDE
Sección titulada «Paso 3: Agregar soporte para ESP32 en Arduino IDE»Por defecto Arduino IDE solo soporta placas Arduino. Para añadir soporte para ESP32 hay que agregar la URL del gestor de placas de Espressif.
3.1 Abrir preferencias
Sección titulada «3.1 Abrir preferencias»En Arduino IDE: Archivo → Preferencias (o Ctrl + ,)
3.2 Agregar la URL del gestor de placas
Sección titulada «3.2 Agregar la URL del gestor de placas»En el campo “URLs adicionales para el gestor de placas” pega esta URL:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.jsonSi ya tienes otras URLs en ese campo, haz clic en el ícono de lista a la derecha del campo y agrega la URL en una línea nueva.
Haz clic en OK para cerrar preferencias.
3.3 Instalar el paquete ESP32
Sección titulada «3.3 Instalar el paquete ESP32»- Ve a Herramientas → Placa → Gestor de placas (o haz clic en el ícono de placa en la barra lateral izquierda)
- En el buscador escribe
esp32 - Busca el paquete “esp32 by Espressif Systems”
- Haz clic en Instalar — descarga ~300 MB, puede tardar varios minutos
Paso 4: Seleccionar la placa y el puerto
Sección titulada «Paso 4: Seleccionar la placa y el puerto»Con el ESP32 conectado al PC:
- Herramientas → Placa → esp32 → ESP32 Dev Module (La mayoría de placas genéricas con ESP32-WROOM funcionan con esta selección)
- Herramientas → Puerto → COM3 (o el puerto que anotaste en el Paso 2)
Configuración recomendada para ESP32 Dev Module
Sección titulada «Configuración recomendada para ESP32 Dev Module»| Parámetro | Valor |
|---|---|
| Board | ESP32 Dev Module |
| Upload Speed | 921600 |
| CPU Frequency | 240MHz (WiFi/BT) |
| Flash Frequency | 80MHz |
| Flash Mode | QIO |
| Flash Size | 4MB (32Mb) |
| Partition Scheme | Default 4MB with spiffs |
| Core Debug Level | None |
| PSRAM | Disabled |
Paso 5: Verificar con el sketch Blink
Sección titulada «Paso 5: Verificar con el sketch Blink»Antes de subir cualquier código IoT, verifica que la comunicación con la placa funciona correctamente.
- En Arduino IDE abre Archivo → Ejemplos → 01.Basics → Blink
- Haz clic en ✓ Verificar (compilar) — debe terminar sin errores
- Mantén presionado el botón BOOT de tu placa ESP32
- Haz clic en → Subir
- Cuando aparezca
Connecting....en la consola, suelta el botón BOOT - Espera a ver
Hard resetting via RTS pin...— la carga fue exitosa
El LED integrado de la placa debería parpadear cada segundo.
Paso 6: Verificar comunicación serie
Sección titulada «Paso 6: Verificar comunicación serie»Abre el Monitor Serie (Ctrl + Shift + M) y configura la velocidad a 115200 baud.
Modifica el sketch Blink para que también imprima mensajes:
void setup() { Serial.begin(115200); pinMode(LED_BUILTIN, OUTPUT); Serial.println("ESP32 listo!");}
void loop() { digitalWrite(LED_BUILTIN, HIGH); Serial.println("LED encendido"); delay(1000); digitalWrite(LED_BUILTIN, LOW); Serial.println("LED apagado"); delay(1000);}Sube el sketch y observa el monitor serie — deberías ver los mensajes aparecer cada segundo.
Solución de problemas comunes
Sección titulada «Solución de problemas comunes»| Problema | Causa probable | Solución |
|---|---|---|
| Puerto COM no aparece | Driver no instalado o cable sin datos | Reinstalar driver CP2102; probar otro cable |
A fatal error occurred: Failed to connect | ESP32 no entra en modo de carga | Mantener BOOT presionado al subir |
| Compilación lenta la primera vez | Descarga de toolchain | Normal, esperar 2–5 minutos |
Sketch too big | Partition scheme muy pequeño | Cambiar a “Huge APP (3MB No OTA)“ |
| Monitor serie muestra caracteres extraños | Velocidad de baud incorrecta | Seleccionar 115200 en el monitor |
Próximos pasos
Sección titulada «Próximos pasos»Con el entorno configurado, continúa con:
- Conexión WiFi y publicación MQTT — conecta el ESP32 al broker Mosquitto y envía datos de sensores en tiempo real