← Volver al blog

ESP32 desde cero: conectar la placa a Arduino IDE y primer programa

ESP32 real y monitor serie Arduino IDE, primer programa

ESP32 desde cero: instalar Arduino IDE, conectar la placa y ejecutar el primer programa

En este primer laboratorio documentamos nuestra experiencia real: identificamos una placa ESP32 de 30 pines, instalamos el soporte de Espressif, seleccionamos el puerto COM3 y verificamos nuestro primer mensaje serie.

Material y equipo

Utilizamos una placa de desarrollo genérica de 30 pines, con serigrafía ESP-32 en el módulo y ESP32S en la parte trasera, conexión Micro-USB, botones EN y BOOT y un equipo Windows. La denominación ESP32S impresa detrás no implica que sea una ESP32-S2 o S3. El puente USB-serie parece de la familia CP210x, pero no confirmamos el modelo exacto.

ESP32 real: cara frontal, módulo ESP-32, botones EN/BOOT y Micro-USB.
ESP32 real: cara frontal, módulo ESP-32, botones EN/BOOT y Micro-USB.
Serigrafía trasera ESP32S de la placa utilizada.
Serigrafía trasera ESP32S de la placa utilizada.

Configuración paso a paso

1. Conectar la placa y detectar el puerto

Al conectarla por USB, Arduino IDE mostraba COM3 Serial Port (USB), pero no reconocía la placa: «NO BOARDS FOUND». Que aparezca un puerto no significa que el soporte para compilar ESP32 esté instalado.

Puerto COM3 visible, ninguna placa disponible.
Puerto COM3 visible, ninguna placa disponible.

2. Instalar el soporte oficial de Espressif

En Boards Manager buscamos «esp32» y elegimos esp32 by Espressif Systems, no Arduino ESP32 Boards. En nuestra prueba instalamos la versión 3.3.12 y el registro confirmó «Plataforma esp32:esp32@3.3.12 instalada». La versión disponible cuando leas esto puede ser otra.

Boards Manager: paquete de Espressif antes de instalar.
Boards Manager: paquete de Espressif antes de instalar.
Core Espressif 3.3.12 instalado.
Core Espressif 3.3.12 instalado.

3. Elegir el modelo adecuado

En Select Board → Select Other Board and Port elegimos ESP32 Dev Module y COM3. No seleccionamos ESP32S2 Dev Module, ESP32S3 Dev Module ni ESP32P4 Dev Module, porque son familias distintas. La barra de estado confirmó «ESP32 Dev Module on COM3».

Resultados de búsqueda: variantes ESP32 diferentes.
Resultados de búsqueda: variantes ESP32 diferentes.
ESP32 Dev Module en COM3.
ESP32 Dev Module en COM3.

4. Escribir y cargar el primer sketch

Guardamos el programa como lab00_serial.ino, pulsamos Upload y esperamos a que terminara. La consola mostró 100 %, verificación de hash correcta y «Done uploading». No tuvimos que usar BOOT en esta carga.

// Zwart Apps - ESP32 desde cero
// LAB 00: Primera comunicacion serie

void setup() {
  Serial.begin(115200);
  delay(1000);

  Serial.println("================================");
  Serial.println("ZWART APPS - ESP32 LAB 00");
  Serial.println("ESP32 iniciado correctamente");
  Serial.println("================================");
}

void loop() {
  Serial.println("Hola desde mi ESP32!");
  delay(2000);
}
Escritura y verificación del firmware completadas.
Escritura y verificación del firmware completadas.

5. Comprobar el monitor serie

Abrimos Tools → Serial Monitor y seleccionamos 115200 baud. Vimos el encabezado de bienvenida y el mensaje «Hola desde mi ESP32!» repetido cada dos segundos. La segunda captura incluye las líneas normales del arranque POWERON_RESET y SPI_FAST_FLASH_BOOT.

Monitor serie a 115200 baud con mensajes reales.
Monitor serie a 115200 baud con mensajes reales.

Problemas observados y soluciones

  • Sin placas disponibles: instalar el paquete esp32 by Espressif Systems. Puerto detectado y placa no reconocida son cosas diferentes.
  • Caracteres ilegibles al abrir el monitor serie: aparecieron brevemente en nuestra primera captura y luego el texto correcto. Pueden deberse a datos de arranque o una sincronización de velocidad; no se verificó la causa concreta. Comprobar que el monitor está a 115200 baud.
  • Si aparece «Connecting…» y no progresa en otra placa, se puede intentar mantener BOOT durante el inicio de la conexión y soltarlo cuando comience la transferencia. No fue necesario en nuestra prueba.

Resultado del laboratorio

Prueba realizada con éxito: compilación, grabación, verificación y recepción de datos serie confirmadas. El próximo laboratorio será controlar un LED externo con un GPIO, una resistencia y una protoboard, tras verificar el material real del kit. Está previsto grabar un vídeo de esta configuración, pero todavía no está publicado.