Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use XIAO ESP32C6: Examples, Pinouts, and Specs

Image of XIAO ESP32C6
Cirkit Designer LogoDesign with XIAO ESP32C6 in Cirkit Designer

Introduction

The XIAO ESP32C6 by SEEED Studio is a compact and powerful microcontroller board built around the ESP32-C6 chip. It features integrated Wi-Fi 6 and Bluetooth 5.0/LE capabilities, making it an excellent choice for IoT applications, smart devices, and rapid prototyping. Its small form factor and low power consumption make it ideal for wearable devices, home automation, and other space-constrained projects.

Explore Projects Built with XIAO ESP32C6

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
ESP32-C6 and ST7735S Display: Wi-Fi Controlled TFT Display Module
Image of ESP32-C6sm-ST7735: A project utilizing XIAO ESP32C6 in a practical application
This circuit features an ESP32-C6 microcontroller interfaced with a China ST7735S 160x128 TFT display. The ESP32-C6 controls the display via SPI communication, providing power, ground, and control signals to render graphics and text on the screen.
Cirkit Designer LogoOpen Project in Cirkit Designer
Xiao ESP32 C3 and Adafruit RFM9x LoRa Radio Communication Module
Image of LoRa: A project utilizing XIAO ESP32C6 in a practical application
This circuit connects a Xiao ESP32 C3 microcontroller to an Adafruit RFM9x LoRa Radio module. The ESP32 C3 provides power to the LoRa module and interfaces with it using SPI communication (SCK, MISO, MOSI, CS) and control lines (RST, DIO0). This setup is likely intended for wireless communication using LoRa technology, with the ESP32 handling data processing and network protocol tasks.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Based Infrared Thermometer with I2C LCD Display
Image of infrared thermometer: A project utilizing XIAO ESP32C6 in a practical application
This circuit features an ESP32 microcontroller powered by a 18650 Li-Ion battery, with a TP4056 module for charging the battery via a USB plug. The ESP32 reads temperature data from an MLX90614 infrared temperature sensor and displays it on an I2C LCD 16x2 screen. The ESP32, MLX90614 sensor, and LCD screen are connected via I2C communication lines (SCL, SDA), and the circuit is designed to measure and display ambient and object temperatures.
Cirkit Designer LogoOpen Project in Cirkit Designer
Xiao ESP32 C3 Based Temperature and Humidity Monitoring System
Image of DHT-11: A project utilizing XIAO ESP32C6 in a practical application
This circuit features a Xiao ESP32 C3 microcontroller connected to a DHT11 Humidity and Temperature Sensor. The ESP32 C3 provides power to the DHT11 sensor through its VUSB pin and receives data from the sensor's DATA pin via the ESP32's D2 pin. The circuit is designed to measure environmental temperature and humidity, with the microcontroller processing and potentially communicating the sensor data.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with XIAO ESP32C6

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of ESP32-C6sm-ST7735: A project utilizing XIAO ESP32C6 in a practical application
ESP32-C6 and ST7735S Display: Wi-Fi Controlled TFT Display Module
This circuit features an ESP32-C6 microcontroller interfaced with a China ST7735S 160x128 TFT display. The ESP32-C6 controls the display via SPI communication, providing power, ground, and control signals to render graphics and text on the screen.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of LoRa: A project utilizing XIAO ESP32C6 in a practical application
Xiao ESP32 C3 and Adafruit RFM9x LoRa Radio Communication Module
This circuit connects a Xiao ESP32 C3 microcontroller to an Adafruit RFM9x LoRa Radio module. The ESP32 C3 provides power to the LoRa module and interfaces with it using SPI communication (SCK, MISO, MOSI, CS) and control lines (RST, DIO0). This setup is likely intended for wireless communication using LoRa technology, with the ESP32 handling data processing and network protocol tasks.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of infrared thermometer: A project utilizing XIAO ESP32C6 in a practical application
ESP32-Based Infrared Thermometer with I2C LCD Display
This circuit features an ESP32 microcontroller powered by a 18650 Li-Ion battery, with a TP4056 module for charging the battery via a USB plug. The ESP32 reads temperature data from an MLX90614 infrared temperature sensor and displays it on an I2C LCD 16x2 screen. The ESP32, MLX90614 sensor, and LCD screen are connected via I2C communication lines (SCL, SDA), and the circuit is designed to measure and display ambient and object temperatures.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of DHT-11: A project utilizing XIAO ESP32C6 in a practical application
Xiao ESP32 C3 Based Temperature and Humidity Monitoring System
This circuit features a Xiao ESP32 C3 microcontroller connected to a DHT11 Humidity and Temperature Sensor. The ESP32 C3 provides power to the DHT11 sensor through its VUSB pin and receives data from the sensor's DATA pin via the ESP32's D2 pin. The circuit is designed to measure environmental temperature and humidity, with the microcontroller processing and potentially communicating the sensor data.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • IoT devices and smart home systems
  • Wearable technology
  • Wireless sensor networks
  • Prototyping for Wi-Fi and Bluetooth-enabled projects
  • Low-power applications requiring efficient connectivity

Technical Specifications

Key Technical Details

Parameter Value
Microcontroller ESP32-C6 (RISC-V single-core processor)
Clock Speed Up to 160 MHz
Flash Memory 4 MB
SRAM 512 KB
Wireless Connectivity Wi-Fi 6 (802.11ax), Bluetooth 5.0/LE
Operating Voltage 3.3V
Input Voltage Range 5V (via USB-C) or 3.3V (via pins)
GPIO Pins 11 (including ADC, I2C, SPI, UART, PWM)
ADC Resolution 12-bit
Dimensions 21 x 17.5 mm
Power Consumption Ultra-low power modes available

Pin Configuration and Descriptions

The XIAO ESP32C6 has a total of 14 pins, including power, GPIO, and communication pins. Below is the pinout description:

Pin Number Pin Name Functionality
1 3.3V Power output (3.3V)
2 GND Ground
3 D0 GPIO, UART RX
4 D1 GPIO, UART TX
5 D2 GPIO, I2C SDA
6 D3 GPIO, I2C SCL
7 D4 GPIO, PWM
8 D5 GPIO, PWM
9 D6 GPIO, SPI MOSI
10 D7 GPIO, SPI MISO
11 D8 GPIO, SPI SCK
12 A0 GPIO, ADC
13 RST Reset
14 USB-C USB interface for power and programming

Usage Instructions

How to Use the XIAO ESP32C6 in a Circuit

  1. Powering the Board:

    • Use a USB-C cable to supply 5V power to the board.
    • Alternatively, provide 3.3V directly to the 3.3V pin. Ensure the voltage is regulated.
  2. Connecting Peripherals:

    • Use the GPIO pins for digital input/output, PWM, or communication protocols (I2C, SPI, UART).
    • For analog input, connect sensors to the A0 pin (12-bit ADC).
  3. Programming the Board:

    • Install the ESP32 board package in the Arduino IDE or use the ESP-IDF framework.
    • Connect the board to your computer via USB-C and select the appropriate COM port.
  4. Uploading Code:

    • Write your code in the Arduino IDE or ESP-IDF.
    • Click the upload button to flash the code to the board.

Important Considerations and Best Practices

  • Ensure the input voltage does not exceed the specified range to avoid damaging the board.
  • Use pull-up or pull-down resistors for GPIO pins when necessary.
  • Avoid connecting high-current devices directly to the GPIO pins; use transistors or relays.
  • For wireless applications, ensure the board is in an area with minimal interference.

Example Code for Arduino UNO Integration

The following example demonstrates how to blink an LED connected to GPIO pin D4:

// Define the GPIO pin for the LED
const int ledPin = 4;

void setup() {
  // Initialize the LED pin as an output
  pinMode(ledPin, OUTPUT);
}

void loop() {
  // Turn the LED on
  digitalWrite(ledPin, HIGH);
  delay(1000); // Wait for 1 second

  // Turn the LED off
  digitalWrite(ledPin, LOW);
  delay(1000); // Wait for 1 second
}

Troubleshooting and FAQs

Common Issues and Solutions

  1. The board is not detected by the computer:

    • Ensure the USB-C cable is a data cable, not just a charging cable.
    • Check if the correct drivers for the ESP32-C6 are installed on your computer.
  2. Code upload fails:

    • Verify that the correct COM port is selected in the Arduino IDE.
    • Press and hold the reset button while uploading the code to enter bootloader mode.
  3. Wi-Fi or Bluetooth is not working:

    • Ensure the board is in range of the Wi-Fi network or Bluetooth device.
    • Double-check the SSID and password in your code for Wi-Fi connections.
  4. The board overheats:

    • Check for short circuits or excessive current draw from connected peripherals.
    • Ensure proper ventilation and avoid operating in high-temperature environments.

FAQs

Q: Can the XIAO ESP32C6 run on battery power?
A: Yes, you can power the board using a 3.3V battery connected to the 3.3V and GND pins. Ensure the battery provides a stable voltage.

Q: Does the board support deep sleep mode?
A: Yes, the ESP32-C6 supports ultra-low power deep sleep mode for energy-efficient applications.

Q: Can I use the XIAO ESP32C6 with MicroPython?
A: Yes, the board is compatible with MicroPython. You can flash the MicroPython firmware and use it for development.

Q: What is the maximum range for Wi-Fi and Bluetooth?
A: The range depends on environmental factors, but typically Wi-Fi can reach up to 50 meters indoors, and Bluetooth can reach up to 10 meters.


This concludes the documentation for the XIAO ESP32C6. For further assistance, refer to the official SEEED Studio documentation or community forums.