XIAO ESP32C6 Development Board

Code name: XIAO_ESP32C6

XIAO ESP32C6 development board is based on esp32c6 microcontroller and uses riscv32 architecture. This board has a maximum CPU frequency of 160 MHz and a flash size of 8MB.

About XIAO ESP32C6

The XIAO ESP32C6 is a powerful RISC-V-based development board featuring the ESP32-C6 chip. With support for WiFi 6, Bluetooth 5 (LE), and Zigbee, it’s perfect for modern IoT applications. πŸ“‘

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

Starting from

10$ per unit

Amazon com
Amazon.com Ships worldwide
View Price
Aliexpress
AliExpress Best value
View Price

Prices are subject to change. We earn from qualifying purchases as an Amazon Associate.

Technical Specifications

πŸ”Œ USB

Type USB-C
Serial Chip Internal

πŸ›°οΈ Connectivity

WiFi 802.11 ax b/g/n (2.4 GHz)
Bluetooth 5.3
BLE 5.3
Zigbee Yes

🧠 Microcontroller

Model esp32c6
Clock Speed 160 MHz
Flash Size 8MB
SRAM Size 512KB
Architecture riscv32

✨ Features

  • Supports WiFi 6, Bluetooth 5, and Zigbee
  • Ultra-small size (21x17.5 mm)
  • Low power consumption with deep sleep support
  • 11 digital IO pins
  • 11 external interrupt pins
  • 7 analog input pins
  • 11 PWM pins

XIAO ESP32C6 Pinout

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

For general GPIO usage, these are the safest and most flexible choices:

πŸ”Ή IO2
πŸ”Ή IO3
πŸ”Ή IO10
πŸ”Ή IO20
πŸ”Ή IO21

Why Are These Pins Safe?

  • Not involved in bootstrapping β†’ No impact on device boot mode or system startup
  • Not linked to flash memory or PSRAM β†’ Won't interfere with storage or memory access
  • Not dedicated to USB or JTAG β†’ Free for general use without affecting debugging
  • No special hardware connections β†’ Freely assignable without internal conflicts

⚠️ Pins to Avoid or Use with Caution

Some pins are reserved for critical functions like bootstrapping, JTAG debugging, USB communication, and flash memory operations. Misusing these pins may lead to boot failures, programming issues, USB conflicts, or disruptions in flash storage.

Critical Pin Categories:

  • πŸ› οΈ Strapping Pins: Control boot behavior and flash voltage selection
  • πŸ”— JTAG Debugging Pins: Required for low-level debugging
  • πŸ”Œ USB Communication Pins: Used for USB Serial/JTAG communication
  • ⚑ Flash Memory & SPI Pins: Connected to SPI flash memory and PSRAM
  • πŸ“‘ UART Serial Communication Pins: Used for debugging and firmware uploads
PINLabelReasonFunction
IO4MTMSUsed during boot; required for JTAG debugging; flash data in internal-flash models.πŸ› οΈ Strapping
IO5MTDIUsed during boot; required for JTAG debugging; flash data in internal-flash models.πŸ› οΈ Strapping
IO6MTCKRequired for JTAG debugging; connected to flash clock in internal-flash models.πŸ”— JTAG
IO7MTDORequired for JTAG debugging; connected to flash data in internal-flash models.πŸ”— JTAG
IO8GPIO8Determines boot mode; pulling low at reset can prevent normal boot.πŸ› οΈ Strapping

XIAO ESP32C6 Pin Mappings

This development board provides 11 digital IO pins, out of which 11 can be used as external interrupt pins , 7 as analog input pins and 11 pins have Pulse-Width Modulation (PWM) .

PinFunctionESP PinInput/OutputDescription
15V5VPOWER INPUT5V power input
2GNDGNDGROUNDGround connection
33V33.3VPOWER OUTPUT3.3V power output
4IO2A0BIDIRECTIONALGPIO, ADC
5IO3A1BIDIRECTIONALGPIO, ADC
6IO4A2BIDIRECTIONALGPIO, ADC
7IO5A3BIDIRECTIONALGPIO, ADC
8IO6SDABIDIRECTIONALGPIO, I2C Data
9IO7SCLBIDIRECTIONALGPIO, I2C Clock
10IO8SCKBIDIRECTIONALGPIO, SPI Clock
11IO9MISOBIDIRECTIONALGPIO, SPI Data
12IO10MOSIBIDIRECTIONALGPIO, SPI Data
13IO20RXBIDIRECTIONALGPIO, UART Receive
14IO21TXBIDIRECTIONALGPIO, UART Transmit
Function Pin Function
ESP Pin Pin on ESP32
I/O Input/Output Pin
Description Pin Description

XIAO ESP32C6 Pins Mapping Arduino IDE

Below you can find the XIAO ESP32C6 pinout. This development board provides 11 digital IO pins, out of which 11 can be used as external interrupt pins, 7 as analog input pins and 11 pins have Pulse-Width Modulation (PWM).

PinAnalogTouchPWMOther
2A0
3A1
4A2
5A3
6SDA
7SCL
8SCK
9MISO
10MOSI
20RX SS
21TX
Analog Analog input pins
Touch Touch pins
Function Function pins
RX / TX Receive/Transmit
LED_BUILTIN Built-in LED
PWM Pulse-Width Modulation

Default Tools

Bootloader toolesptool_py
Uploader toolesptool_py
Network uploader toolesp_ota
Bootloader address0x0
Flash modeqio
Boot modeqio
Maximum upload size
1920 Kb
(1966080 B)
Maximum data size
640 Kb
(655360 B)

The XIAO ESP32C6 development board by default uses esptool_py uploader tool, esp_ota network uploader tool for Over-the-air (OTA) uploads and esptool_py bootloader tool. The bootloader starts at address "0x0". Flash mode and boot mode for XIAO ESP32C6 development board by default is qio and qio respectively.