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

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

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

Introduction

The ESP32-S3-ETH is a high-performance microcontroller module manufactured by WAVESHARE (Part ID: ESP32-S3-POE-ETH). It features integrated Wi-Fi and Bluetooth capabilities, along with Ethernet support for reliable wired connectivity. This makes it an excellent choice for IoT applications requiring both wireless and wired communication options. The module is based on the ESP32-S3 chip, which offers dual-core processing, AI acceleration, and low-power operation.

Explore Projects Built with ESP32-S3-ETH

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 Wi-Fi Controlled ILI9341 TFT Display for Cryptocurrency Prices
Image of Crypto Price Tracker (with ESP32-S3): A project utilizing ESP32-S3-ETH in a practical application
This circuit integrates an ESP32-S3 microcontroller with an ILI9341 TFT display to create a WiFi-enabled cryptocurrency price viewer. The ESP32-S3 fetches real-time price data from the CoinGecko API and displays it on the TFT screen, allowing users to monitor the prices of Bitcoin, Ethereum, and Solana.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-S3 Based Smart IoT Distance Sensor with Ethernet Connectivity
Image of ttt: A project utilizing ESP32-S3-ETH in a practical application
This circuit features an ESP32-S3 microcontroller interfaced with a KY-019 Relay module, a VL53L1X time-of-flight sensor, and a W5500 Ethernet module. The ESP32-S3 controls the relay and communicates with the VL53L1X sensor via I2C, as well as with the network through the Ethernet module. An AC source is converted to DC for powering the components, and a micro USB connection is used to trigger the relay.
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-ETH 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-Based Environmental Monitoring and Home Automation System with Ethernet Connectivity
Image of ESP32 30Pin 3Phase AC Box W5500 Ethernet Standard: A project utilizing ESP32-S3-ETH in a practical application
This circuit features an ESP32 microcontroller interfaced with a W5500 Ethernet module for network connectivity, a DHT22 sensor for measuring temperature and humidity, a ZMPT101B module for AC voltage sensing, and an Adafruit SHTC3 sensor for additional temperature and humidity readings. The ESP32 also controls a 4-channel relay module for switching external devices. The sensors and Ethernet module communicate with the ESP32 via GPIO pins, with the W5500 using SPI and the SHTC3 using I2C. Common ground and power lines are shared among the components.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with ESP32-S3-ETH

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 Crypto Price Tracker (with ESP32-S3): A project utilizing ESP32-S3-ETH in a practical application
ESP32-S3 Wi-Fi Controlled ILI9341 TFT Display for Cryptocurrency Prices
This circuit integrates an ESP32-S3 microcontroller with an ILI9341 TFT display to create a WiFi-enabled cryptocurrency price viewer. The ESP32-S3 fetches real-time price data from the CoinGecko API and displays it on the TFT screen, allowing users to monitor the prices of Bitcoin, Ethereum, and Solana.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of ttt: A project utilizing ESP32-S3-ETH in a practical application
ESP32-S3 Based Smart IoT Distance Sensor with Ethernet Connectivity
This circuit features an ESP32-S3 microcontroller interfaced with a KY-019 Relay module, a VL53L1X time-of-flight sensor, and a W5500 Ethernet module. The ESP32-S3 controls the relay and communicates with the VL53L1X sensor via I2C, as well as with the network through the Ethernet module. An AC source is converted to DC for powering the components, and a micro USB connection is used to trigger the relay.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of galon otomatis telegram: A project utilizing ESP32-S3-ETH 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 ESP32 30Pin 3Phase AC Box W5500 Ethernet Standard: A project utilizing ESP32-S3-ETH in a practical application
ESP32-Based Environmental Monitoring and Home Automation System with Ethernet Connectivity
This circuit features an ESP32 microcontroller interfaced with a W5500 Ethernet module for network connectivity, a DHT22 sensor for measuring temperature and humidity, a ZMPT101B module for AC voltage sensing, and an Adafruit SHTC3 sensor for additional temperature and humidity readings. The ESP32 also controls a 4-channel relay module for switching external devices. The sensors and Ethernet module communicate with the ESP32 via GPIO pins, with the W5500 using SPI and the SHTC3 using I2C. Common ground and power lines are shared among the components.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • Smart home devices and automation
  • Industrial IoT systems
  • Networked sensors and data loggers
  • Edge computing and AI-based applications
  • Secure and reliable Ethernet-based IoT deployments

Technical Specifications

Key Technical Details

Parameter Value
Microcontroller ESP32-S3 (Xtensa® 32-bit LX7 dual-core)
Clock Speed Up to 240 MHz
Flash Memory 16 MB
PSRAM 8 MB
Wi-Fi 802.11 b/g/n (2.4 GHz)
Bluetooth Bluetooth 5.0 (LE)
Ethernet Support IEEE 802.3 (10/100 Mbps)
Power Supply 5V via PoE or USB-C
GPIO Pins 36 (multipurpose, configurable)
Operating Voltage 3.3V (I/O pins)
Operating Temperature -40°C to 85°C
Dimensions 88 mm x 25 mm

Pin Configuration and Descriptions

The ESP32-S3-ETH module features a variety of pins for GPIO, communication, and power. Below is the pinout description:

Pin Name Function Description
VIN Power Input 5V input via USB-C or PoE
GND Ground Common ground
GPIO0 General Purpose I/O Configurable as input, output, or special func.
GPIO1-35 General Purpose I/O Multipurpose pins for peripherals
TXD0 UART0 Transmit Serial communication TX
RXD0 UART0 Receive Serial communication RX
EN Enable Module enable pin
ETH_TXD0 Ethernet Transmit Data 0 Ethernet communication TX
ETH_TXD1 Ethernet Transmit Data 1 Ethernet communication TX
ETH_RXD0 Ethernet Receive Data 0 Ethernet communication RX
ETH_RXD1 Ethernet Receive Data 1 Ethernet communication RX
ETH_CLK Ethernet Clock Clock signal for Ethernet
3V3 3.3V Output Power output for external peripherals

Usage Instructions

How to Use the ESP32-S3-ETH in a Circuit

  1. Powering the Module:

    • Connect a 5V power source via the USB-C port or use Power over Ethernet (PoE) for powering the module.
    • Ensure the power supply is stable and within the specified voltage range.
  2. Connecting to Ethernet:

    • Use an Ethernet cable to connect the module to a network switch or router.
    • Ensure the Ethernet pins (ETH_TXD0, ETH_TXD1, ETH_RXD0, ETH_RXD1, and ETH_CLK) are properly configured if using custom hardware.
  3. Programming the Module:

    • Use the USB-C port to connect the module to a computer for programming.
    • Install the necessary drivers and tools (e.g., ESP-IDF or Arduino IDE with ESP32-S3 support).
    • Select the correct board and port in your development environment.
  4. Using GPIO Pins:

    • Configure GPIO pins as needed for input, output, or communication protocols (e.g., I2C, SPI, UART).
    • Use appropriate pull-up or pull-down resistors if required.
  5. Wi-Fi and Bluetooth Setup:

    • Use the ESP-IDF or Arduino libraries to configure Wi-Fi and Bluetooth settings.
    • Ensure proper security protocols (e.g., WPA2) are implemented for Wi-Fi connections.

Important Considerations and Best Practices

  • Power Supply: Always use a stable 5V power source to avoid damage to the module.
  • Ethernet Configuration: Ensure the Ethernet PHY is properly initialized in your code.
  • GPIO Voltage Levels: Do not exceed 3.3V on GPIO pins to prevent damage.
  • Firmware Updates: Regularly update the firmware to ensure compatibility and security.

Example Code for Arduino UNO Integration

Below is an example of how to use the ESP32-S3-ETH with the Arduino IDE to connect to an Ethernet network and print the IP address:

#include <ETH.h> // Include the Ethernet library for ESP32-S3

// Ethernet configuration
#define ETH_CLK_MODE ETH_CLOCK_GPIO0_IN // Set clock mode
#define ETH_PHY_POWER 12                // GPIO pin for PHY power

void setup() {
  Serial.begin(115200); // Initialize serial communication
  delay(1000);          // Wait for serial monitor to open

  // Initialize Ethernet
  ETH.begin(ETH_PHY_POWER, ETH_CLK_MODE); 
  Serial.println("Initializing Ethernet...");

  // Wait for an IP address
  while (!ETH.localIP()) {
    delay(100); // Wait for IP assignment
    Serial.print(".");
  }

  // Print the assigned IP address
  Serial.println("\nEthernet connected!");
  Serial.print("IP Address: ");
  Serial.println(ETH.localIP());
}

void loop() {
  // Main loop can handle other tasks
}

Troubleshooting and FAQs

Common Issues and Solutions

  1. Module Not Powering On:

    • Ensure the power source is providing 5V.
    • Check the USB-C cable or PoE connection for faults.
  2. Ethernet Not Connecting:

    • Verify the Ethernet cable is securely connected.
    • Check the network configuration in your code.
    • Ensure the Ethernet PHY is properly initialized.
  3. Wi-Fi Connection Fails:

    • Double-check the SSID and password in your code.
    • Ensure the Wi-Fi network is within range and operational.
  4. GPIO Pins Not Responding:

    • Verify the pin configuration in your code.
    • Check for short circuits or incorrect voltage levels.

FAQs

Q: Can I use both Wi-Fi and Ethernet simultaneously?
A: Yes, the ESP32-S3-ETH supports simultaneous use of Wi-Fi and Ethernet, but proper configuration is required in your code.

Q: What is the maximum Ethernet speed supported?
A: The module supports up to 100 Mbps Ethernet speeds.

Q: Can I power the module using 3.3V directly?
A: No, the module requires a 5V input via USB-C or PoE. The onboard regulator provides 3.3V internally.

Q: Is the module compatible with Arduino IDE?
A: Yes, the ESP32-S3-ETH is compatible with the Arduino IDE. Ensure you install the ESP32 board package.


This concludes the documentation for the ESP32-S3-ETH module. For further assistance, refer to the official WAVESHARE documentation or community forums.