Cirkit Designer LogoCirkit DesignerYour all-in-one circuit design IDE Launch Cirkit Designer App

How to Use GOOUUU-ESP32-C3: Examples, Pinouts, and Specs

Image of GOOUUU-ESP32-C3Design with GOOUUU-ESP32-C3 in Cirkit Designer

Introduction

The GOOUUU-ESP32-C3 is a compact, low-power microcontroller board built around the ESP32-C3 chip. It features integrated Wi-Fi and Bluetooth Low Energy (BLE) connectivity, making it an excellent choice for Internet of Things (IoT) applications. This board is designed to support a wide range of sensors and peripherals, offering versatile GPIO pins, ADCs, and other interfaces. Its small form factor and energy efficiency make it ideal for smart home devices, wearables, and industrial IoT solutions.

Explore Projects Built with GOOUUU-ESP32-C3

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 ESP32C3 and LoRa-Enabled Environmental Sensing Node: A project utilizing GOOUUU-ESP32-C3 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.

Open Project in Cirkit Designer
Image of ESP32-Powered NTP Clock with Multiple GC9A01 Displays: A project utilizing GOOUUU-ESP32-C3 in a practical application
ESP32-Powered NTP Clock with Multiple GC9A01 Displays

This circuit features an ESP32 microcontroller connected to multiple GC9A01 displays and a USB Type C breakout for power. The ESP32 runs a sketch to retrieve the current time from an NTP server over WiFi and displays the hours and minutes across the GC9A01 displays, with each display showing a single digit or colon separator. Pushbuttons are connected to GPIOs on the ESP32, potentially for user input to control display functions or settings.

Open Project in Cirkit Designer

Common Applications and Use Cases

Technical Specifications

The GOOUUU-ESP32-C3 offers the following key technical features:

Specification Details
Microcontroller ESP32-C3 (RISC-V 32-bit single-core processor)
Clock Speed Up to 160 MHz
Flash Memory 4 MB
SRAM 400 KB
Connectivity Wi-Fi 802.11 b/g/n (2.4 GHz), Bluetooth 5.0 LE
GPIO Pins 22 GPIO pins
ADC Channels 6 (12-bit resolution)
Operating Voltage 3.3V
Input Voltage Range 5V (via USB)
Power Consumption Ultra-low power modes available
Interfaces UART, SPI, I2C, PWM, ADC, DAC
Dimensions 18 mm x 25 mm

Pin Configuration and Descriptions

The GOOUUU-ESP32-C3 has a total of 22 GPIO pins, which can be configured for various functions. Below is the pinout description:

Pin Name Function
1 GND Ground
2 3V3 3.3V power output
3 EN Enable pin (active high)
4 GPIO0 General-purpose I/O, boot mode selection
5 GPIO1 General-purpose I/O, UART TX
6 GPIO2 General-purpose I/O, UART RX
7 GPIO3 General-purpose I/O, ADC channel
8 GPIO4 General-purpose I/O, PWM output
9 GPIO5 General-purpose I/O, SPI MOSI
10 GPIO6 General-purpose I/O, SPI MISO
11 GPIO7 General-purpose I/O, SPI CLK
12 GPIO8 General-purpose I/O, I2C SDA
13 GPIO9 General-purpose I/O, I2C SCL
14 GPIO10 General-purpose I/O, ADC channel
15 GPIO11 General-purpose I/O, PWM output
16 GPIO12 General-purpose I/O, ADC channel
17 GPIO13 General-purpose I/O, UART TX
18 GPIO14 General-purpose I/O, UART RX
19 GPIO15 General-purpose I/O, ADC channel
20 GPIO16 General-purpose I/O, PWM output
21 GPIO17 General-purpose I/O, ADC channel
22 GPIO18 General-purpose I/O, ADC channel

Usage Instructions

How to Use the GOOUUU-ESP32-C3 in a Circuit

  1. Powering the Board:

    • Connect the board to a 5V power source via the USB-C port. The onboard voltage regulator will step down the voltage to 3.3V.
    • Alternatively, supply 3.3V directly to the 3V3 pin.
  2. Programming the Board:

    • Use the Arduino IDE or ESP-IDF (Espressif IoT Development Framework) to program the board.
    • Select "ESP32-C3 Dev Module" as the board in the Arduino IDE.
  3. Connecting Peripherals:

    • Use the GPIO pins to connect sensors, actuators, or other peripherals.
    • Ensure that the voltage levels of connected devices are compatible with the 3.3V logic of the board.
  4. Wi-Fi and Bluetooth Setup:

    • Use the built-in libraries (e.g., WiFi.h and BLEDevice.h in Arduino) to configure wireless connectivity.

Important Considerations and Best Practices

Example Code for Arduino UNO Integration

Below is an example of how to use the GOOUUU-ESP32-C3 to read a temperature sensor and send the data over Wi-Fi:

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

// Wi-Fi credentials
const char* ssid = "Your_SSID";
const char* password = "Your_PASSWORD";

// Pin configuration
const int tempSensorPin = 34; // ADC pin connected to the temperature sensor

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(1000);
    Serial.println("Connecting to Wi-Fi...");
  }
  Serial.println("Connected to Wi-Fi!");
}

void loop() {
  // Read temperature sensor value
  int sensorValue = analogRead(tempSensorPin);
  
  // Convert sensor value to voltage (assuming 3.3V reference)
  float voltage = sensorValue * (3.3 / 4095.0);
  
  // Print the voltage to the serial monitor
  Serial.print("Sensor Voltage: ");
  Serial.println(voltage);

  delay(1000); // Wait 1 second before the next reading
}

Troubleshooting and FAQs

Common Issues and Solutions

  1. The board is not detected by the computer:

    • Ensure the USB cable is functional and supports data transfer.
    • Install the necessary USB-to-serial drivers for the ESP32-C3.
  2. Wi-Fi connection fails:

    • Double-check the SSID and password.
    • Ensure the Wi-Fi network is operating on the 2.4 GHz band (not 5 GHz).
  3. GPIO pins are not functioning as expected:

    • Verify the pin configuration in your code.
    • Check for conflicting pin assignments.
  4. The board overheats:

    • Ensure the input voltage does not exceed 5V.
    • Avoid drawing excessive current from the GPIO pins.

FAQs