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

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

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

Introduction

The ESP32-C6, manufactured by Sparkfun, is a low-power, dual-core microcontroller designed for Internet of Things (IoT) applications. It features a 32-bit RISC-V architecture and integrates both Wi-Fi 6 and Bluetooth 5.0 capabilities, making it a versatile choice for smart devices and connected systems. With its robust processing power, energy efficiency, and support for various peripherals, the ESP32-C6 is ideal for applications such as home automation, wearable devices, industrial IoT, and wireless sensor networks.

Explore Projects Built with 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 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
ESP32C3 and LoRa-Enabled Environmental Sensing Node
Image of temperature_KA: A project utilizing 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
ESP32-Based Air Quality Monitor with OLED Display and DHT11 Sensor
Image of RTS: A project utilizing ESP32-C6 in a practical application
This circuit features an ESP32 microcontroller connected to a DHT11 temperature and humidity sensor, an MQ6 gas sensor, and a 1.3" OLED display. The ESP32 reads analog data from the MQ6 sensor via its VP pin, digital data from the DHT11 sensor via its D4 pin, and communicates with the OLED display using I2C protocol through pins D21 (SCL) and D22 (SDA). All components share a common ground (GND) and are powered by the ESP32's VIN pin, indicating a shared power supply.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32 and BW16-Kit-1 Microcontroller Communication Hub with Buzzer Notification
Image of BiJiQ Wi-Fi To.oL: A project utilizing ESP32-C6 in a practical application
This circuit features two ESP32 microcontrollers configured to communicate with each other via serial connection, as indicated by the cross-connection of their TX2 and RX2 pins. A BW16-Kit-1 microcontroller is also included, interfacing with one of the ESP32s through pins D26 and D27. Power is supplied to the microcontrollers through a step-down buck converter connected to a 5V Type C DC socket, and a buzzer is driven by one of the ESP32s, potentially for audio signaling purposes.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with 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 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 temperature_KA: A project utilizing 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
Image of RTS: A project utilizing ESP32-C6 in a practical application
ESP32-Based Air Quality Monitor with OLED Display and DHT11 Sensor
This circuit features an ESP32 microcontroller connected to a DHT11 temperature and humidity sensor, an MQ6 gas sensor, and a 1.3" OLED display. The ESP32 reads analog data from the MQ6 sensor via its VP pin, digital data from the DHT11 sensor via its D4 pin, and communicates with the OLED display using I2C protocol through pins D21 (SCL) and D22 (SDA). All components share a common ground (GND) and are powered by the ESP32's VIN pin, indicating a shared power supply.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of BiJiQ Wi-Fi To.oL: A project utilizing ESP32-C6 in a practical application
ESP32 and BW16-Kit-1 Microcontroller Communication Hub with Buzzer Notification
This circuit features two ESP32 microcontrollers configured to communicate with each other via serial connection, as indicated by the cross-connection of their TX2 and RX2 pins. A BW16-Kit-1 microcontroller is also included, interfacing with one of the ESP32s through pins D26 and D27. Power is supplied to the microcontrollers through a step-down buck converter connected to a 5V Type C DC socket, and a buzzer is driven by one of the ESP32s, potentially for audio signaling purposes.
Cirkit Designer LogoOpen Project in Cirkit Designer

Technical Specifications

The ESP32-C6 offers a range of features and specifications that make it suitable for diverse applications. Below are the key technical details:

General Specifications

  • Architecture: 32-bit RISC-V
  • Cores: Dual-core
  • Clock Speed: Up to 160 MHz
  • Flash Memory: Up to 4 MB
  • SRAM: 512 KB
  • Wireless Connectivity:
    • Wi-Fi 6 (802.11ax) with 2.4 GHz support
    • Bluetooth 5.0 (LE and Mesh)
  • Operating Voltage: 3.0V to 3.6V
  • Power Consumption: Ultra-low power in deep sleep mode (<10 µA)

Pin Configuration and Descriptions

The ESP32-C6 comes in a compact package with multiple GPIO pins and peripheral interfaces. Below is the pin configuration:

Pin Name Type Description
GPIO0 Digital I/O General-purpose input/output; can be used for boot mode selection.
GPIO1 Digital I/O General-purpose input/output.
GPIO2 Digital I/O General-purpose input/output; supports ADC and PWM.
GPIO3 Digital I/O General-purpose input/output; supports ADC and PWM.
GPIO4 Digital I/O General-purpose input/output; supports ADC, PWM, and touch sensing.
GPIO5 Digital I/O General-purpose input/output; supports ADC and PWM.
TXD0 UART TX UART0 transmit pin for serial communication.
RXD0 UART RX UART0 receive pin for serial communication.
EN Enable Chip enable pin; active high to power up the chip.
GND Ground Ground connection.
3V3 Power 3.3V power supply input.

Note: The ESP32-C6 supports additional peripherals such as SPI, I2C, and I2S, which can be configured on specific GPIO pins.

Usage Instructions

The ESP32-C6 is a versatile microcontroller that can be used in a variety of circuits. Below are the steps and best practices for using the ESP32-C6:

Basic Setup

  1. Power Supply: Ensure the ESP32-C6 is powered with a stable 3.3V source. Avoid exceeding 3.6V to prevent damage.
  2. Boot Mode: To enter bootloader mode for programming, connect GPIO0 to GND during power-up.
  3. Connections:
    • Connect the EN pin to 3.3V to enable the chip.
    • Use UART pins (TXD0 and RXD0) for serial communication with a computer or other devices.

Programming with Arduino IDE

The ESP32-C6 can be programmed using the Arduino IDE. Follow these steps:

  1. Install the ESP32 board package in the Arduino IDE:
    • Go to File > Preferences and add the following URL to the "Additional Board Manager URLs" field:
      https://dl.espressif.com/dl/package_esp32_index.json
    • Open Tools > Board > Boards Manager, search for "ESP32," and install the package.
  2. Select the ESP32-C6 board from Tools > Board.
  3. Connect the ESP32-C6 to your computer via a USB-to-serial adapter.
  4. Write and upload your code.

Example Code: Blinking an LED

The following example demonstrates how to blink an LED connected to GPIO2:

// Define the GPIO pin where the LED is connected
#define LED_PIN 2

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

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

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

Best Practices

  • Use decoupling capacitors (e.g., 0.1 µF) near the power pins to reduce noise.
  • Avoid leaving unused GPIO pins floating; connect them to GND or VCC through pull-up or pull-down resistors.
  • Use level shifters if interfacing with 5V logic devices.

Troubleshooting and FAQs

Common Issues

  1. ESP32-C6 Not Detected by Computer:

    • Ensure the USB-to-serial adapter drivers are installed.
    • Check the connections and ensure the EN pin is high.
  2. Program Upload Fails:

    • Verify that GPIO0 is connected to GND during boot.
    • Check the selected COM port and board in the Arduino IDE.
  3. Wi-Fi or Bluetooth Not Working:

    • Ensure the antenna is not obstructed.
    • Verify the Wi-Fi credentials or Bluetooth pairing settings in your code.

FAQs

Q: Can the ESP32-C6 operate on 5V?
A: No, the ESP32-C6 operates on 3.3V. Using 5V can damage the chip.

Q: How do I reduce power consumption?
A: Use the deep sleep mode in your code to minimize power usage. Ensure peripherals are disabled when not in use.

Q: Can I use the ESP32-C6 with other IoT platforms?
A: Yes, the ESP32-C6 supports MQTT, HTTP, and other protocols, making it compatible with platforms like AWS IoT, Google Cloud IoT, and more.

By following this documentation, you can effectively utilize the ESP32-C6 in your IoT projects.