-

ESP32-S3-N16R8-M

From Geekworm Wiki
Revision as of 15:56, 24 August 2026 by Rita (talk | contribs) (Features)
Jump to navigation Jump to search
ESP32-P4-ETH
ESP32-P4-ETH Charging method
ESP32-P4-ETH Support AI

Important Notes

  • This documentation describes ESP32-P4-ETH bare board.
  • The board is equipped with PoE expansion header ONLY. External PoE module must be purchased separately to achieve PoE power supply.
  • Onboard microphone and speaker connector are provided. Audio codec and amplifier are NOT assembled on the board.
  • MIPI-DSI display, MIPI-CSI camera and speaker are peripherals, NOT included with bare board.

Overview

The ESP32-S3-DEV-KIT-N16R8-M is a compact microcontroller development board equipped with multiple digital interfaces.

Hardware-wise, it uses the ESP32-S3-DEV-KIT-N16R8 module, which integrates an Xtensa 32-bit LX7 dual-core processor running at up to 240 MHz, with built-in 512KB SRAM (TCM) and 8MB PSRAM. The board also features CH343 and CH334 chips, allowing both USB and UART development through a single USB-C interface. When connected to a computer, the board enumerates two independent COM ports: one for the ESP32-S3 native USB interface and one for the CH343 USB-to-UART interface. See the FAQ for how to identify them. Its pinout is compatible with the ESP32-S3-DevKitC-1 board, enabling expansion with various peripherals for greater convenience.

This is the -M version, with factory pre-soldered 2×20 header pins (2.54 mm pitch) on both sides, ready to be inserted into a breadboard out of the box; no soldering is required.

As for the software, you can choose ESP-IDF, Arduino, MicroPython, or other development environments so that you can easily and quickly get started and apply it to the product.

Features

  • Powered by the ESP32-S3-WROOM-1-NXRX module, featuring an Xtensa 32-bit LX7 dual-core processor with a main frequency of up to 240MHz
  • Integrated 512KB SRAM and 384KB ROM, with optional PSRAM and Flash memory configurations
  • Integrated 2.4GHz Wi-Fi and Bluetooth LE dual-mode wireless communication with excellent RF performance
  • USB Type-C interface, eliminating concerns about plug orientation
  • Onboard CH343 and CH334 chips, meeting USB and UART development needs through a single Type-C port
  • Rich peripheral interfaces brought out; pin-compatible with the ESP32-S3-DevKitC-1 board for strong compatibility and expandability
  • The pin headers are pre-soldered (-M version), with a standard 2.54 mm pitch, ready to use.
  • Castellated module design allows direct soldering and integration onto user-designed carrier boards
  • Supports multiple low-power operating states, balancing communication distance, data rate, and power consumption to meet the power needs of various application scenarios


Technical Specification

Power input
  • DC 9-24V wide voltage input, DC 5.5-2.1 interface;
  • USB-C PD interface, PD negotiated voltage 12V, please be sure to use PD or QC power supply; input power recommended ≥30W;

(Choose one of the two interfaces)

Power input is split into two paths:

  • One path steps down to 5.2V to directly power the target board;
  • The other path charges the supercapacitor. For safety, charging stops after reaching 5.2V.

These two paths are isolated by a circuit, therefore they will not output simultaneously.

Output
  • 5V5A output, using high-efficiency boost and buck DC-DC power chips;
  • Dual interfaces: USB-C and USB-A, both sharing 5V5A; Specifically designed for powering Raspberry Pi 5;
  • USB-C features PD handshake negotiation, enabling the 5V5APD handshake protocol for Raspberry Pi 5;
  • USB-A;
  • Both interfaces can also be used to connect to other development boards such as Raspberry Pi 4B/3B/Orange Pi;
Energy storage unit
  • 100F supercapacitor (series structure, maximum fully charged voltage 5.4V, safe charging cut-off voltage 5.2V)
Charging time Approximately 15 minutes to fully charge (under 30W PD power supply conditions)
Current and Voltage Detection
  • Identifies charging and discharging status;
  • voltage and current of the supercapacitor can be read via I2C interface, and the direction of the current indicates whether it is charging or discharging;
  • I2C interface allows reading capacitor voltage and charging/discharging current.
Power-down detection
  • One power-down detection pin;
  • a logic level of 3.3V indicates the presence of external power input, and a logic level of 0V indicates that the external power is off. For Raspberry Pi, external power loss can be detected via GPIO26 (40-pin);
  • for other development boards, it can be connected to a GPIO pin.
Wake-up function Power-off self-start circuit (Raspberry Pi 5 exclusive).
Physical Switches

Main power switch + quick discharge button;

  • One power switch to shut off output for safe module installation and removal;
  • One discharge button for quick discharge and safe storage; for example, after use, it is recommended to press this button to discharge the supercapacitor for safety.
Status Indicators 1 power indicator + 5 battery indicator lights + 1 discharge indicator light
Product dimensions 85×56mm; Operating
⚠️ Safety Warning Due to their high energy density and low internal resistance, supercapacitors must not be short-circuited when powered on; similarly,the positive and negative terminals of two supercapacitors must not be short-circuited. Damage caused by short circuits is not covered under warranty. Please exercise extreme caution during operation.

Hardware Description

  1. ESP32-P4NRW32 ESP32-P4 with 32MB stacked PSRAM
  2. 100M RJ45 Ethernet Port
  3. 32MB Nor Flash
  4. Display Interface MIPI-DSI (2-lane), compatible with 5 / 7 / 8 / 10.1inch DSI screens
  5. Camera Interface MIPI-CSI (2-lane), compatible with cameras such as OV5647
  6. Type-C Interface For power supply, programming, and debugging
  7. SMD Microphone
  8. Speaker Interface MX1.25 2P connector, supports 8Ω 2W speaker
  9. 4PIN USB Interface USB OTG 2.0 High Speed interface
  10. PoE Module & Power Supply Header
  11. BOOT Button Press during power-up or reset to enter download mode
  12. RESET Button Reset button
  13. Power Indicator
  14. TF Card Slot SDIO 3.0 interface protocol

Install Guide

Dimensions

Development Tools

Arduino generally offers a gentler learning curve and may be more approachable for beginners and hobbyists. ESP-IDF provides advanced tooling and finer control over system behavior, making it better suited to complex projects and applications with demanding performance requirements.

⚠️warning

ESP32-P4 currently has limited adaptation on the Arduino platform. To ensure development stability, it is recommended to use ESP-IDF for development at this stage. If you have requirements for using the Arduino platform, you can participate in the discussion on GitHub: Support of Arduino

  • ESP-IDF, short for Espressif IoT Development Framework, is a development framework provided by Espressif for the ESP series chips. It is developed using the C language, including a compiler, debugger, and flashing tool, etc., and can be developed via the command lines or through an integrated development environment (such as Visual Studio Code with the Espressif IDF plugin). The plugin offers features such as code navigation, project management, and debugging, etc. We recommend using VS Code for development. For the specific configuration process, please refer to the [Working with ESP-IDF|https://docs.waveshare.com/ESP32-P4-ETH/Development-Environment-Setup-IDF]. The tutorial also provides relevant demos for reference.

Packing List

  • ESP32-P4-ETH Development Board x1
  • 20-pin GPIO Headers x2

User Manual

FAQ

Q1: Which screens are supported by the development board?

A: Please first check the component documentation to confirm compatible screen types: esp32_p4_platform

Q2: How do I determine my ESP32-P4 chip revision?

A: Check the silkscreen marking on the chip and the boot log from the serial port. The ESP32-P4 Platform examples provide build configurations for rev v3.0 and later chips, rev v3.1 and later chips, and rev v0.x / v1.x engineering samples. Before flashing, make sure the firmware configuration matches the actual chip revision.

Q3: Which ESP-IDF version is recommended for ESP32-P4?

A: ESP-IDF v5.5.1 ~ v5.5.4 is recommended. The ESP32-P4 Platform examples are primarily maintained for ESP-IDF release/v5.4 and later versions. Some advanced UI examples may retain compatibility notes for release/v5.3; please refer to the README in the example directory for details.

Q4: Which ESP-IDF version is recommended for ESP32-P4?

A:This message means the firmware's ESP32-P4 chip revision configuration doesn't match the chip on your board. Do not use --forceto skip the check — rebuild with the correct chip revision instead.

The ESP32-P4 Platform repository provides shared configuration files:

  • rev v3.1 or later: config/esp32p4_rev_v3_1.defaults
  • rev v3.0 or later: config/esp32p4_rev_v3_0.defaults
  • rev v0.x / v1.x engineering sample: config/esp32p4_rev_pre_v3.defaults

Specify the matching config in the example directory via SDKCONFIG_DEFAULTS. See the detailed instructions under ESP-IDF examples.

Q5: Can the development board be powered by both USB Type-C and PoE at the same time?

A: Yes, it does not affect power delivery.

Q6: What is the maximum camera resolution supported by ESP32-P4?

A: During functionality testing, we have validated several features. Currently, there are developments such as using a Cat-4 module to provide network connectivity for the P4, or using the P4's MIPI-DSI to extend a host screen. However, for stability reasons, related example programs are not yet provided. They will be added to the wiki once the features and solutions are more mature.

Q7: Can I develop using PlatformIO or MicroPython?

A:

  • For stability, support for ESP32-P4 in PlatformIO requires the PlatformIO community to support the Arduino-esp32 SDK version 3.1x.
  • During development, we have experimented with using MPY firmware for the ESP32-P4, which can run simple commands. However, this is still in the validation phase. Actual interfaces and peripheral applications are not yet fully adapted. Once adaptation is complete and stable, usage examples for ESP32-P4 in MicroPython will be released.