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

How to Use XIAO ESP32 C6: Examples, Pinouts, and Specs

Image of XIAO ESP32 C6
Cirkit Designer LogoDesign with XIAO ESP32 C6 in Cirkit Designer

Introduction

The XIAO ESP32 C6 is a compact microcontroller board developed by XIAO, featuring the powerful ESP32-C6 chip. This board integrates Wi-Fi 6, Bluetooth 5.0, and IEEE 802.15.4 (Thread/Zigbee) capabilities, making it an excellent choice for IoT applications, smart home devices, and wireless communication projects. Its small form factor and low power consumption make it ideal for prototyping and embedding into space-constrained designs.

Explore Projects Built with XIAO ESP32 C6

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Xiao ESP32 C3 and Adafruit RFM9x LoRa Radio Communication Module
Image of LoRa: A project utilizing XIAO ESP32 C6 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-C6 and ST7735S Display: Wi-Fi Controlled TFT Display Module
Image of ESP32-C6sm-ST7735: A project utilizing XIAO ESP32 C6 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 Based Temperature and Humidity Monitoring System
Image of DHT-11: A project utilizing XIAO ESP32 C6 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
ESP32C3 and LoRa-Enabled Environmental Sensing Node
Image of temperature_KA: A project utilizing XIAO ESP32 C6 in a practical application
This circuit features an ESP32C3 Supermini microcontroller connected to a LORA_RA02 module and a DHT11 temperature and humidity sensor. The ESP32C3 handles communication with the LORA module via SPI (using GPIO05, GPIO06, GPIO10, and GPIO04 for MISO, MOSI, NSS, and SCK respectively) and GPIO01 and GPIO02 for additional control signals. The DHT11 sensor is interfaced through GPIO03 for data reading, and all components share a common power supply through the 3.3V and GND pins.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with XIAO ESP32 C6

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 LoRa: A project utilizing XIAO ESP32 C6 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 ESP32-C6sm-ST7735: A project utilizing XIAO ESP32 C6 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 DHT-11: A project utilizing XIAO ESP32 C6 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
Image of temperature_KA: A project utilizing XIAO ESP32 C6 in a practical application
ESP32C3 and LoRa-Enabled Environmental Sensing Node
This circuit features an ESP32C3 Supermini microcontroller connected to a LORA_RA02 module and a DHT11 temperature and humidity sensor. The ESP32C3 handles communication with the LORA module via SPI (using GPIO05, GPIO06, GPIO10, and GPIO04 for MISO, MOSI, NSS, and SCK respectively) and GPIO01 and GPIO02 for additional control signals. The DHT11 sensor is interfaced through GPIO03 for data reading, and all components share a common power supply through the 3.3V and GND pins.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • IoT devices and smart home automation
  • Wireless sensor networks
  • Wearable technology
  • Prototyping for Wi-Fi and Bluetooth-enabled projects
  • Zigbee/Thread-based communication systems
  • Low-power, battery-operated devices

Technical Specifications

The following table outlines the key technical specifications of the XIAO ESP32 C6:

Specification Details
Microcontroller ESP32-C6 (RISC-V architecture)
Wi-Fi Wi-Fi 6 (802.11ax), 2.4 GHz
Bluetooth Bluetooth 5.0 Low Energy (LE)
Zigbee/Thread IEEE 802.15.4 support
Operating Voltage 3.3V
Input Voltage 5V (via USB-C)
Flash Memory 4 MB
SRAM 512 KB
GPIO Pins 11 (including multifunctional pins)
Communication Interfaces UART, I2C, SPI, PWM, ADC
USB Interface USB-C (supports programming and power supply)
Power Consumption Ultra-low power consumption in deep sleep mode
Dimensions 21 x 17.5 mm

Pin Configuration and Descriptions

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

Pin Name Function
1 3V3 3.3V power output
2 GND Ground
3 GPIO0 General-purpose I/O, supports ADC, PWM, and other functions
4 GPIO1 General-purpose I/O, supports ADC, PWM, and other functions
5 GPIO2 General-purpose I/O, supports ADC, PWM, and other functions
6 GPIO3 General-purpose I/O, supports ADC, PWM, and other functions
7 GPIO4 General-purpose I/O, supports ADC, PWM, and other functions
8 GPIO5 General-purpose I/O, supports ADC, PWM, and other functions
9 RX UART Receive
10 TX UART Transmit
11 SDA I2C Data Line
12 SCL I2C Clock Line
13 USB-C USB interface for programming and power
14 RST Reset pin

Usage Instructions

How to Use the XIAO ESP32 C6 in a Circuit

  1. Powering the Board:

    • Use a USB-C cable to connect the board to a power source (e.g., computer or USB adapter).
    • Alternatively, supply 3.3V directly to the 3V3 pin and connect GND to ground.
  2. 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.
    • Write your code and upload it to the board.
  3. Connecting Peripherals:

    • Use the GPIO pins for interfacing with sensors, actuators, or other devices.
    • Configure the pins in your code for the desired functionality (e.g., input, output, ADC, PWM).
  4. Wireless Communication:

    • Use the built-in Wi-Fi, Bluetooth, or Zigbee/Thread capabilities for wireless communication.
    • Libraries such as WiFi.h or BLEDevice.h can simplify development.

Important Considerations and Best Practices

  • Voltage Levels: Ensure all connected peripherals operate at 3.3V logic levels to avoid damaging the board.
  • Pin Multiplexing: Some pins have multiple functions (e.g., ADC, PWM). Check the datasheet to avoid conflicts.
  • Deep Sleep Mode: Use deep sleep mode to minimize power consumption in battery-powered applications.
  • Antenna Placement: Avoid placing metal objects near the onboard antenna to ensure optimal wireless performance.

Example Code for Arduino UNO Integration

Below is an example of using the XIAO ESP32 C6 to connect to a Wi-Fi network and send data to a server:

#include <WiFi.h> // Include the Wi-Fi library

// Replace with your network credentials
const char* ssid = "Your_SSID";
const char* password = "Your_PASSWORD";

void setup() {
  Serial.begin(115200); // Initialize serial communication
  delay(1000);

  // Connect to Wi-Fi
  Serial.print("Connecting to Wi-Fi");
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("\nWi-Fi connected!");
  Serial.print("IP Address: ");
  Serial.println(WiFi.localIP()); // Print the device's IP address
}

void loop() {
  // Add your main code here
}

Troubleshooting and FAQs

Common Issues and Solutions

  1. Board Not Detected by Computer:

    • Ensure the USB-C cable supports data transfer (not just charging).
    • Check if the correct COM port is selected in the Arduino IDE.
    • Install the necessary USB drivers for the XIAO ESP32 C6.
  2. Wi-Fi Connection Fails:

    • Verify the SSID and password are correct.
    • Ensure the Wi-Fi network operates on the 2.4 GHz band (not 5 GHz).
    • Check for interference or weak signal strength.
  3. Code Upload Fails:

    • Press and hold the reset button while uploading the code.
    • Ensure the correct board and port are selected in the IDE.
    • Update the ESP32 board package in the Arduino IDE.
  4. Low Wireless Signal Strength:

    • Avoid placing the board near metal objects or inside enclosures that block signals.
    • Ensure the onboard antenna is unobstructed.

FAQs

  • Q: Can I power the board with a battery?
    A: Yes, you can use a 3.7V LiPo battery with a suitable voltage regulator to supply 3.3V to the 3V3 pin.

  • Q: Does the board support OTA updates?
    A: Yes, the ESP32-C6 chip supports Over-The-Air (OTA) updates for firmware.

  • Q: Can I use this board for Zigbee communication?
    A: Yes, the XIAO ESP32 C6 supports IEEE 802.15.4, which is the foundation for Zigbee and Thread protocols.