Chiquito y barato con wifi y bluetooth. En general, va correctamente.
El serial monitor solo funciona si en el IDE se activa "Herramientas / USB CDC on Boot --- Activado"
Parece que tiene solo dos GPIO para I2C. la 8 y la 9. Pero no es verdad, funciona bien con cualquier otro par de patillas. MEJOR NO GASTAR LA 8 PORQUE ES LA DEL LED INTEGRADO (azu) y entonces no deja de parpadear y consumir electricidad.
PERO: Si es para gastar wifi, mejor no comprar.
Después de muchas pruebas claude.ia me dice esto:
ESP8266 (NodeMCU, Wemos D1 Mini) → El más maduro, 10+ años de desarrollo
ESP32 clásico (DevKit v1, DOIT) → Muy estable desde core 2.0.x
ESP32-S2 → Bueno, pero menos usado (menos código probado)
ESP32-S3 → Muy bueno desde core 2.0.9+
ESP32-C3 ← ESTÁS AQUÍ → Problemas conocidos:
PMF (802.11w) incompatible en core 2.x
Necesita setSleep(false) obligatorio
Bugs en cores 3.1.x - 3.3.x
Sensible a canales WiFi altos
DHCP lento/falla a veces
Arquitectura nueva (RISC-V vs Xtensa) → menos testing
Chip más barato → hardware WiFi más limitado
Lanzado 2021 → menos tiempo de maduración vs ESP32 (2016)
Soporte core inestable → bugs nuevos en cada versión
Bluetooth LE (mejor que ESP32 clásico)
Consumo bajo (ideal para batería)
USB nativo (no necesita chip UART externo)
GPIO/I2C/SPI → Sin problemas
Pero WiFi es su talón de Aquiles.
✅ ESP32 DevKit v1 → WiFi rock-solid, abundante código probado
✅ ESP8266 NodeMCU → El más probado, barato, simple
Úsalo para proyectos sin WiFi o con Bluetooth LE
O acepta el "ritual" de configuración WiFi (PMF, setSleep, core específico)
ESP32-S3 (versión nueva, WiFi mejorado) o ESP32 clásico
Tiene menos patas accesibles
Tiene sólo un I2C implementado. Pero por software se puede tener otro (más lento)
Primera precaución para que funcione serial monitor: en el IDE hay que activar
"Herramientas / USB CDC on Boot --- Activado"
Según una IA: con eso el Serial va por el USB directamente. Sin esa opción el Serial.println no llega al monitor.
Porque son arquitecturas diferentes:
ESP32 clásico — tiene un chip USB-UART dedicado en la placa (el CP2102 o CH340). Ese chip convierte el Serial del ESP32 a USB de forma transparente, sin que el firmware tenga que hacer nada especial.
ESP32-C3 — no tiene ese chip externo. El USB lo gestiona directamente el propio microcontrolador por software (USB-CDC nativo). Por eso hay que decirle explícitamente en la compilación que active esa función, de ahí la opción USB CDC On Boot.
Es más integrado y barato (un chip menos en la placa), pero requiere esa configuración extra.