// open hardware, examined

Seeed Studio XIAO ESP32-C3

Seeed Studio XIAO ESP32-C3 — redrawn functional schematic simplified block view · elecrostack.com · based on the open-hardware design published by Seeed Studio USB-C (J1) VBUS 5 V D+ / D- → USB Serial/JTAG CC1, CC2 → 5.1 kΩ ↓ GND Shield → GND Li-ion charger (U2) IN ← VBUS OUT → BAT+ 380 mA fast / 40 mA trickle CHG LED (red) Protection · NTC GND Li-ion cell 3.7 V BAT+ / BAT- solder pads → VIN power path 3.3 V LDO (U3) IN ← VIN / VBUS OUT → 3V3 500 mA typ · GND ESP32-C3FN4 (U1) RISC-V single-core @ 160 MHz 400 KB SRAM · 284 KB ROM 4 MB flash (in-package) Wi-Fi 802.11 b/g/n (2.4 GHz) Bluetooth LE 5.0 + Mesh AES/RSA/SHA · secure boot Deep sleep: 44 µA VDD3V3 ← 3V3 EN ← RESET (active low) GPIO9 ← BOOT · strapping GPIO2 / GPIO8 · strapping XTAL: 40 MHz LNA_IN → RF GND RF match U.FL + PCB antenna LNA_IN 40 MHz crystal XIN / XOUT load caps → GND Buttons RESET → EN (chip enable) BOOT → GPIO9 (bootloader) I/O header — 11 digital (PWM) · ADC1 on A0–A2 D0 GP2 ADC D1 GP3 ADC D2 GP4 ADC D3 GP5 ADC* D4 GP6 SDA D5 GP7 SCL D6 GP21 TX D7 GP20 RX D8 GP8 SCK D9 GP9 MISO / BOOT D10 GP10 MOSI + 5V · 3V3 · GND VBUS BAT+ / VIN 3V3 XTL RF · LNA_IN EN · GPIO9
Fig. 1 — Redrawn, simplified functional schematic. Not a production netlist; see the official files for the full design.

Open hardware from Shenzhen: a board the size of a thumbnail that packs Wi-Fi, Bluetooth LE 5, a Li-ion charger and a RISC-V microcontroller. Here is what each block in the schematic is actually doing.

Why this board

The XIAO ESP32-C3 is interesting precisely because it is small, cheap and fully documented. Seeed Studio publishes the schematic, the KiCad project and the footprints, and the hardware files live in an MIT-licensed repository. That makes it a perfect first “reference design” to take apart: every part of the circuit is public and reproducible.

Power input & USB-C

The USB-C connector feeds VBUS (5 V) and carries the native USB lines straight into the ESP32-C3's built-in USB Serial/JTAG controller. There is no USB-to-serial bridge chip — the MCU enumerates itself (Espressif VID 0x303a). That is why you can program and debug it, and read a serial console, over one cable.

Li-ion charging

A dedicated charger IC takes VBUS, charges the cell at up to 380 mA and drops to a 40 mA trickle near full charge. A small red LED marks charging; a protection and temperature path keeps the cell safe. The battery is wired to solder pads, so you can run the board untethered — at which point the whole module sips about 44 µA in deep sleep.

3.3 V rail

Both VBUS and the battery feed a 3.3 V LDO, exposed on the 3V3 pin. The board is optimised for 3.3 V logic, and the regulator can supply hundreds of milliamps to your own circuits — handy when you want to power a sensor or display from the same board.

The microcontroller

At the centre is the ESP32-C3FN4: a single-core RISC-V CPU running at up to 160 MHz, with 400 KB SRAM, 284 KB ROM and 4 MB of flash inside the package. It brings Wi-Fi 802.11 b/g/n, Bluetooth LE 5.0 and hardware crypto for secure boot. A 40 MHz crystal sets the reference clock.

RF front end

The radio output (LNA_IN) runs through a matching network to both a U.FL connector and a printed PCB antenna. The supplied external antenna plugs into the U.FL jack — a real, measurable upgrade over the tiny on-board antenna.

Buttons, boot & strapping

Two buttons do the work: RESET pulls EN low, and BOOT pulls GPIO9 low. The ESP32-C3 latches several settings at power-up from its strapping pins (GPIO2, GPIO8, GPIO9), which is why holding BOOT while resetting drops the chip into the serial bootloader.

I/O

Eleven digital pins (PWM-capable) and a handful of analog inputs break out to the classic XIAO footprint, wired up as UART, I²C and SPI. One caveat is worth remembering: D3 (GPIO5) sits on ADC2, which is unreliable, so use A0–A2 for analog reads.

Battery-voltage trick (community) The board exposes no dedicated battery-sense pin, but you can add a 200 kΩ : 200 kΩ divider from BAT+ to A0. Read it with analogReadMilliVolts() (which applies the factory calibration burned into each chip) and double the value to get the battery voltage.

Numbers that matter

MCUESP32-C3FN4 · RISC-V single-core @ 160 MHz
Memory400 KB SRAM · 284 KB ROM · 4 MB flash
WirelessWi-Fi 802.11 b/g/n · Bluetooth LE 5.0 / Mesh
InputVIN 5 V (USB-C) · BAT 3.7 V · 3V3 out
Charging380 mA fast · 40 mA trickle
PowerDeep sleep 44 µA · Wi-Fi active 75 mA · BLE modem-sleep 27 mA
Size21 × 17.8 mm · single-sided SMT
I/O11 GPIO (PWM) · 4 ADC · 1× UART · 1× I²C · 1× SPI

Sources & licence

This diagram is a redraw created by elecrostack from the publicly published design — we redraw and explain rather than rehost anyone's files. The reference documents are:

Open Hardware aus Shenzhen: ein Board in Daumengröße mit WLAN, Bluetooth LE 5, einem Li-Ion-Lader und einem RISC-V-Mikrocontroller. Hier erfährst du, was jeder Block im Schaltplan tatsächlich macht.

Warum dieses Board

Der XIAO ESP32-C3 ist gerade deshalb interessant, weil er klein, günstig und vollständig dokumentiert ist. Seeed Studio veröffentlicht Schaltplan, KiCad-Projekt und Footprints — und die Hardware-Dateien liegen in einem MIT-lizenzierten Repository. Damit ist das Board ein perfektes erstes „Referenzdesign“ zum Zerlegen: Jeder Teil der Schaltung ist öffentlich und reproduzierbar.

Stromversorgung & USB-C

Die USB-C-Buchse liefert VBUS (5 V) und führt die nativen USB-Leitungen direkt in den eingebauten USB-Serial/JTAG-Controller des ESP32-C3. Es gibt keinen USB-zu-Seriell-Brückenchip — der MCU meldet sich selbst an (Espressif-VID 0x303a). Deshalb kannst du ihn programmieren, debuggen und eine serielle Konsole über ein einziges Kabel lesen.

Li-Ion-Ladung

Ein eigener Lade-IC nimmt VBUS, lädt die Zelle mit bis zu 380 mA und geht kurz vor Volladung auf 40 mA Erhaltungsladung über. Eine kleine rote LED zeigt den Ladevorgang; Schutz- und Temperaturpfad halten die Zelle sicher. Der Akku wird an Lötpads angeschlossen — damit läuft das Board ohne Kabel und genehmigt sich im Deep Sleep nur etwa 44 µA.

3,3-V-Schiene

VBUS und Akku speisen einen 3,3-V-LDO, der auf dem 3V3-Pin herausgeführt wird. Das Board rechnet mit 3,3-V-Logik, und der Regler liefert hunderte Milliampere für eigene Schaltungen — praktisch, um Sensor oder Display vom selben Board zu versorgen.

Der Mikrocontroller

Im Zentrum sitzt der ESP32-C3FN4: ein Single-Core-RISC-V-Prozessor mit bis zu 160 MHz, 400 KB SRAM, 284 KB ROM und 4 MB Flash im Gehäuse. Dazu kommen WLAN 802.11 b/g/n, Bluetooth LE 5.0 und Hardware-Krypto für Secure Boot. Ein 40-MHz-Quarz liefert den Referenztakt.

HF-Frontend

Der Funkausgang (LNA_IN) läuft über ein Anpassnetzwerk sowohl auf einen U.FL-Stecker als auch auf eine gedruckte PCB-Antenne. Die mitgelieferte externe Antenne wird am U.FL-Jack angeschlossen — ein echtes, messbares Upgrade gegenüber der winzigen Onboard-Antenne.

Tasten, Boot & Strapping

Zwei Tasten erledigen alles: RESET zieht EN auf Low, BOOT zieht GPIO9 auf Low. Der ESP32-C3 liest beim Einschalten mehrere Einstellungen von seinen Strapping-Pins (GPIO2, GPIO8, GPIO9) — deshalb landet der Chip im seriellen Bootloader, wenn man BOOT beim Reset hält.

I/O

Elf digitale Pins (PWM-fähig) und einige Analogeingänge werden im klassischen XIAO-Format herausgeführt und als UART, I²C und SPI verdrahtet. Ein Hinweis ist wichtig: D3 (GPIO5) liegt auf ADC2, das unzuverlässig ist — nutze für Analogmessungen A0–A2.

Akku-Spannung messen (Community-Trick) Das Board hat keinen eigenen Akku-Messpin, aber du kannst einen 200 kΩ : 200 kΩ-Spannungsteiler von BAT+ nach A0 legen. Lies ihn mit analogReadMilliVolts() (nutzt die werkseitige Kalibrierung im Chip) und verdopple den Wert, um die Akkuspannung zu erhalten.

Zahlen, die zählen

MCUESP32-C3FN4 · RISC-V Single-Core @ 160 MHz
Speicher400 KB SRAM · 284 KB ROM · 4 MB Flash
FunkWLAN 802.11 b/g/n · Bluetooth LE 5.0 / Mesh
EingangVIN 5 V (USB-C) · BAT 3,7 V · 3V3 out
Ladung380 mA schnell · 40 mA Erhaltung
LeistungDeep Sleep 44 µA · WLAN aktiv 75 mA · BLE Modem-Sleep 27 mA
Größe21 × 17,8 mm · einseitige SMT-Bestückung
I/O11 GPIO (PWM) · 4 ADC · 1× UART · 1× I²C · 1× SPI

Quellen & Lizenz

Dieses Diagramm ist eine Neuzeichnung von elecrostack auf Basis des öffentlich veröffentlichten Designs — wir zeichnen neu und erklären, statt fremde Dateien erneut zu hosten. Die Referenzdokumente sind: