
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.
The ESP32-C6 is a low-power, dual-core microcontroller developed by Sparkfun under the part ID Qwiic. It is designed for Internet of Things (IoT) applications, offering integrated Wi-Fi 6 and Bluetooth 5 (LE) capabilities. Built on a 32-bit RISC-V architecture, the ESP32-C6 is highly versatile, supporting a wide range of peripherals and communication protocols. Its low power consumption and robust connectivity make it ideal for smart devices, home automation, wearables, and industrial IoT systems.

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.

This circuit features an ESP32 microcontroller that interfaces with a variety of sensors and output devices. It is powered by a Lipo battery through a buck converter, ensuring a stable voltage supply. The ESP32 collects data from a DHT11 temperature and humidity sensor and a vibration sensor, controls a buzzer, and displays information on an OLED screen. An emergency stop (E Stop) is connected for safety purposes, allowing the system to be quickly deactivated.

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.

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.
| Parameter | Value |
|---|---|
| Architecture | 32-bit RISC-V |
| Clock Speed | Up to 160 MHz |
| Flash Memory | 4 MB (external flash supported) |
| RAM | 512 KB SRAM |
| Wi-Fi Standard | Wi-Fi 6 (802.11ax) |
| Bluetooth | Bluetooth 5 (LE) |
| GPIO Pins | 22 (multiplexed with other functions) |
| Operating Voltage | 3.3V |
| Power Consumption | Ultra-low power modes available (deep sleep current < 10 µA) |
| Communication Interfaces | UART, SPI, I2C, I2S, PWM, ADC, DAC |
| ADC Resolution | 12-bit |
| Operating Temperature Range | -40°C to +85°C |
| Package | QFN48 |
The ESP32-C6 has a total of 48 pins, with 22 GPIOs that can be configured for various functions. Below is a summary of the key pins:
| Pin Name | Type | Description |
|---|---|---|
| GPIO0 | Input/Output | General-purpose I/O, can also be used for boot mode selection. |
| GPIO1 | Input/Output | General-purpose I/O, UART TX by default. |
| GPIO2 | Input/Output | General-purpose I/O, supports ADC and PWM. |
| GPIO3 | Input/Output | General-purpose I/O, UART RX by default. |
| GPIO4 | Input/Output | General-purpose I/O, supports ADC and PWM. |
| GPIO5 | Input/Output | General-purpose I/O, supports ADC and PWM. |
| GND | Power | Ground connection. |
| 3V3 | Power | 3.3V power supply input. |
| EN | Input | Enable pin. Pull high to enable the chip. |
| ADC1_CH0 | Analog Input | ADC channel 0, supports 12-bit resolution. |
| ADC1_CH1 | Analog Input | ADC channel 1, supports 12-bit resolution. |
| DAC1 | Analog Output | Digital-to-analog converter output channel 1. |
| DAC2 | Analog Output | Digital-to-analog converter output channel 2. |
Below is an example of using the ESP32-C6 to read an analog sensor and send data over Wi-Fi:
#include <WiFi.h> // Include the Wi-Fi library
// Wi-Fi credentials
const char* ssid = "Your_SSID";
const char* password = "Your_PASSWORD";
// Analog pin for sensor input
const int sensorPin = 34; // GPIO34 (ADC1_CH0)
void setup() {
Serial.begin(115200); // Initialize serial communication
WiFi.begin(ssid, password); // Connect to Wi-Fi
// Wait for Wi-Fi connection
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("\nWi-Fi connected!");
}
void loop() {
int sensorValue = analogRead(sensorPin); // Read analog value from sensor
float voltage = sensorValue * (3.3 / 4095.0); // Convert to voltage
// Print sensor value and voltage
Serial.print("Sensor Value: ");
Serial.print(sensorValue);
Serial.print(" | Voltage: ");
Serial.println(voltage);
delay(1000); // Wait 1 second before next reading
}
ESP32-C6 Not Connecting to Wi-Fi
Code Upload Fails
Unstable Power Supply
Low Wi-Fi Signal Strength
Q: Can the ESP32-C6 operate on 5V?
A: No, the ESP32-C6 operates at 3.3V. Use a voltage regulator or level shifter for 5V systems.
Q: Does the ESP32-C6 support OTA updates?
A: Yes, the ESP32-C6 supports Over-The-Air (OTA) firmware updates.
Q: Can I use the ESP32-C6 with the Arduino IDE?
A: Yes, the ESP32-C6 is fully compatible with the Arduino IDE. Install the ESP32 board package to get started.
Q: What is the maximum range of Wi-Fi and Bluetooth?
A: Wi-Fi range is approximately 30 meters indoors and 100 meters outdoors. Bluetooth range depends on the environment but typically reaches up to 50 meters.
This documentation provides a comprehensive guide to the Sparkfun ESP32-C6 (Qwiic), ensuring users can effectively integrate it into their projects.