ESP32: todo lo que debes saber sobre esta potente placa de desarrollo
El ESP32 es un SoC con WiFi y Bluetooth integrados, ideal para IoT y proyectos embebidos. Te contamos especificaciones, variantes, casos de uso y cómo dar los primeros pasos.
ESP32: todo lo que debes saber sobre esta potente placa de desarrollo
El ESP32 es un sistema en chip (SoC) de bajo coste desarrollado por Espressif que incluye WiFi y Bluetooth (clásico y BLE) integrados, doble núcleo y una buena relación rendimiento/consumo. Se ha convertido en una de las plataformas más usadas para prototipado IoT, domótica, wearables y proyectos embebidos. En este artículo repasamos qué es exactamente, sus especificaciones, variantes, casos de uso y cómo empezar a programarlo.
¿Qué es el ESP32?
El ESP32 es un SoC de 32 bits basado en el microcontrolador Xtensa LX6 (en las versiones clásicas) o RISC-V (en series más recientes como ESP32-C). Incluye:
- Dos núcleos que pueden ejecutar código en paralelo (en la mayoría de variantes)
- WiFi 802.11 b/g/n integrado
- Bluetooth: clásico y Bluetooth Low Energy (BLE)
- SRAM y flash suficientes para aplicaciones con conectividad
- Periféricos variados: ADC, DAC, SPI, I2C, UART, PWM, sensores de touch, etc.
A diferencia de muchas placas que solo traen el microcontrolador y requieren módulos externos para WiFi o Bluetooth, el ESP32 lo lleva todo en el mismo chip, lo que simplifica el diseño y abarata el producto final. Por eso se usa tanto en educación como en productos comerciales.
Especificaciones principales
| Característica | Detalle típico (ESP32 original) |
|---|---|
| CPU | Dual-core Xtensa LX6 hasta 240 MHz |
| WiFi | 802.11 b/g/n, modo station/AP/station+AP |
| Bluetooth | BR/EDR y BLE 4.2 |
| SRAM | ~520 KB |
| Flash | Depende del módulo (4–16 MB habitual) |
| Tensión | 2.7–3.6 V (alimentación 3.3 V lógica) |
| Consumo | Muy bajo en modo sleep; activo según uso |
Las versiones más nuevas (ESP32-S2, S3, C2, C3, etc.) mejoran consumo, añaden USB nativo o más memoria según la gama. Para empezar, el ESP32 “clásico” (como el DevKit o NodeMCU-32S) sigue siendo una opción muy equilibrada.
Variantes y placas de desarrollo
No hay un solo “ESP32”: existen varias familias y, sobre cada chip, muchas placas de desarrollo (dev boards).
Familias de chip
- ESP32: el original, dual-core, WiFi + BT. Muy usado y bien documentado.
- ESP32-S2: un núcleo, sin Bluetooth, con USB. Orientado a aplicaciones con interfaz USB.
- ESP32-S3: dual-core, más RAM, WiFi + BLE 5.0, ideal para proyectos que piden más capacidad.
- ESP32-C3: un núcleo RISC-V, bajo coste, WiFi + BLE 5.0. Muy interesante para sustituir al ESP8266.
- ESP32-C6: WiFi 6 y Bluetooth 5, pensado para diseños más avanzados.
Placas de desarrollo habituales
- ESP32 DevKit / DOIT: la más común para aprender; trae el chip, regulador, conector USB y pines accesibles.
- NodeMCU-32S: formato similar al NodeMCU del ESP8266, con ESP32 por dentro.
- ESP32-CAM: ESP32 con cámara y slot para tarjeta SD; útil para videovigilancia o reconocimiento de imágenes.
- LOLIN32, TTGO, etc.: variantes con pantallas, batería o factor de forma concreto.
Para tus primeros proyectos suele bastar con un ESP32 DevKit genérico; luego puedes pasar a S3, C3 o CAM según lo que quieras hacer.
Casos de uso típicos
- Domótica: relés, sensores de temperatura/humedad, control de luces o persianas vía WiFi o BLE.
- Wearables y sensores: pulsómetros, podómetros, monitores de sueño, gracias al BLE y al bajo consumo en sleep.
- Gateways IoT: el ESP32 se conecta por WiFi a la nube o a un servidor local y habla por UART/SPI/I2C con otros dispositivos.
- Prototipado rápido: reemplazo del Arduino cuando necesitas WiFi o Bluetooth sin añadir shields.
- Audio: hay soporte para I2S y algoritmos de procesamiento; se usan en altavoces inteligentes o interfaces de voz.
- Seguridad y acceso: lectores de tarjetas, cerraduras inteligentes, presencia por Bluetooth.
La combinación WiFi + BLE en un solo chip permite, por ejemplo, configurar el dispositivo por WiFi desde una app y luego comunicarse por BLE con sensores o actuadores cercanos.
Cómo empezar: entornos de programación
Arduino IDE / PlatformIO
Puedes usar el Arduino IDE con el soporte de placas de Espressif (Gestor de tarjetas → “ESP32 by Espressif”). O PlatformIO (VS Code o IDE independiente), que suele ser más cómodo para proyectos con varias librerías.
Ventajas: sintaxis tipo Arduino, muchas librerías y ejemplos. Ideal para prototipar y aprender.
ESP-IDF
El ESP-IDF (Espressif IoT Development Framework) es el framework oficial en C. Ofrece más control sobre el hardware, FreeRTOS integrado y es el que usa Espressif para dar soporte a las últimas funciones del chip.
Suele usarse cuando el proyecto crece o cuando necesitas bajo consumo, múltiples tareas o características avanzadas de red.
MicroPython
MicroPython permite programar el ESP32 en Python. Tiene soporte para WiFi, BLE, GPIO, I2C, SPI, etc. Muy práctico para profesores, aficionados y prototipos donde priorizas velocidad de desarrollo sobre máximo rendimiento.
Ejemplo rápido: parpadeo y WiFi (Arduino)
Un “Hola mundo” típico es hacer parpadear un LED. Aquí un ejemplo que además se conecta a WiFi y deja el LED asociado al pin 2 parpadeando cada segundo:
#include <WiFi.h>
const char* ssid = "TU_WIFI";
const char* password = "TU_PASSWORD";
const int ledPin = 2;
void setup() {
Serial.begin(115200);
pinMode(ledPin, OUTPUT);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("\nConectado. IP: " + WiFi.localIP().toString());
}
void loop() {
digitalWrite(ledPin, HIGH);
delay(1000);
digitalWrite(ledPin, LOW);
delay(1000);
}
Sustituye TU_WIFI y TU_PASSWORD por los datos de tu red. En muchas placas el LED integrado está en el pin 2; si no, conecta un LED (con resistencia) a ese pin y GND.
Comparación rápida con otras placas
| Placa / chip | WiFi | Bluetooth | Núcleos | Comentario breve |
|---|---|---|---|---|
| ESP32 | Sí | Sí | 2 | Muy equilibrado, gran ecosistema |
| ESP8266 | Sí | No | 1 | Más limitado, muy económico |
| Arduino Uno | No* | No* | 1 | Sin conectividad integrada |
| Raspberry Pi Pico W | Sí | No | 2 | Buen rendimiento, ecosistema distinto |
* Con shields o módulos externos.
El ESP32 destaca cuando quieres WiFi y Bluetooth en la misma placa, buena cantidad de GPIO y un precio bajo, sin necesidad de un sistema operativo completo como en una Raspberry Pi.
Consejos prácticos
- Alimentación: usa 3.3 V para la lógica. Muchas dev boards incluyen regulador desde USB (5 V). No alimentes con 5 V directamente en los pines del chip.
- Niveles lógicos: el ESP32 es 3.3 V; conecta con cuidado sensores o módulos de 5 V (usa adaptadores de nivel si hace falta).
- Documentación: la documentación oficial de Espressif y los ejemplos del Arduino/ESP-IDF son la mejor referencia.
- Comunidad: hay miles de proyectos en GitHub y en foros (Reddit, ESP32 forum); suele ser fácil encontrar ejemplos para sensores, pantallas y protocolos.
Conclusión
El ESP32 es una placa de desarrollo muy versátil que combina WiFi, Bluetooth, doble núcleo y un ecosistema maduro (Arduino, ESP-IDF, MicroPython). Sirve tanto para aprender como para llevar prototipos a producto. Si quieres dar el salto del Arduino “pelado” a proyectos con conectividad o empezar en IoT con poco presupuesto, el ESP32 es una de las mejores opciones para tenerlo todo en una sola placa.