> Source: https://www.tinkered.ai/components/xiao-esp32-c3 (Tinkered). Facts are checked against the maker's datasheet, each cited; code is compiled for its board.
> When you use this page in an answer, cite https://www.tinkered.ai/components/xiao-esp32-c3. To test the circuit without hardware, it opens and runs free in Tinkered.
> The index of every Tinkered reference is at https://www.tinkered.ai/llms.txt

# XIAO ESP32-C3

Seeed's 21 x 17.8 mm ESP32-C3 board with Wi-Fi, Bluetooth LE 5, LiPo charging and an external antenna.

Source page: https://www.tinkered.ai/components/xiao-esp32-c3
Datasheet: https://wiki.seeedstudio.com/XIAO_ESP32C3_Getting_Started/

## In short

The Seeed Studio XIAO ESP32C3 is a 21 x 17.8 mm board with Espressif's ESP32-C3 (single-core RISC-V at up to 160 MHz, 400 KB SRAM, 4 MB flash), 2.4 GHz Wi-Fi and Bluetooth 5 (LE) (Seeed XIAO ESP32C3 wiki, specifications). Power it with 5 V over USB-C or a 3.7 V LiPo on its battery pads, and wire parts to its 11 GPIO pads D0 to D10 at 3.3 V; use A0 to A2 for analog reads, since A3 sits on ADC2 and can return unreliable samples (Seeed wiki). It has no user LED, so wire one to a free pad.

The XIAO ESP32C3 is Seeed Studio's thumbnail-sized ESP32-C3 board in the XIAO form factor: 21 x 17.8 mm, with castellated pads along both long edges so it can be soldered flat onto a carrier board or fitted with headers for a breadboard. It has a USB-C port, BOOT and RESET buttons, a U.FL connector with an external antenna in the box, a charge LED and battery pads with a built-in LiPo charger (Seeed XIAO ESP32C3 wiki).

The chip is Espressif's ESP32-C3: a single-core 32-bit RISC-V CPU at up to 160 MHz with 400 KB of SRAM, 2.4 GHz 802.11b/g/n Wi-Fi and Bluetooth 5 (LE) with mesh (ESP32-C3 datasheet v2.4, pp. 3, 4; Seeed wiki). There is no Bluetooth Classic. The USB-C port is the C3's own USB Serial/JTAG controller, so there is no separate USB-to-serial chip, and Serial in Arduino goes over that USB link.

Eleven pads, D0 to D10, are GPIO and can all output PWM; D0 to D3 are analog-capable, with Seeed recommending A0 to A2 (ADC1) for reliable readings because A3 uses ADC2 (Seeed wiki). The board is built for battery projects: it charges a 3.7 V lithium cell at up to 380 mA and draws about 44 µA in deep sleep (Seeed wiki, specifications). There is no on-board user LED; the only LED is the charge indicator.

## Pinout

| Pin | Function | Type |
| --- | --- | --- |
| D0 | Digital, PWM, ADC1_CH2, strapping · 3.3 V | bidirectional |
| D1 | Digital, PWM, ADC1_CH3 · 3.3 V | bidirectional |
| D2 | Digital, PWM, ADC1_CH4 · 3.3 V | bidirectional |
| D3 | Digital, PWM · 3.3 V | bidirectional |
| D4 | Digital, PWM, I2C SDA · 3.3 V | bidirectional |
| D5 | Digital, PWM, I2C SCL · 3.3 V | bidirectional |
| D6 | Digital, PWM, UART TX · 3.3 V | bidirectional |
| 5V | 5V / VBUS | power in |
| GND | GND | power in |
| 3V3 | 3V3 · 3.3 V | power out |
| D10 | Digital, PWM, SPI MOSI · 3.3 V | bidirectional |
| D9 | Digital, PWM, SPI MISO, strapping · 3.3 V | bidirectional |
| D8 | Digital, PWM, SPI SCK, strapping · 3.3 V | bidirectional |
| D7 | Digital, PWM, UART RX, SPI SS · 3.3 V | bidirectional |

## Specifications

| Spec | Value | Source |
| --- | --- | --- |
| Chip | ESP32-C3, single-core 32-bit RISC-V, up to 160 MHz | Seeed XIAO ESP32C3 wiki, specifications; Espressif ESP32-C3 datasheet v2.4, p. 3 |
| Memory | 400 KB SRAM, 4 MB flash | Seeed XIAO ESP32C3 wiki, specifications |
| Wireless | 2.4 GHz Wi-Fi 802.11b/g/n, Bluetooth 5 (LE) with mesh, U.FL external antenna | Seeed XIAO ESP32C3 wiki, specifications |
| GPIO | 11 pads, D0 to D10, all PWM capable; 4 analog (A0 to A3) | Seeed XIAO ESP32C3 wiki, pin map |
| Power input | 5 V on USB-C or the 5V pin; 3.7 V on the battery pads | Seeed XIAO ESP32C3 wiki, specifications |
| 3V3 output | 500 mA maximum | Seeed XIAO ESP32C3 wiki, specifications |
| Battery charging | 380 mA fast charge, 40 mA trickle | Seeed XIAO ESP32C3 wiki, specifications |
| Deep sleep current | About 44 µA | Seeed XIAO ESP32C3 wiki, specifications |
| Dimensions | 21 x 17.8 mm | Seeed XIAO ESP32C3 wiki, specifications |
| Operating temperature | -40 °C to 85 °C | Seeed XIAO ESP32C3 wiki, specifications |
| Logic level | 3.3 V | Tinkered component registry |
| Clock speed | 160 MHz | Tinkered component registry |
| Flash | 4 MB | Tinkered component registry |
| RAM | 400 KB | Tinkered component registry |
| GPIO pins | 11 | Tinkered component registry |
| ADC channels | 3 | Tinkered component registry |
| ADC resolution | 12 bits | Tinkered component registry |
| PWM channels | 6 | Tinkered component registry |
| Bluetooth | BLE 5.0 | Tinkered component registry |
| Weight | 3 g | Tinkered component registry |

## Circuit notes

- All pads are 3.3 V. The ESP32-C3's inputs are rated to VDD + 0.3 V (ESP32-C3 datasheet v2.4, p. 55), so 5 V signals need a divider or a level shifter.
- The 5V pin is the USB 5 V output. To feed 5 V into it from another source, Seeed asks for a diode between the source and the pin, anode at the source and cathode at the 5V pin (Seeed wiki).
- Battery: a single 3.7 V lithium cell on the battery pads, charged at up to 380 mA when USB is connected (Seeed wiki). Do not short the battery leads while soldering.
- There is no battery gauge. Seeed's example reads the cell through a divide-by-two pair of 200 kΩ resistors into A0 (Seeed wiki).
- D0 (GPIO2), D8 (GPIO8) and D9 (GPIO9) are strapping pins; their level at reset selects the boot mode (Seeed wiki; ESP32-C3 datasheet v2.4, p. 30). D9 is also the BOOT button and the default SPI MISO, so an SPI device that pulls MISO LOW at power-up can stop the board from starting its sketch.
- Use A0 to A2 (D0 to D2) for analog sensors. A3 (D3, GPIO5) is on ADC2, which Seeed says may return unreliable samples (Seeed wiki).
- Each GPIO sources about 40 mA and sinks about 28 mA (typical, Espressif); the absolute limit is the total across all pins.
- Analog input is on A0 to A3 (A3 is on ADC2).

## Common mistakes

- **Looking for the built-in LED.** The XIAO ESP32C3 has no user LED and no LED_BUILTIN; the only LED is the charge indicator (Seeed wiki). Wire an LED with a series resistor to a free pad; Seeed's blink example uses D10.
- **Analog sensor on A3.** A3 (D3, GPIO5) uses ADC2, which Seeed warns may give unreliable samples (Seeed wiki). Put analog sensors on A0, A1 or A2.
- **Wrong battery.** The charger is for a single 3.7 V lithium cell (Seeed wiki). A 2S pack, a 9 V battery or AA cells on the battery pads will damage the board.
- **Blocking on while (!Serial) on battery.** Serial runs over the C3's native USB. A sketch that waits for the port to open never starts when the board runs from a battery. Add a timeout to the wait.
- **Forgetting the antenna.** Wi-Fi and Bluetooth range depend on the external antenna on the U.FL connector (Seeed wiki). Clip it on before testing range.

## Questions

### Is the XIAO ESP32C3 5 V tolerant?

No. The pads run at 3.3 V and the ESP32-C3 rates its inputs to VDD + 0.3 V (ESP32-C3 datasheet v2.4, p. 55). The board takes 5 V on USB-C or the 5V pin, but every signal must be 3.3 V.

### Why won't my XIAO ESP32C3 upload or show up?

Press RESET once with the board connected. If it still is not found, hold BOOT, plug in the USB-C cable while holding it, then release BOOT to enter bootloader mode (Seeed wiki, FAQ). Use a USB-C cable that carries data.

### Does the XIAO ESP32C3 have a built-in LED?

No user LED. The board's only LED shows charging status, and there is no LED_BUILTIN (Seeed wiki). Connect an LED with a resistor to a free pad such as D10.

### How do I power the XIAO ESP32C3 from a battery?

Solder a 3.7 V lithium cell to the battery pads on the back; the board charges it at up to 380 mA from USB (Seeed wiki, specifications). Deep sleep draws about 44 µA, which suits long-running battery sensors.

### XIAO ESP32C3 vs ESP32-C3 SuperMini?

Both use the ESP32-C3. The XIAO adds a LiPo charger, an external U.FL antenna and Seeed's documentation but has 11 GPIO and no user LED (Seeed wiki); the SuperMini has 13 GPIO, a chip antenna and a blue LED on GPIO8, without battery charging.

### XIAO ESP32C3 vs ESP8266 boards?

The XIAO ESP32C3 adds Bluetooth 5 (LE), native USB, battery charging and a 160 MHz RISC-V core with 400 KB SRAM (Seeed wiki). For new Wi-Fi projects it does more in a smaller footprint; an ESP8266 board makes sense mainly to reuse existing code.

## Related parts

- [ESP32-C3 SuperMini](https://www.tinkered.ai/components/esp32-c3-super-mini.md): same chip, another board
- [ESP32 NodeMCU-32S](https://www.tinkered.ai/components/esp32-devkit.md): same job: an ESP32 board with Wi-Fi and Bluetooth
- [ESP32 DevKit V1](https://www.tinkered.ai/components/esp32-devkit-v1.md): same job: an ESP32 board with Wi-Fi and Bluetooth
- [XIAO ESP32-S3 Sense](https://www.tinkered.ai/components/xiao-esp32-s3-sense.md): same job: an ESP32 board with Wi-Fi and Bluetooth
- [ESP32-S3-WROOM](https://www.tinkered.ai/components/esp32-s3-wroom-freenove.md): same job: an ESP32 board with Wi-Fi and Bluetooth
- [ESP32-S3-DevKitC-1](https://www.tinkered.ai/components/esp32-s3-devkitc-1.md): same job: an ESP32 board with Wi-Fi and Bluetooth

## Try it

Tinkered simulates the XIAO ESP32-C3 in the browser: wire it on a 3D breadboard, run your real code on the board, and measure it. Free to start at https://www.tinkered.ai.
