
XIAO ESP32C6 is a development board based on the ESP32C6 microcontroller using RISCV32 architecture.
This board features a maximum CPU frequency of 160 MHz and 8MB flash memory.
About XIAO ESP32C6
Designed for compact projects, it includes a USB-C port for seamless programming and power, plus an onboard reset button and bootloader mode button for easy debugging. β‘
The XIAO ESP32C6 supports multiple interfaces like UART, I2C, and SPI, making it an excellent choice for smart home automation, sensor networks, and low-power applications.
Where to Buy XIAO ESP32C6
Prices are subject to change. We earn from qualifying purchases as an Amazon Associate.
π Technical Specifications
Complete technical specification details for XIAO ESP32C6
π USB
π°οΈ Connectivity
π§ Microcontroller
β¨ Features & Pins
- β’ Supports WiFi 6, Bluetooth 5, and Zigbee
- β’ Ultra-small size (21x17.5 mm)
- β’ Low power consumption with deep sleep support
XIAO ESP32C6 Pinout Diagram
Complete pin reference for XIAO ESP32C6

The XIAO ESP32C6 pinout is designed to provide a well-balanced selection of I/O pins in a compact form factor. It includes essential power pins like 5V, 3.3V, and GND.
For communication, it supports UART (RX and TX), I2C (SDA and SCL), and SPI (SCK, MISO, MOSI, and SS), allowing integration with a wide range of peripherals.
Analog input pins labeled A0 to A3 make sensor integration easy, while additional GPIOs provide further flexibility.

β Safe Pins to Use
These pins are safe for general GPIO usage without boot or system conflicts
π‘ Why Are These Pins Safe?
β οΈ Pins to Avoid or Use with Caution
Reserved for critical functions. Misuse may cause boot failures, programming issues, or system conflicts.
Boot behavior & flash voltage
Low-level debugging interface
USB Serial/JTAG communication
Memory & PSRAM connections
Debugging & firmware uploads
| PIN | Label | Why Avoid | Type |
|---|---|---|---|
| IO4 | MTMS | Used during boot; required for JTAG debugging; flash data in internal-flash models. | π οΈ Strapping |
| IO5 | MTDI | Used during boot; required for JTAG debugging; flash data in internal-flash models. | π οΈ Strapping |
| IO6 | MTCK | Required for JTAG debugging; connected to flash clock in internal-flash models. | π JTAG |
| IO7 | MTDO | Required for JTAG debugging; connected to flash data in internal-flash models. | π JTAG |
| IO8 | GPIO8 | Determines boot mode; pulling low at reset can prevent normal boot. | π οΈ Strapping |
| IO9 | GPIO9 | Pulling low on reset forces the ESP32-C6 into download mode instead of normal boot. | π οΈ Strapping |
XIAO ESP32C6 Additional Information
More details about XIAO ESP32C6

Useful Links
Datasheets and resources for XIAO ESP32C6
XIAO ESP32C6 Custom Pin Mapping
Pin configuration and GPIO mapping for XIAO ESP32C6
| Pin | Function | ESP Pin | I/O Type | Description |
|---|---|---|---|---|
| 1 | 5V | 5V | POWER INPUT | 5V power input |
| 2 | GND | GND | GROUND | Ground connection |
| 3 | 3V3 | 3.3V | POWER OUTPUT | 3.3V power output |
| 4 | IO2 | A0 | BIDIRECTIONAL | GPIO, ADC |
| 5 | IO3 | A1 | BIDIRECTIONAL | GPIO, ADC |
| 6 | IO4 | A2 | BIDIRECTIONAL | GPIO, ADC |
| 7 | IO5 | A3 | BIDIRECTIONAL | GPIO, ADC |
| 8 | IO6 | SDA | BIDIRECTIONAL | GPIO, I2C Data |
| 9 | IO7 | SCL | BIDIRECTIONAL | GPIO, I2C Clock |
| 10 | IO8 | SCK | BIDIRECTIONAL | GPIO, SPI Clock |
| 11 | IO9 | MISO | BIDIRECTIONAL | GPIO, SPI Data |
| 12 | IO10 | MOSI | BIDIRECTIONAL | GPIO, SPI Data |
| 13 | IO20 | RX | BIDIRECTIONAL | GPIO, UART Receive |
| 14 | IO21 | TX | BIDIRECTIONAL | GPIO, UART Transmit |
Pin Mappings
Complete pinout and GPIO mapping for XIAO ESP32C6
| Pin | Analog | Touch | PWM | Other |
|---|---|---|---|---|
| 2 | A0 | |||
| 3 | A1 | |||
| 4 | A2 | |||
| 5 | A3 | |||
| 6 | SDA | |||
| 7 | SCL | |||
| 8 | SCK | |||
| 9 | MISO | |||
| 10 | MOSI | |||
| 20 | RX SS | |||
| 21 | TX |
Default Tools & Configuration
Build and upload settings for XIAO ESP32C6
| Setting | Value |
|---|---|
| Bootloader tool | esptool_py |
| Uploader tool | esptool_py |
| Network uploader tool | esp_ota |
| Bootloader address | 0x0 |
| Flash mode | qio |
| Boot mode | qio |
| Maximum upload size | 1920 KB (1966080 bytes) |
| Maximum data size | 640 KB (655360 bytes) |
The XIAO ESP32C6 uses esptool_py for uploads , esp_ota for OTA updates, and esptool_py bootloader at 0x0.
Flash mode: qio | Boot mode: qio
Max sketch size: 1920 KB | Max data size: 640 KB
Similar Boards
Other development boards with ESP32C6 microcontroller

XIAO ESP32S3
XIAO ESP32S3 development board is based on esp32s3 microcontroller and uses xtensa architecture.

XIAO ESP32C3
XIAO ESP32C3 development board is based on esp32c3 microcontroller and uses riscv32 architecture.

XIAO ESP32S3 Plus
XIAO ESP32S3 Plus development board is based on esp32s3 microcontroller and uses xtensa architecture.
