Qué pines están libres
Los GPIO 0, 1, 3, 4, 5, 6, 7 y 10 no tienen ninguna función en el arranque. Los GPIO del 4 al 7 son también los pines JTAG, que solo necesitas con un depurador externo, porque la placa se programa y se depura por el USB del propio chip. Los GPIO 18 y 19 llevan esa conexión USB y no están en el conector.
GPIO 2, 8 y 9: pines de strapping
El ESP32-C3 lee estos tres pines en el reset. El GPIO9 tiene un pull-up y va al botón BOOT: si está en BAJO durante el reset, entra en modo de descarga. El GPIO8 debe estar en ALTO para el modo de descarga y en la mayoría de las placas controla el LED azul. Espressif recomienda mantener el GPIO2 en ALTO durante el reset. Los tres funcionan como pines normales cuando el programa ya corre; solo evita conectar algo que los fuerce a BAJO al encender.
| GPIO | Valor en el reset | Qué elige | En la práctica |
|---|---|---|---|
| 2 | Sin conectar | No decide el arranque, pero Espressif recomienda un pull-up | Mantenlo en ALTO durante el reset |
| 8 | Sin conectar | Debe estar en ALTO para entrar en modo de descarga | No lo mantengas en BAJO al encender |
| 9 | Pull-up débil (ALTO) | Modo de arranque: ALTO ejecuta el programa, BAJO entra en modo de descarga | Botón BOOT; nada más debe mantenerlo en BAJO |
GPIO 20 y 21: UART0
Son el RX y el TX de la UART0 del chip. La programación va por el puerto USB nativo, y que Serial use el USB o estos pines depende de la opción «USB CDC On Boot» de Arduino-ESP32. En el reset, los mensajes de arranque de la ROM salen por el GPIO21.
Entradas analógicas y deep sleep
El ADC1 está en los GPIO del 0 al 4. El GPIO5 está en el ADC2, que ESP-IDF y Arduino-ESP32 no admiten en el ESP32-C3, así que haz las lecturas analógicas en los GPIO del 0 al 4: también funcionan con el Wi-Fi encendido. Solo los GPIO del 0 al 5 pueden despertar al chip del deep sleep.
Alimentación y clones
La placa toma 5 V del USB-C o del pin 5V y tiene un pequeño regulador de 3,3 V. No hay ningún circuito que separe las dos fuentes de 5 V, así que no conectes las dos a la vez. El regulador y su corriente cambian de un fabricante a otro, con valores de 250 a 500 mA en los documentos de los vendedores, así que da a las cargas grandes su propia alimentación. Muchas placas tienen además una antena cerámica floja: si el alcance del Wi-Fi es malo, la culpa suele ser de la antena, no del chip.
El dibujo sigue cada fila desde el extremo del USB. Los rótulos están impresos por detrás, así que la fila que queda a la izquierda o a la derecha depende del lado desde el que mires: comprueba los rótulos de tu placa.
Tabla completa de pines de la ESP32-C3 SuperMini
| Pin | GPIO | Estado | Analógico | Funciones | Notas |
|---|---|---|---|---|---|
| L8 | GPIO0 | Libre | ADC1_CH0 | RTC_GPIO0, PWM (LEDC), XTAL_32K_P | cristal de 32 kHz |
| L7 | GPIO1 | Libre | ADC1_CH1 | RTC_GPIO1, PWM (LEDC), XTAL_32K_N | cristal de 32 kHz |
| L6 | GPIO2 | Con cuidado | ADC1_CH2 | RTC_GPIO2, PWM (LEDC) | strapping |
| L5 | GPIO3 | Libre | ADC1_CH3 | RTC_GPIO3, PWM (LEDC) | Sin restricciones |
| L4 | GPIO4 | Libre | ADC1_CH4 | RTC_GPIO4, PWM (LEDC), MTMS (JTAG) | JTAG, SPI SCK |
| R1 | GPIO5 | Libre | ADC2_CH0 | RTC_GPIO5, PWM (LEDC), MTDI (JTAG) | ADC2 no admitido, JTAG, SPI MISO (RX) |
| R2 | GPIO6 | Libre | No | PWM (LEDC), MTCK (JTAG) | JTAG, SPI MOSI (TX) |
| R3 | GPIO7 | Libre | No | PWM (LEDC), MTDO (JTAG) | JTAG, SPI CS |
| R4 | GPIO8 | Con cuidado | No | PWM (LEDC) | strapping, LED, I²C SDA |
| R5 | GPIO9 | Con cuidado | No | PWM (LEDC) | strapping, botón BOOT, I²C SCL |
| R6 | GPIO10 | Libre | No | PWM (LEDC) | Sin restricciones |
| R7 | GPIO20 | Con cuidado | No | PWM (LEDC), U0RXD | UART0, UART RX |
| R8 | GPIO21 | Con cuidado | No | PWM (LEDC), U0TXD | UART0, UART TX |
Pines por defecto de la SuperMini en Arduino-ESP32: I²C en 8 (SDA) y 9 (SCL), SPI en 4 (SCK), 5 (MISO), 6 (MOSI) y 7 (SS), UART en 20 (RX) y 21 (TX). Con la GPIO matrix puedes moverlos a cualquier pin.
Preguntas frecuentes
¿En qué GPIO está el LED de la ESP32-C3 SuperMini?
En el GPIO8 en la mayoría de las placas. Se enciende cuando el pin está en BAJO, así que digitalWrite(8, LOW) lo enciende. El GPIO8 también es un pin de strapping, lo que para un LED no es problema. Los clones varían, así que compruébalo con un sketch de parpadeo.
¿Cómo pongo la ESP32-C3 SuperMini en modo de descarga?
Mantén pulsado BOOT (GPIO9), pulsa y suelta RESET y luego suelta BOOT. Si la carga falla porque tu sketch se colgó o reconfiguró el USB, así el chip vuelve a su bootloader.
¿Qué pines de la ESP32-C3 SuperMini son analógicos?
Los GPIO del 0 al 4, en el ADC1. El GPIO5 está en el ADC2, que no se admite en el ESP32-C3, así que no sirve para lecturas analógicas.
¿Cuáles son los pines I2C y SPI de la ESP32-C3 SuperMini?
En Arduino-ESP32 la placa SuperMini usa el GPIO8 para SDA y el GPIO9 para SCL, y los GPIO 4, 5, 6 y 7 para SCK, MISO, MOSI y SS. Los GPIO 8 y 9 son pines de strapping, pero los pull-up del I²C los mantienen en ALTO, que es justo lo que necesita un arranque normal.
¿Los pines de la ESP32-C3 SuperMini toleran 5 V?
No. Los GPIO del ESP32-C3 trabajan a 3,3 V y no están garantizados para 5 V. Para señales de 5 V usa un conversor de nivel o un divisor resistivo.