Referencia de pinout del ESP32-C3 Super Mini

El ESP32-C3 Super Mini es un ejemplo perfecto de cómo la tecnología actual puede concentrarse en un espacio extremadamente reducido. Este diminuto módulo, comparable al tamaño de un pulgar, está basado en el chip ESP32-C3 de Espressif, el cual ofrece capacidades de computación inalámbrica potentes en un formato compacto. Este avance es significativo en la familia ESP32, ya que sustituye la arquitectura Tensilica Xtensa de versiones anteriores por un procesador RISC-V de 32 bits, lo que abre la puerta a una mayor eficiencia y potencia.

Comprender el pinout del ESP32-C3 Super Mini es crucial para aprovechar al máximo este dispositivo. Cada pin tiene una función específica; conocerlas te permitirá construir circuitos de forma más efectiva, minimizar errores y maximizar el rendimiento de la placa en tus proyectos electrónicos.

El diseño del ESP32-C3 Super Mini facilita su uso en prototipos, con dos filas de ocho pines que proporcionan un total de 16 puntos de conexión. Este espaciado estándar de 2.54 mm asegura que el módulo se ajuste perfectamente a una placa de pruebas convencional o se integre sin problemas en una placa de circuito personalizada utilizando conectores regulares.

Antes de profundizar en las funciones de los pines, es importante mencionar que el pinout puede variar ligeramente según el fabricante, por lo que siempre se recomienda verificarlo con el mapeo del pin en la serigrafía de tu placa.

Índice de contenido
  1. Pines GPIO del ESP32-C3 Super Mini
    1. La Matriz GPIO y el IO MUX
    2. ¿Qué GPIOs del ESP32-C3 Super Mini son seguros de usar?
  2. Pines de interrupción del ESP32-C3 Super Mini
  3. Pines RTC GPIO del ESP32-C3 Super Mini
  4. Pines de strapping del ESP32-C3 Super Mini
  5. Pines ADC del ESP32-C3 Super Mini
  6. Pines PWM del ESP32-C3 Super Mini
  7. Pines I2C del ESP32-C3 Super Mini
  8. Pines SPI del ESP32-C3 Super Mini
  9. Pines UART del ESP32-C3 Super Mini
  10. Pines de alimentación del ESP32-C3 Super Mini
  11. Pines de funciones especiales del ESP32-C3 Super Mini

Pines GPIO del ESP32-C3 Super Mini

El ESP32-C3 Super Mini cuenta con 13 pines GPIO disponibles en sus conectores: GPIO 0 a GPIO 10, y GPIO 20 y GPIO 21. Es fundamental recordar que la microcontroladora opera estrictamente con lógica de 3.3V, por lo que nunca debes conectar los pines GPIO a una fuente de 5V, ya que esto podría dañar permanentemente la placa.

La Matriz GPIO y el IO MUX

Una de las características más destacadas del ESP32-C3 es su Matriz GPIO. Este sistema interno de enrutamiento permite asignar casi cualquier función digital, como PWM, I2C, SPI, UART, I2S o TWAI, a casi cualquier pin físico mediante simples cambios en el código. Sin embargo, este sistema flexible tiene sus limitaciones.

Los señales que pasan por la Matriz GPIO pueden experimentar un pequeño retraso. En la mayoría de los proyectos, este retraso es tan mínimo que no afecta el rendimiento. Sin embargo, para señales rápidas o análisis de señales analógicas sensibles, el ESP32-C3 utiliza el IO MUX, que conecta ciertos pines directamente a hardware específico dentro del chip.

Algunas conexiones son fijas y no pueden ser modificadas por software, mientras que otras pueden ser reconfiguradas. Las funciones que dependen del IO MUX incluyen los canales ADC, la interfaz de depuración JTAG interna, el controlador USB Serial/JTAG y las conexiones SPI de alta velocidad para la memoria flash integrada.

En términos simples, los pines de señal periférica del ESP32-C3 pueden clasificarse en:

  • Pines que pueden asignarse libremente mediante la Matriz GPIO.
  • Pines que deben permanecer conectados a funciones específicas debido al IO MUX.

¿Qué GPIOs del ESP32-C3 Super Mini son seguros de usar?

A pesar de que el ESP32-C3 Super Mini cuenta con muchos pines con diversas funciones, algunos de ellos pueden no ser adecuados para tus proyectos. La siguiente tabla muestra cuáles pines son seguros y cuáles deben usarse con precaución:

PinUso
SegurosPuedes utilizarlos sin preocupaciones.
Con precauciónSu comportamiento puede ser impredecible durante el arranque.

Pines de interrupción del ESP32-C3 Super Mini

El ESP32-C3 Super Mini permite la configuración de interrupciones en todos sus 13 pines GPIO accesibles por el usuario. Esto es esencial para aplicaciones que requieren respuesta rápida a eventos externos.

Los pines admiten cuatro modos de activación que determinan cuándo se activa la interrupción:

  • Flanco de subida.
  • Flanco de bajada.
  • Cambio de nivel.
  • Interrupción deshabilitada.

Pines RTC GPIO del ESP32-C3 Super Mini

Algunos pines GPIO del ESP32-C3 están conectados al sistema RTC (reloj en tiempo real) de bajo consumo. Estos pines se denominan RTC GPIOs y en el caso del Super Mini son GPIO 0, GPIO 1, GPIO 2, GPIO 3, GPIO 4 y GPIO 5.

Estos pines son especialmente útiles cuando el ESP32 está en modo de sueño profundo, ya que pueden despertar la placa ante eventos externos, como una pulsación de un botón o la detección de movimiento por un sensor PIR.

Los demás pines GPIO estándar solo pueden activar la placa desde un modo de sueño ligero.

Pines de strapping del ESP32-C3 Super Mini

El ESP32-C3 Super Mini dispone de tres pines de strapping: GPIO 2, GPIO 8 y GPIO 9. Estos pines juegan un papel importante en cómo el ESP32 arranca cuando se enciende o se reinicia.

Dependiendo del estado eléctrico de estos pines al inicio, el chip decide si debe iniciar normalmente (modo BOOT) o recibir un nuevo programa desde la computadora (modo FLASH).

En la mayoría de los casos, no es necesario preocuparse por estos pines, ya que la placa ya los establece correctamente. Sin embargo, si se conecta un componente externo a un pin de strapping, podrías cambiar accidentalmente el estado del pin durante el arranque.

Pines ADC del ESP32-C3 Super Mini

El ESP32-C3 integra dos ADCs de alto rendimiento: ADC1 y ADC2, que permiten a la placa leer voltajes analógicos desde sensores, como potenciómetros o sensores de temperatura. En la placa Super Mini, se disponen seis pines con capacidad de entrada analógica.

Los GPIO 0 a GPIO 4 pertenecen a ADC1, mientras que GPIO 5 pertenece a ADC2. Estos ADCs tienen una resolución de 12 bits, lo que significa que pueden dividir un voltaje entre 0V y 3.3V en 4096 pasos distintos.

Nota: Los cinco canales de ADC1 están calibrados de fábrica para precisión, mientras que el único canal de ADC2 no lo está y no puede usarse mientras el Wi-Fi esté habilitado. Por lo tanto, si tu proyecto requiere Wi-Fi y entrada analógica al mismo tiempo, es mejor utilizar los pines de ADC1.

Pines PWM del ESP32-C3 Super Mini

Todos los pines GPIO expuestos en el ESP32-C3 Super Mini (GPIO 0 a 10, más 20 y 21) pueden emitir señales PWM de alta resolución. Esto se logra a través de un controlador incorporado llamado LEDC (Controlador PWM para LED).

El LEDC tiene seis canales independientes, cada uno capaz de generar señales PWM con diferentes frecuencias y ciclos de trabajo. Esto lo hace útil no solo para atenuar LEDs, sino también para controlar motores y otros dispositivos que requieren salida PWM.

Pines I2C del ESP32-C3 Super Mini

El ESP32-C3 tiene un controlador I2C de hardware que puede operar en modo estándar (100 kbit/s), modo rápido (400 kbit/s) y velocidades superiores dependiendo de la capacitancia del bus. A diferencia de algunas funciones del ESP32-C3, el controlador I2C no está asignado a pines fijos de forma predeterminada, lo que permite que se mapee a cualquier pin GPIO mediante la Matriz GPIO.

Advertencia importante: Aunque muchos sitios web indican que SDA es GPIO 8 y SCL es GPIO 9, esta información es engañosa. Según el datasheet oficial de Espressif, el I2C no está conectado a pines GPIO específicos a nivel de chip.

Por lo tanto, es recomendable evitar usar GPIO 8 y GPIO 9 para I2C debido a que también son pines de strapping, que podrían interferir con el arranque del ESP32-C3. En su lugar, se sugiere remapear las conexiones I2C a pines más seguros.

Pines SPI del ESP32-C3 Super Mini

El ESP32-C3 cuenta con tres controladores SPI (SPI0, SPI1 y SPI2). Sin embargo, SPI0 y SPI1 están destinados a la comunicación interna con la memoria flash de 4 MB del chip, por lo que SPI2 es el único interfaz SPI utilizable en el ESP32-C3 Super Mini.

Por defecto, SPI2 se mapea a pines nativos, permitiendo establecer comunicaciones SPI con dispositivos externos.

Pines UART del ESP32-C3 Super Mini

El ESP32-C3 Super Mini incluye dos interfaces UART de hardware:

  1. Una conexión serie a través del puerto USB-C.
  2. La otra disponible a través de los pines UART físicos: TX en GPIO 21 y RX en GPIO 20.

Es fundamental indicar al entorno de desarrollo donde enrutar los datos serie mediante una configuración específica llamada "USB CDC On Boot". Si deseas leer mensajes de depuración en Serial.print() conectando un cable USB-C a tu computadora, asegúrate de que "USB CDC On Boot" esté habilitado.

Pines de alimentación del ESP32-C3 Super Mini

El ESP32-C3 Super Mini cuenta con varios pines de alimentación que son fundamentales tanto para alimentar la placa como para proporcionar energía a sensores, módulos y otros componentes externos.

El puerto USB tipo C es el principal medio para alimentar la placa. Al conectarla a una computadora o un adaptador de corriente USB, el puerto USB suministra 5V a un regulador de voltaje LDO a bordo, que reduce el voltaje a 3.3V, necesario para el funcionamiento del chip ESP32-C3.

El pin 5V permite alimentar el Super Mini desde una fuente externa, como una batería o adaptador, lo que es ideal para proyectos independientes. La tensión de entrada para este pin debe estar entre 4.3V y 6.0V, y al igual que con la alimentación USB, el regulador de a bordo reduce este voltaje a 3.3V.

Advertencia importante: El Super Mini está diseñado para ser lo más pequeño y económico posible, lo que significa que carece de circuitos de seguridad internos para gestionar múltiples fuentes de alimentación simultáneamente. Nunca debes suministrar energía al pin de 5V mientras el cable USB esté conectado, ya que esto puede causar daños permanentes tanto al puerto USB de tu computadora como al propio Super Mini.

El pin 3V3 se utiliza según cómo se use. Generalmente, cuando la placa se alimenta a través de USB o el pin de 5V, actúa como salida, proporcionando 3.3V para alimentar sensores. Sin embargo, si se conecta una fuente externa muy estable de 3.3V, este pin puede usarse como entrada, eludiendo el regulador de la placa.

Pines de funciones especiales del ESP32-C3 Super Mini

El Super Mini incluye un LED de estado incorporado conectado a GPIO 8, útil para depurar visualmente tu código. Este LED opera con lógica invertida: poner el pin en LOW enciende el LED, mientras que ponerlo en HIGH lo apaga.

Además, junto al puerto USB, hay dos pequeños botones táctiles que se utilizan para reiniciar la placa y para ingresar manualmente al bootloader:

Botón BOOT (GPIO 9): Al mantener este botón presionado, se fuerza la lógica de strapping a un estado físico LOW, haciendo que el ESP32-C3 entre en modo bootloader.

Botón RESET (CHIP_PU): Este botón corta brevemente la energía a la lógica digital, deteniendo inmediatamente el microcontrolador y forzándolo a reiniciar.

Estos dos botones se pueden utilizar juntos para entrar en el Modo Bootloader, que permite subir firmware. Para hacerlo manualmente:

  1. Mantén presionado el botón BOOT.
  2. Pulsa brevemente y suelta el botón RESET.
  3. Finalmente, suelta el botón BOOT.

Normalmente, solo necesitarás hacer esto la primera vez que conectes la placa a tu computadora, aunque algunos usuarios encuentran que deben repetir este proceso cada vez que desean cargar un nuevo código.

Carlos Julián

Carlos Julián es el fundador de Ingtelecto, es Ingeniero Mecatrónico, Profesor y Programador, cuenta con una Maestria en Ciencias de la Educación, creador de contenido educativo en redes sociales. Lee más sobre mi trayectoria aquí.

Estos temas te pueden interesar

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Tu puntuación: Útil

Subir