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

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

Image of Seeed Xiao ESP32-S3Design with Seeed Xiao ESP32-S3 in Cirkit Designer

Introduction

The Seeed Xiao ESP32-S3 (Manufacturer Part ID: 113991114) is a compact and powerful microcontroller board designed by Seeedstudio. It is based on the ESP32-S3 chip, which features dual-core Xtensa LX7 processors, built-in Wi-Fi, and Bluetooth 5.0 LE capabilities. This board is ideal for Internet of Things (IoT) applications, wearable devices, and other projects requiring wireless connectivity in a small form factor.

With its rich set of GPIO pins, low power consumption, and support for AI acceleration, the Seeed Xiao ESP32-S3 is a versatile choice for developers and hobbyists alike. Its compatibility with popular development platforms like Arduino IDE and CircuitPython makes it accessible to users of all skill levels.

Explore Projects Built with Seeed Xiao ESP32-S3

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-S3 Based Vibration Detection System with TFT Display and Power Backup: A project utilizing Seeed Xiao ESP32-S3 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.

Open Project in Cirkit Designer
Image of Xiao ESP32 C3 Based Temperature and Humidity Monitoring System: A project utilizing Seeed Xiao ESP32-S3 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.

Open Project in Cirkit Designer
Image of Xiao ESP32 C3 and Adafruit RFM9x LoRa Radio Communication Module: A project utilizing Seeed Xiao ESP32-S3 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.

Open Project in Cirkit Designer
Image of ESP32C3 and LoRa-Enabled Environmental Sensing Node: A project utilizing Seeed Xiao ESP32-S3 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

Common Applications


Technical Specifications

Key Technical Details

Specification Value
Microcontroller ESP32-S3 (Xtensa® 32-bit LX7 dual-core)
Clock Speed Up to 240 MHz
Flash Memory 8 MB
PSRAM 8 MB
Wireless Connectivity Wi-Fi 802.11 b/g/n, Bluetooth 5.0 LE
Operating Voltage 3.3V
Input Voltage Range 5V (via USB-C)
GPIO Pins 11 (including ADC, I2C, SPI, UART, PWM)
USB Interface USB-C (supports programming and power)
Dimensions 21 x 17.5 mm
Power Consumption (Idle) ~10 mA
AI Acceleration Support for vector instructions and ML

Pin Configuration and Descriptions

Pin Name Pin Number Functionality
3V3 1 3.3V power output
GND 2 Ground
D0 3 GPIO, UART RX, ADC, PWM
D1 4 GPIO, UART TX, ADC, PWM
D2 5 GPIO, I2C SDA, ADC, PWM
D3 6 GPIO, I2C SCL, ADC, PWM
D4 7 GPIO, SPI MOSI, ADC, PWM
D5 8 GPIO, SPI MISO, ADC, PWM
D6 9 GPIO, SPI SCK, ADC, PWM
D7 10 GPIO, ADC, PWM
RST 11 Reset pin

Usage Instructions

How to Use the Seeed Xiao ESP32-S3 in a Circuit

  1. Powering the Board:

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

    • Install the necessary drivers and libraries for the ESP32-S3 in your development environment (e.g., Arduino IDE or CircuitPython).
    • Select the correct board and port in your IDE.
    • Write your code and upload it to the board via the USB-C connection.
  3. Connecting Peripherals:

    • Use the GPIO pins to connect sensors, actuators, or other peripherals. Refer to the pin configuration table for specific pin functionalities.
    • Ensure that the connected peripherals operate at 3.3V logic levels to avoid damaging the board.

Example: Blinking an LED with Arduino IDE

Here is a simple example to blink an LED connected to pin D2:

// Define the pin where the LED is connected
const int ledPin = 2; // D2 corresponds to GPIO2

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

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

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

Important Considerations and Best Practices


Troubleshooting and FAQs

Common Issues and Solutions

  1. The board is not detected by the computer:

    • Ensure the USB-C cable is a data cable (not just a charging cable).
    • Check if the necessary drivers for the ESP32-S3 are installed on your computer.
    • Try a different USB port or cable.
  2. Code upload fails:

    • Verify that the correct board and port are selected in your IDE.
    • Press and hold the reset button while uploading the code to enter bootloader mode.
  3. Wi-Fi or Bluetooth is not working:

    • Ensure the correct libraries (e.g., WiFi.h or BluetoothSerial.h) are included in your code.
    • Check that your router or Bluetooth device is within range.
  4. Peripherals are not responding:

    • Double-check the wiring and connections.
    • Confirm that the peripherals are compatible with 3.3V logic levels.

FAQs

Q: Can I use the Seeed Xiao ESP32-S3 with CircuitPython?
A: Yes, the board is compatible with CircuitPython. You can download the appropriate firmware from the CircuitPython website and flash it to the board.

Q: What is the maximum current output of the 3V3 pin?
A: The 3V3 pin can supply up to 500 mA, depending on the input power source.

Q: Does the board support deep sleep mode?
A: Yes, the ESP32-S3 supports deep sleep mode for ultra-low power consumption, making it ideal for battery-powered applications.

Q: Can I use this board for AI/ML applications?
A: Absolutely! The ESP32-S3 includes support for vector instructions and AI acceleration, making it suitable for lightweight AI/ML tasks.


This documentation provides a comprehensive guide to using the Seeed Xiao ESP32-S3. For further assistance, refer to the official Seeedstudio documentation or community forums.