Módulo 1

Instalación de toolchains y drivers

Configuración del entorno de desarrollo para ESP32

ESP32 Mecatrónica IoT UNAM

Introducción a Toolchains y Drivers

Para desarrollar aplicaciones con ESP32, es esencial configurar correctamente el entorno de desarrollo. Las toolchains son conjuntos de herramientas que incluyen compiladores, enlazadores y debuggers necesarios para convertir tu código fuente en programas ejecutables para el microcontrolador.

Los drivers actúan como puente de comunicación entre tu computadora y el ESP32, permitiendo la carga de programas y la comunicación serial para depuración.

ESP32 DevKit

Placa de desarrollo con convertidor USB-Serial integrado

Drivers USB

CP2102, CH340, FTDI para comunicación serie

Toolchain

Xtensa GCC para compilación y enlazado

Instalación por Sistema Operativo

Windows
Arduino IDE:
  1. Descargar Arduino IDE 2.0+
  2. Instalar driver CP210x o CH340
  3. Añadir URL del ESP32 en preferencias
  4. Instalar paquete ESP32
PlatformIO:
  1. Instalar VS Code
  2. Instalar extensión PlatformIO
  3. Crear proyecto ESP32
Linux
Bash
# Ubuntu/Debian
sudo apt update
sudo apt install python3-pip
pip3 install esptool

# Arduino IDE
wget https://downloads.arduino.cc/arduino-ide/...

# Añadir usuario a grupo dialout
sudo usermod -a -G dialout $USER
macOS
Bash
# Usando Homebrew
brew install --cask arduino-ide
brew install esptool

# Instalar driver USB
# CP210x desde Silicon Labs
# CH340 desde WCH

Configuración Arduino IDE para ESP32

A continuación, los pasos detallados para configurar Arduino IDE:

1. Añadir URL del Board Manager

En Archivo → Preferencias, agregar:

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

2. Instalar ESP32 Board Package

En Herramientas → Placa → Board Manager:

  • Buscar "ESP32"
  • Instalar "ESP32 by Espressif"
  • Seleccionar placa ESP32

Programa de Verificación

Código para verificar que la instalación fue exitosa:

C++ - Arduino
/*
  Test de Instalación ESP32
  Verifica que la toolchain esté funcionando
*/

void setup() {
  Serial.begin(115200);
  delay(2000);
  
  // Información del chip
  Serial.println("\n=== ESP32 Installation Test ===");
  Serial.printf("Chip Model: %s\n", ESP.getChipModel());
  Serial.printf("Chip Revision: %d\n", ESP.getChipRevision());
  Serial.printf("CPU Cores: %d\n", ESP.getChipCores());
  Serial.printf("CPU Frequency: %d MHz\n", ESP.getCpuFreqMHz());
  Serial.printf("Flash Size: %d bytes\n", ESP.getFlashChipSize());
  Serial.printf("Free Heap: %d bytes\n", ESP.getFreeHeap());
  Serial.printf("SDK Version: %s\n", ESP.getSdkVersion());
  
  // Test de GPIO
  pinMode(2, OUTPUT); // LED integrado
  Serial.println("\nTest GPIO: LED integrado parpadeando...");
}

void loop() {
  digitalWrite(2, HIGH);
  Serial.println("LED ON");
  delay(1000);
  
  digitalWrite(2, LOW);
  Serial.println("LED OFF");
  delay(1000);
}

Ejercicios Prácticos

1

Instalación Completa del Entorno

Principiante 45 min

Objetivo: Instalar y configurar completamente Arduino IDE para ESP32

Pasos:

  1. Descargar e instalar Arduino IDE 2.0+
  2. Instalar drivers USB necesarios
  3. Configurar Board Manager para ESP32
  4. Verificar instalación con programa de test
2

Comparación de IDEs

Intermedio 30 min

Objetivo: Instalar y comparar Arduino IDE vs PlatformIO

Actividades:

  • Crear el mismo proyecto en ambos IDEs
  • Comparar tiempos de compilación
  • Analizar características de debugging
  • Evaluar facilidad de uso

Troubleshooting Común

Problemas Comunes
ESP32 no detectado
  • Verificar driver USB instalado
  • Probar diferente cable USB
  • Cambiar puerto COM/ttyUSB
Error de compilación
  • Verificar Board Package instalado
  • Seleccionar placa correcta
  • Actualizar librerías
Comandos Útiles
# Verificar puertos disponibles
# Windows
mode

# Linux/Mac
ls /dev/tty*

# Test de comunicación
esptool.py --port COMx chip_id

# Reset manual
esptool.py --port COMx --baud 115200 run

Referencias y Recursos Adicionales