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

How to Use ESP32-S3 UNO: Examples, Pinouts, and Specs

Image of ESP32-S3 UNO
Cirkit Designer LogoDesign with ESP32-S3 UNO in Cirkit Designer

Introduction

The ESP32-S3 UNO is a microcontroller board built around the ESP32-S3 chip, which features dual-core Xtensa LX7 processors, integrated Wi-Fi, and Bluetooth 5.0 connectivity. This board is designed for Internet of Things (IoT) applications, offering robust wireless communication capabilities and support for a wide range of peripherals. Its compatibility with the Arduino IDE and MicroPython makes it an excellent choice for both beginners and experienced developers.

Explore Projects Built with ESP32-S3 UNO

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-S3 Based Environmental Monitoring and Control System with Data Logging
Image of ESP32: A project utilizing ESP32-S3 UNO in a practical application
This circuit features an ESP32-S3 microcontroller interfaced with various sensors and modules, including a DHT22 temperature and humidity sensor, an HC-SR04 ultrasonic sensor, an SGP41 VOC and NOx sensor, and an Adafruit INA260 current and power sensor. The ESP32-S3 also controls a DC motor via a relay and communicates with an SD card and an OLED display. An Arduino UNO is used to read inputs from a rotary encoder, and a step-down buck converter is used to regulate voltage from a 12V battery to power the components.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-S3 Based Vibration Detection System with TFT Display and Power Backup
Image of IOT Thesis: A project utilizing ESP32-S3 UNO in a practical application
This circuit features an ESP32-S3 microcontroller connected to various peripherals including an ADXL355 accelerometer, an SW-420 vibration sensor, a buzzer module, and an ILI9341 TFT display. The ESP32-S3 manages sensor inputs and provides output to the display and buzzer. Power management is handled by a 12V to 5V step-down converter, and a UPS ensures uninterrupted power supply, with a rocker switch to control the power flow.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-S3 Based Automated Watering System with Ultrasonic Sensing and Data Logging
Image of galon otomatis telegram: A project utilizing ESP32-S3 UNO in a practical application
This circuit features an ESP32-S3 microcontroller connected to various peripherals including an HC-SR04 ultrasonic sensor, a water flow sensor, an OLED display, a DS3231 real-time clock (RTC), an SD card module, a water pump, a two-channel relay, and a valve solenoid. The ESP32-S3 manages sensor readings, data logging, and controls the water pump and valve via the relay based on sensor inputs. The circuit is designed for monitoring and controlling water flow, likely in an automated irrigation or fluid management system.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32 and Arduino UNO Based GPS-Enabled Battery-Powered Smart Relay System
Image of smartrax tbike: A project utilizing ESP32-S3 UNO in a practical application
This circuit integrates an Arduino UNO and an ESP32 microcontroller to control a servo motor, a solenoid, and a GPS module. The Arduino UNO communicates with the ESP32 via serial connection and controls the servo and solenoid through a relay. Power is supplied by 18650 Li-ion batteries and regulated by a step-down DC regulator.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with ESP32-S3 UNO

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: A project utilizing ESP32-S3 UNO in a practical application
ESP32-S3 Based Environmental Monitoring and Control System with Data Logging
This circuit features an ESP32-S3 microcontroller interfaced with various sensors and modules, including a DHT22 temperature and humidity sensor, an HC-SR04 ultrasonic sensor, an SGP41 VOC and NOx sensor, and an Adafruit INA260 current and power sensor. The ESP32-S3 also controls a DC motor via a relay and communicates with an SD card and an OLED display. An Arduino UNO is used to read inputs from a rotary encoder, and a step-down buck converter is used to regulate voltage from a 12V battery to power the components.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of IOT Thesis: A project utilizing ESP32-S3 UNO in a practical application
ESP32-S3 Based Vibration Detection System with TFT Display and Power Backup
This circuit features an ESP32-S3 microcontroller connected to various peripherals including an ADXL355 accelerometer, an SW-420 vibration sensor, a buzzer module, and an ILI9341 TFT display. The ESP32-S3 manages sensor inputs and provides output to the display and buzzer. Power management is handled by a 12V to 5V step-down converter, and a UPS ensures uninterrupted power supply, with a rocker switch to control the power flow.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of galon otomatis telegram: A project utilizing ESP32-S3 UNO in a practical application
ESP32-S3 Based Automated Watering System with Ultrasonic Sensing and Data Logging
This circuit features an ESP32-S3 microcontroller connected to various peripherals including an HC-SR04 ultrasonic sensor, a water flow sensor, an OLED display, a DS3231 real-time clock (RTC), an SD card module, a water pump, a two-channel relay, and a valve solenoid. The ESP32-S3 manages sensor readings, data logging, and controls the water pump and valve via the relay based on sensor inputs. The circuit is designed for monitoring and controlling water flow, likely in an automated irrigation or fluid management system.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of smartrax tbike: A project utilizing ESP32-S3 UNO in a practical application
ESP32 and Arduino UNO Based GPS-Enabled Battery-Powered Smart Relay System
This circuit integrates an Arduino UNO and an ESP32 microcontroller to control a servo motor, a solenoid, and a GPS module. The Arduino UNO communicates with the ESP32 via serial connection and controls the servo and solenoid through a relay. Power is supplied by 18650 Li-ion batteries and regulated by a step-down DC regulator.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • IoT devices and smart home automation
  • Wireless sensor networks
  • Wearable technology
  • Robotics and drones
  • Prototyping and development of connected devices
  • Real-time data monitoring and logging

Technical Specifications

Key Technical Details

  • Microcontroller: ESP32-S3 (Xtensa LX7 dual-core processor)
  • Clock Speed: Up to 240 MHz
  • Flash Memory: 8 MB (varies by model)
  • SRAM: 512 KB
  • Wireless Connectivity: Wi-Fi 802.11 b/g/n and Bluetooth 5.0 (LE)
  • Operating Voltage: 3.3V
  • Input Voltage (VIN): 5V (via USB or external power supply)
  • GPIO Pins: 21 (configurable for digital I/O, PWM, ADC, etc.)
  • ADC Channels: 12-bit, up to 20 channels
  • Communication Interfaces: UART, SPI, I2C, I2S, CAN, and USB OTG
  • USB Interface: USB Type-C
  • Power Consumption: Ultra-low power modes supported
  • Dimensions: Compatible with Arduino UNO form factor

Pin Configuration and Descriptions

The ESP32-S3 UNO features a pinout similar to the Arduino UNO, making it easy to integrate into existing projects. Below is the pin configuration:

Pin Name Description
1 VIN Input voltage (5V) for powering the board.
2 GND Ground pin.
3 3V3 3.3V output for powering external components.
4 GPIO0 General-purpose I/O pin, also used for boot mode selection.
5 GPIO1 General-purpose I/O pin.
6 GPIO2 General-purpose I/O pin, supports ADC and PWM.
7 GPIO3 General-purpose I/O pin, supports ADC and PWM.
8 TXD (GPIO43) UART transmit pin.
9 RXD (GPIO44) UART receive pin.
10 SDA (GPIO8) I2C data line.
11 SCL (GPIO9) I2C clock line.
12 SPI_MOSI SPI data output.
13 SPI_MISO SPI data input.
14 SPI_SCK SPI clock line.
15 SPI_CS SPI chip select.
16 ADC0-ADC19 Analog input pins (12-bit resolution).
17 EN Enable pin to reset the board.
18 USB D+ USB data positive line.
19 USB D- USB data negative line.

Usage Instructions

How to Use the ESP32-S3 UNO in a Circuit

  1. Powering the Board:

    • Connect the board to your computer using a USB Type-C cable for power and programming.
    • Alternatively, supply 5V to the VIN pin for external power.
  2. Programming the Board:

    • Install the Arduino IDE and add the ESP32 board manager URL in the preferences.
    • Install the ESP32 board package via the Board Manager.
    • Select "ESP32-S3 Dev Module" as the board type and the correct COM port.
  3. Connecting Peripherals:

    • Use the GPIO pins for digital I/O, PWM, or ADC as needed.
    • Connect sensors, actuators, or other devices to the appropriate pins.
  4. Uploading Code:

    • Write your code in the Arduino IDE or MicroPython environment.
    • Click the upload button to flash the code to the ESP32-S3 UNO.

Important Considerations and Best Practices

  • Ensure the input voltage does not exceed 5V to avoid damaging the board.
  • Use level shifters when interfacing with 5V logic devices, as the ESP32-S3 operates at 3.3V.
  • Avoid connecting high-current loads directly to GPIO pins; use external drivers or relays.
  • Use pull-up or pull-down resistors for stable input signals on GPIO pins.

Example Code for Arduino IDE

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

// Define the GPIO pin for the LED
#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
}

Troubleshooting and FAQs

Common Issues and Solutions

  1. Board Not Detected by Computer:

    • Ensure the USB cable is functional and supports data transfer.
    • Check if the correct COM port is selected in the Arduino IDE.
    • Install the necessary USB drivers for the ESP32-S3.
  2. Code Upload Fails:

    • Verify that the correct board type is selected in the Arduino IDE.
    • Press and hold the BOOT button while uploading the code.
  3. Wi-Fi Connection Issues:

    • Double-check the SSID and password in your code.
    • Ensure the router is within range and supports 2.4 GHz Wi-Fi.
  4. GPIO Pin Not Responding:

    • Confirm that the pin is not being used by another peripheral.
    • Check for loose or incorrect connections in the circuit.

FAQs

  • Q: Can I use the ESP32-S3 UNO with MicroPython?
    A: Yes, the ESP32-S3 UNO supports MicroPython. Flash the MicroPython firmware to the board and use a compatible IDE like Thonny.

  • Q: What is the maximum current output of the GPIO pins?
    A: Each GPIO pin can source or sink up to 40 mA, but it is recommended to limit the current to 20 mA for safe operation.

  • Q: Does the ESP32-S3 UNO support deep sleep mode?
    A: Yes, the ESP32-S3 supports ultra-low power deep sleep mode for energy-efficient applications.

  • Q: Can I use the ESP32-S3 UNO with 5V sensors?
    A: Yes, but you will need level shifters to convert the 5V logic to 3.3V.

This documentation provides a comprehensive guide to using the ESP32-S3 UNO for your IoT and prototyping needs.