ESP32-C3

Espressif SystemsMCU 32-bitarduino

⚡ Lo esencial en 60 segundos

El ESP32-C3 representa un punto de inflexión significativo en el mundo de los sistemas embebidos y el Internet de las Cosas, al ser el primer microcontrolador de Espressif Systems basado en la arquitectura de conjunto de instrucciones abierta RISC-V. Anunciado en 2020 y producido en volumen entre 2021 y 2022, este componente fue diseñado con un objetivo claro: ofrecer una alternativa de bajo coste y alta eficiencia energética para reemplazar al popular ESP8266, manteniendo la compatibilidad con el ecosistema ESP32. Su posicionamiento como el SoC (System on Chip) de menor precio con conectividad Wi-Fi y Bluetooth 5 lo ha convertido en una opción atractiva tanto para principiantes como para profesionales que buscan optimizar costos en proyectos de producción masiva. Aunque la fecha exacta de su anuncio no está verificada en la página oficial del producto, su impacto en el mercado es innegable, con precios de chip que rondan los dos dólares estadounidenses en grandes volúmenes y módulos o placas de desarrollo, como las variantes "SuperMini", que a menudo se encuentran por menos de tres dólares.

Desde el punto de vista técnico, el corazón del ESP32-C3 es un procesador de núcleo único de 32 bits basado en la arquitectura RISC-V RV32IMC, capaz de funcionar a frecuencias de hasta 160 MHz. Para entender esta cifra, es útil recordar que la frecuencia de reloj indica cuántos ciclos de procesamiento puede realizar el chip por segundo; 160 millones de ciclos son suficientes para la mayoría de las tareas de control, sensores y comunicación en tiempo real. Además del núcleo principal, el chip incluye un coprocesador RISC-V de ultra bajo consumo que opera a 20 MHz, diseñado específicamente para gestionar el ahorro de energía cuando el sistema principal está inactivo. La memoria interna consta de 400 KB de SRAM, una memoria rápida y volátil donde se ejecutan las instrucciones y se almacenan los datos temporales, junto con 384 KB de ROM para el código de arranque y 24 KB adicionales de SRAM de bajo consumo. En cuanto al almacenamiento, el chip utiliza memoria flash SPI, ya sea integrada en el paquete o externa, con capacidades que van desde 2 hasta 16 MB, siendo 4 MB la configuración típica en módulos como el ESP32-C3-MINI-1.

La conectividad es uno de los pilares fundamentales de esta tarjeta. El ESP32-C3 soporta Wi-Fi 802.11 b/g/n en la banda de 2.4 GHz y Bluetooth 5 de baja energía (BLE). Es crucial destacar que, a diferencia de otros modelos, este chip no soporta Bluetooth Clásico, lo que limita su uso para transmisión de audio de alta calidad, pero lo hace ideal para sensores, balizas y dispositivos de control. La versión BLE 5 incluye funciones avanzadas como "Long Range" (alcance extendido mediante PHY codificado) y soporte para redes malla (Mesh), permitiendo crear redes de dispositivos que se comunican entre sí sin necesidad de un punto de acceso centralizado. Sin embargo, es importante aclarar una confusión común: el ESP32-C3 no posee radio 802.15.4, por lo que no puede funcionar como dispositivo final Zigbee o Thread de forma autónoma; en esos escenarios, actúa únicamente como el host o pasarela Wi-Fi que se comunica con otro chip especializado.

En el ámbito de las entradas y salidas, el chip ofrece 22 pines GPIO programables, lo que significa que sus funciones pueden configurarse por software para actuar como entradas digitales, salidas, o interfaces de comunicación como UART, I2C, SPI e I2S. Aunque esta cantidad es suficiente para muchas aplicaciones, el diseño de placas requiere una planificación cuidadosa, especialmente porque algunos pines tienen funciones especiales de arranque. Por ejemplo, los pines GPIO2, GPIO8 y GPIO9 son "strapping pins"; sus niveles lógicos al momento de encender el dispositivo determinan si el chip arranca en modo normal o en modo de descarga de firmware. Un error común en las placas clonadas de baja calidad es la falta de circuitos de reset automático, lo que obliga al usuario a presionar manualmente los botones BOOT y RESET para flashear el código. Además, el chip incluye un periférico USB-Serial/JTAG integrado. Esto es una ventaja significativa, ya que permite conectar la placa a una computadora mediante un puerto USB-C para programar, depurar y ver la consola de mensajes sin necesidad de chips conversores adicionales como el CP2102. No obstante, es vital entender que este USB es solo para comunicación serie y depuración; no soporta USB-OTG, por lo que no es posible crear dispositivos de tipo HID (como teclados o ratones) directamente con este chip.

La seguridad es otro aspecto destacado, con soporte para arranque seguro RSA-3072 y cifrado de memoria flash AES-128/256, características esenciales para productos comerciales que requieren protección contra la ingeniería inversa. El chip también ofrece modos de sueño profundo que reducen el consumo de corriente a niveles de microamperios, ideal para dispositivos alimentados por batería. A pesar de sus fortalezas, existen limitaciones a considerar: no dispone de convertidor digital-analógico (DAC), tiene un solo núcleo de procesamiento y sus canales ADC pueden presentar ruido si se utilizan simultáneamente con la transmisión Wi-Fi, debido a la compartición de recursos de radiofrecuencia. Finalmente, el soporte de software es extenso, con compatibilidad oficial para ESP-IDF, Arduino, MicroPython, Rust y plataformas como Tasmota o ESPHome, lo que facilita la transición de proyectos existentes, aunque el código que dependía de instrucciones específicas de la arquitectura anterior (Xtensa) podría requerir ajustes.

Foro (1 tema) →

AttrEspecificacionesverificado
cpusingle-core 32-bit RISC-V RV32IMC @ up to 160 MHz, plus a 20 MHz ultra-low-power RISC-V coprocessor ("power management" core) ( datasheet✔
memory400 KB internal SRAM, 384 KB ROM, 24 KB in low-power SRAM ( datasheet URL above).✔
storageexternal or in-package SPI flash, 4 MB typical on MINI-1 (up to 16 MB supported) (✔
connectivityWi-Fi 802.11 b/g/n 2.4 GHz + Bluetooth 5 (LE) with long-range (Coded PHY), BLE Mesh, ESP-WIFI-MESH; no Bluetooth Classic (✔
usbUSB-Serial/JTAG device peripheral (CDC console + flashing + JTAG debug on GPIO18/19) — it is not USB-OTG; you cannot build USB HID devices with it (datasheet URL above).? sin verificar
gpio22 programmable GPIOs (GPIO0–GPIO21); 2× UART, 1× I2C, 1× SPI, 2× I2S, 1× RMT TX/RX pair, LEDC PWM (6 channels), 1× TWAI (CAN), GPIO matrix routing (datasheet URL above). - ADC: 12-bit SAR with a handful of channels on GPIO0–GPIO5 (exact mapping package-dependent). > ? sin verificar
logic_level3.3 v? sin verificar
powermultiple low-power modes with ULP FSM; deep sleep in the single-digit µA class (datasheet power tables). > ? sin verificar
temperaturehigh-temperature support marketed for industrial/lighting ( exact grade per chip marking — datasheet §General Characteristics.✔
  • Fabricant : Espressif Systems (Shanghai) (
  • Año : anunciado en 2020 (el primer SoC Wi-Fi RISC-V de Espressif), producción en volumen 2021–2022. >
  • Estado : Activo — sucesor de bajo coste del ESP8266 para Espressif y punto de entrada de la familia ESP32.
  • Precio de lanzamiento : chip ≈ 2 US$ en volumen según el mensaje de lanzamiento de Espressif; módulos C3 ≈ 1,5–3 US$, placas «SuperMini» a menudo por menos de 3 US$. >
  • Variantes : ESP32-SO3 (flash en el paquete) / los sufijos del chip ESP32-C3 codifican la flash (2/4/8/16 MB, p. ej. módulos ESP32-C3-MINI-1 con 4 MB); versiones sin flash para diseños con flash SPI externa (
  • Módulos : ESP32-C3-MINI-1/-1U ( ESP32-C3-WROOM-02/-02U.
  • Placas comunes : ESP32-C3-DevKitM-1, ESP32-C3-DevKitC-0, ESP32-C3-DevKitM-2U, innumerables clones «ESP32-C3 SuperMini», Seeed XIAO ESP32C3, Adafruit QT Py ESP32-C3.

+ Puntos fuertes

  • Núcleo RISC-V — el SoC Wi-Fi+BLE5 de arquitectura abierta y menor coste de Espressif; equilibrio consumo/E-S/seguridad orientado a reemplazar al ESP8266 (
  • BLE 5 largo alcance + Mesh en un chip de menos de 2 US$ (
  • USB-Serial/JTAG integrado : un único puerto USB-C ofrece consola, flasheo y GDB — sin CP2102 en las placas SuperMini (URL del datasheet arriba).
  • Criptografía por hardware : secure boot RSA-3072, AES-XTS, digital signature, HMAC (
  • Sin radio 802.15.4 — el C3 es solo Wi-Fi + BLE 5. La página de producto de Espressif no lista 802.15.4, y soc_caps.h de ESP-IDF define SOC_IEEE802154_SUPPORTED para ESP32-C6/H2 pero no para el C3 (verificado 2026-10-13: Los end devices Zigbee/Thread necesitan un ESP32-C6/H2; el C3 solo aparece como host de gateway Wi-Fi ( _[Corregido 2026-10-13: una revisión anterior de esta ficha atribuía erróneamente al C3 una radio 802.15.4.]_

− Puntos débiles

  • Pines de strap GPIO2, GPIO8, GPIO9 : GPIO8 debe estar HIGH en el arranque (si no, modo descarga), GPIO9 es el botón BOOT habitual, GPIO2 debe quedar flotante/HIGH para el arranque SPI; niveles incorrectos = «el puerto se abre pero no flashea/arranca» (§Strapping Pins del datasheet:
  • USB solo Serial/JTAG : sin OTG/HID — los proyectos copiados de los ejemplos USB del S2/S3 fallan conceptualmente (URL del datasheet arriba).
  • Solo 22 GPIO, 1 I2C, 1 SPI, 2 UART : la planificación de pines es ajustada; GPIO11–17 pueden estar restringidos en los módulos con flash en el paquete (datasheet del MINI-1:
  • GPIO9/GPIO10 vs flash SPI en algunas variantes de chip — comprueba el marcado exacto de tu componente antes de usarlos (URL del datasheet del MINI-1 arriba).
  • Sin DAC, sin Bluetooth classic, un solo núcleo : los ports de código ESP32 que asumía esas funciones requieren rehacerse (comparación en la página de producto:
  • Contención de ADC tipo ADC2 : los canales ADC compartidos con la trayectoria de RF dan lecturas ruidosas mientras Wi-Fi transmite; promedia o lee en ventanas de modem-sleep (guía ADC de ESP-IDF:
  • Calidad de los clones SuperMini : tamaños de flash no documentados, circuitos de auto-reset ausentes (danza manual BOOT+RESET) y LDO de 3,3 V demasiado débiles para las ráfagas de TX — los bucles de brownout son la queja nº 1 en foros (comunidad:
  • Retour d'expérience expert expert — expert-microcontroleur
    • Je viens de finir un projet avec la ESP32-C3 et il faut être clair sur ses limites. Le RISC-V à 160 MHz est réactif et le BLE 5 avec Coded PHY est top, mais attention au USB : ce n'est pas de l'OTG. J'ai perdu du temps à vouloir faire un périphérique HID, c'est impossible, c'est juste du Serial/JTA… — expert-microcontroleur
    • Merci pour le rappel sur le GPIO8, j'ai galéré pendant deux heures avec une SuperMini qui ne flashait plus. J'ai finalement compris que mon capteur branché dessus tirait la ligne vers le bas. Par contre, tu as testé l'ADC pendant que le Wi-Fi est actif ? J'ai des valeurs qui sautent dans tous les s… — maker_bricoleur
    • Pour l'ADC, c'est un souci connu car les canaux partagent le chemin RF. Il faut soit faire des moyennes, soit mettre le modem en sommeil pendant la lecture via l'API ESP-IDF. Concernant les clones, je confirme les brownouts si le LDO est faible. J'ai dû ajouter un condensateur de 100uF en entrée po… — codemine

Opiniones y proyectos de la comunidad

  • ESP32-C3-DevKitM-1 official guide

    Guía oficial de ESP32-C3-DevKitM-1 — : .espressif.com/projects/esp-dev-kits/en/latest/esp32c3/esp32-c3-devkitm-1/index.html (unverified au 2026-10-13)

  • ESP-IDF Zigbee gateway sample

    Ejemplo de puerta de enlace Zigbee ESP-IDF — C3 actúa como host de la puerta de enlace Wi-Fi y necesita un SoC 802.15.4 externo (ESP32-H2) como radio; no es un objetivo de dispositivo final Zigbee independiente: .com/espressif/esp-idf/tree/master/examples/zig…

  • Tasmota on ESP32-C3 boards

    Tasmota en placas ESP32-C3 — : .github.io/docs/Boards/ (unverified au 2026-10-13) — referencia alojada en tasmota, estado unverified verificado el 2026-10-13. Proyecto documentado en la ficha esp32-c3 (MCU de 32 bits); rol: profundizar en el manejo de esta pl…

  • ESPHome on ESP32-C3

    ESPHome en ESP32-C3 — : .io (unverified au 2026-10-13) — referencia alojada en esphome, estado unverified verificado el 2026-10-13. Proyecto documentado en la ficha esp32-c3 (MCU de 32 bits); rol: profundizar en el manejo de esta placa.

  • Seeed XIAO ESP32C3 wiki

    Wiki de Seeed XIAO ESP32C3 — (batería, BLE, sueño profundo): .seeedstudio.com/XIAO_ESP32C3_Getting_Started/ (unverified au 2026-10-13)

  • Pines de strap GPIO2, GPIO8, GPIO9 : GPIO8 debe estar HIGH en el arranque (si no, modo descarga), GPIO9 es el botón BOOT habitual, GPIO2 debe quedar flotante/HIGH para el arranque SPI; niveles incorrectos = «el puerto se abre pero no flashea/arranca» (§Strapping Pins del datasheet:
  • USB solo Serial/JTAG : sin OTG/HID — los proyectos copiados de los ejemplos USB del S2/S3 fallan conceptualmente (URL del datasheet arriba).
  • Solo 22 GPIO, 1 I2C, 1 SPI, 2 UART : la planificación de pines es ajustada; GPIO11–17 pueden estar restringidos en los módulos con flash en el paquete (datasheet del MINI-1:
  • GPIO9/GPIO10 vs flash SPI en algunas variantes de chip — comprueba el marcado exacto de tu componente antes de usarlos (URL del datasheet del MINI-1 arriba).
  • Sin DAC, sin Bluetooth classic, un solo núcleo : los ports de código ESP32 que asumía esas funciones requieren rehacerse (comparación en la página de producto:
  • Contención de ADC tipo ADC2 : los canales ADC compartidos con la trayectoria de RF dan lecturas ruidosas mientras Wi-Fi transmite; promedia o lee en ventanas de modem-sleep (guía ADC de ESP-IDF:
  • Calidad de los clones SuperMini : tamaños de flash no documentados, circuitos de auto-reset ausentes (danza manual BOOT+RESET) y LDO de 3,3 V demasiado débiles para las ráfagas de TX — los bucles de brownout son la queja nº 1 en foros (comunidad:
  • Faire clignoter la LED RGB sur GPIO8 debutant Schéma : IMG-esp32-c3-debutant-1-rgb-led-gpio8-blink.svg — Carte ESP32-C3 compacte avec LED RGB sur GPIO8 clignotant, broche signalée comme strapping
  • Lire le bouton BOOT sur GPIO9 debutant Schéma : IMG-esp32-c3-debutant-2-bouton-boot-gpio9.svg — Bouton BOOT du ESP32-C3 câblé entre GPIO9 et GND avec résistance de pull-up interne, compteur d'appuis en console
  • Console sur l'USB-C natif (USB-Serial/JTAG) debutant Schéma : IMG-esp32-c3-debutant-3-console-usb-c-serial-jtag.svg — Câble USB-C branché directement sur le ESP32-C3, périphérique USB-Serial/JTAG reliant terminal série et débogueur
  • Bandeau NeoPixel piloté par le périphérique RMT intermediaire Schéma : IMG-esp32-c3-intermediaire-1-neopixel-rmt-gpio.svg — Bandeau de 8 LED WS2812 alimenté en 5 V, données sur GPIO7 du ESP32-C3 via le périphérique RMT, masses communes reliées
  • Deep sleep et réveil RTC sur GPIO0 intermediaire Schéma : IMG-esp32-c3-intermediaire-2-deep-sleep-rtc-gpio0.svg — ESP32-C3 en deep sleep, bouton relié à GPIO0 (domaine RTC) réveillant la puce, consommation en microampères
  • Publicité BLE 5 en longue portée (Coded PHY) intermediaire Schéma : IMG-esp32-c3-intermediaire-3-ble5-advertise-long-range.svg — ESP32-C3 émettant une publicité BLE 5 sur PHY codé 125 kbit/s, ondes de portée doublée vers un smartphone
  • Wi-Fi + BLE 5 : mesurer la coexistence avance Schéma : IMG-esp32-c3-avance-1-wifi-ble5-coexistence.svg — ESP32-C3 mono-cœur avec radio unique 2,4 GHz, calendrier entrelaçant trames Wi-Fi et événements BLE
  • Strapping GPIO2/8/9 : le diagnostic de boot avance Schéma : IMG-esp32-c3-avance-2-strapping-gpio2-8-9-boot.svg — Broches de strapping GPIO2, GPIO8 et GPIO9 du ESP32-C3 échantillonnées au reset, niveaux attendus indiqués
  • ADC et bruit Wi-Fi : le moyennage qui sauve avance Schéma : IMG-esp32-c3-avance-3-adc-bruit-wifi-moyennage.svg — Lecture ADC sur ESP32-C3 avec et sans trafic Wi-Fi, bruit atténué par une moyenne sur 64 échantillons

Biblioteca de código — ejemplos escritos para esta placa

  • clignotante.ino Arduino

    La comprobación básica de la placa: el LED parpadea a 1 Hz con millis() en vez de delay(), dejando el bucle libre para Wi-Fi o sensores. El monitor también imprime heap libre, útil antes de añadir li…

  • bouton-led.ino Arduino

    Un botón entre GPIO4 y GND, elevado internamente: cada pulsación limpia se cuenta e imprime. El filtro antirrebote de 40 ms elimina el rebote mecánico que duplicaría la cuenta.

  • respiration.ino Arduino

    El PWM hardware (LEDC) genera la portadora solo: analogWrite aplica un ciclo de trabajo 0-255 y el LED respira sin gastar CPU. La frecuencia elegida evita el silbido del driver PWM.

  • dht22.ino Arduino

    El DHT22 entrega temperatura y humedad por un solo hilo: la librería Adafruit decodifica las tramas de 40 bits y el script añade el punto de rocío. La cadencia de 2 s es el límite del sensor.

  • oled-i2c.ino Arduino

    El OLED SSD1306 es el display I2C universal: dos hilos, sin librerías propietarias. El sketch escribe un framebuffer y lo envía de golpe con display(), la disciplina correcta contra el parpadeo.

  • serveur-web.ino Arduino

    El clásico conectado: la placa sirve una página HTML en la red local, dos enlaces conmutan el LED y un ADC aparece en directo. Sin infraestructura externa: el servidor corre dentro de la placa.

  • ble-compteur.ino Arduino

    La placa se vuelve un periférico BLE: un servicio personalizado expone un contador de pulsaciones que un teléfono (nRF Connect) lee y sigue por notificaciones. El escenario de radio más simple sin pu…

  • servo.ino Arduino

    El estándar absoluto de la mecánica: un servo MG90/SG90 barre 0-180° pilotado por PWM de 50 Hz. En ESP32 la librería Servo usa LEDC, así que casi cualquier pin vale.

  • sommeil-profond.ino Arduino

    En sueño profundo el SoC consume unos microamperios: despertar por minuto o por pulsación, y una pila dura meses. RTC_NOINIT_ATTR conserva el contador de despertones entre reinicios.

  • mesures.py MicroPython

    MicroPython corre en todas estas placas: sin cadena de compilación, edita main.py y arranca. Este registrador DHT escribe JSON línea a línea en un archivo, el formato que cualquier herramienta traga …

Ejemplos y repositorios encontrados en línea