Si tuviera que quedarme con un solo entorno para el ESP32, sería este. PlatformIO convierte VS Code en un IDE de verdad: build, upload, monitor y depuración, con la configuración del proyecto en un fichero de texto.
Instalación
- Instala VS Code.
- En Extensions, busca PlatformIO IDE e instálala.
- Espera a que termine de preparar el toolchain la primera vez.
Y ya. PlatformIO se encarga de descargar compiladores y herramientas por ti.
Crear un proyecto
PlatformIO Home → New Project: nombre, placa (Espressif ESP32 Dev Module) y
framework (Arduino o ESP-IDF). La estructura que genera:
mi-proyecto/
├── platformio.ini # configuración
├── src/main.cpp # tu código
└── lib/ # librerías propiasplatformio.ini: el corazón
[env:esp32dev]
platform = espressif32
board = esp32dev
framework = arduino
monitor_speed = 115200
upload_speed = 921600
Cambiar de placa es cambiar una línea. Esto es oro cuando tienes varios proyectos:
[env:s3]
platform = espressif32
board = esp32-s3-devkitc-1
framework = arduino
monitor_speed = 115200
[env:c3]
platform = espressif32
board = esp32-c3-devkitm-1
framework = arduino
Eliges el entorno en la barra inferior y subes.
Subir y monitorizar
En la barra de estado:
- ✓ Build — compila.
- → Upload — compila y sube.
- 🔌 Serial Monitor — abre el monitor a los baudios que pusiste.
O desde la terminal:
pio run -t upload
pio device monitorLibrerías por proyecto
En lugar de instalarlas globalmente, las declaras:
lib_deps =
adafruit/Adafruit BME280 Library@^2.2.4
knolleary/PubSubClient@^2.8
Ventaja enorme: el proyecto lleva sus propias versiones. Si mañana una librería rompe, tu código sigue igual.
Depuración
Con una placa que lo soporte (ESP32-S3/C3) y una sonda JTAG:
debug_tool = esp-builtin
Y ya tienes puntos de ruptura de verdad, no printf. Es el salto de calidad
cuando el proyecto crece.
Lo que me gusta (y lo que no)
A favor: un entorno para casi todo, configuración versionable, dependencias por proyecto, debugging real, multiplataforma.
En contra: la primera compilación descarga mucho; y si eres nuevo, hay más conceptos que en el Arduino IDE.
Resumen
- Instala PlatformIO IDE en VS Code y olvídate del resto.
- Toda la configuración vive en
platformio.ini(versionable). lib_depsfija las librerías por proyecto, no globalmente.- Cambiar de placa es cambiar una línea: ideal para tener un
envpor variante. - Con JTAG tienes depuración real.
Siguiente paso: VS Code + ESP-IDF si vas a fondo con el SDK oficial. O vuelve al hub de la serie.