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 and powerful microcontroller board built around the ESP32-C6 chip. It supports both Wi-Fi 6 and Bluetooth 5.0 Low Energy (BLE), making it an excellent choice for Internet of Things (IoT) applications and projects requiring robust wireless communication. Its small form factor and versatile features make it suitable for wearable devices, smart home systems, and other embedded applications.

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!
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 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
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 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 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 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

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

Technical Specifications

The XIAO ESP32-C6 offers a range of features and specifications that make it a versatile microcontroller for various applications.

Key Technical Details

Specification Value
Microcontroller ESP32-C6
Wireless Connectivity Wi-Fi 6, Bluetooth 5.0 LE
Operating Voltage 3.3V
Input Voltage Range 5V (via USB-C)
Flash Memory 4MB
SRAM 512KB
GPIO Pins 11 (including multifunctional pins)
Communication Interfaces UART, I2C, SPI, ADC, PWM
Dimensions 21mm x 17.5mm
Power Consumption Ultra-low power modes supported

Pin Configuration and Descriptions

The XIAO ESP32-C6 features a total of 11 GPIO pins, which can be configured for various functions. Below is the pinout description:

Pin Number Pin Name Functionality
1 3V3 3.3V Power Output
2 GND Ground
3 GPIO0 General Purpose I/O, ADC, PWM
4 GPIO1 General Purpose I/O, ADC, PWM
5 GPIO2 General Purpose I/O, ADC, PWM
6 GPIO3 General Purpose I/O, UART TX, PWM
7 GPIO4 General Purpose I/O, UART RX, PWM
8 GPIO5 General Purpose I/O, I2C SDA, PWM
9 GPIO6 General Purpose I/O, I2C SCL, PWM
10 GPIO7 General Purpose I/O, SPI MOSI, PWM
11 GPIO8 General Purpose I/O, SPI MISO, PWM

Usage Instructions

The XIAO ESP32-C6 is easy to integrate into your projects. Below are the steps to get started and important considerations for using the board.

How to Use the XIAO ESP32-C6 in a Circuit

  1. Powering the Board:

    • Use a USB-C cable to supply 5V to the board. The onboard voltage regulator will convert it to 3.3V.
    • Alternatively, you can power the board directly via the 3V3 pin with a regulated 3.3V supply.
  2. Connecting Peripherals:

    • Use the GPIO pins to connect sensors, actuators, or other peripherals. Refer to the pin configuration table for specific pin functions.
    • For communication, use UART, I2C, or SPI interfaces as required by your peripherals.
  3. Programming the Board:

    • Install the Arduino IDE and add the ESP32 board package.
    • Select "XIAO ESP32-C6" as the target board in the Arduino IDE.
    • Connect the board to your computer via USB-C and upload your code.

Example Code for Arduino IDE

The following example demonstrates how to connect the XIAO ESP32-C6 to a Wi-Fi network and send data to a server:

#include <WiFi.h>

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

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

  // Connect to Wi-Fi
  Serial.println("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
}

Important Considerations and Best Practices

  • Voltage Levels: Ensure all connected peripherals operate at 3.3V logic levels to avoid damaging the board.
  • Power Supply: Use a stable power source to prevent unexpected resets or malfunctions.
  • Antenna Placement: Avoid placing the board near metal objects or inside enclosures that may interfere with the wireless signal.
  • Firmware Updates: Regularly update the ESP32-C6 firmware to ensure compatibility and access to the latest features.

Troubleshooting and FAQs

Common Issues and Solutions

  1. Board Not Detected by Computer:

    • Ensure the USB-C cable is data-capable (not just for charging).
    • Check if the correct drivers for the ESP32-C6 are installed on your computer.
  2. Wi-Fi Connection Fails:

    • Double-check the SSID and password in your code.
    • Ensure the Wi-Fi network is within range and operational.
  3. Code Upload Fails:

    • Verify that the correct board and COM port are selected in the Arduino IDE.
    • Press the reset button on the board before uploading the code.
  4. Peripherals Not Responding:

    • Confirm that the peripherals are connected to the correct GPIO pins.
    • Check for loose connections or incorrect wiring.

FAQs

Q: Can I power the XIAO ESP32-C6 with a battery?
A: Yes, you can use a 3.7V LiPo battery connected to the 3V3 pin, but ensure the voltage is regulated to 3.3V.

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 ESP32-C6 with MicroPython?
A: Yes, the ESP32-C6 is compatible with MicroPython. You can flash the MicroPython firmware and use it for programming.

Q: What is the maximum range of Wi-Fi and Bluetooth?
A: The range depends on environmental factors, but typically Wi-Fi can reach up to 50m indoors and 200m outdoors, while Bluetooth LE has a range of up to 100m in ideal conditions.

This concludes the documentation for the XIAO ESP32-C6. For further assistance, refer to the official datasheet or community forums.