-
ESP32-S3-N16R8-M: Difference between revisions
| Line 119: | Line 119: | ||
<div class="toccolours mw-collapsible mw-collapsed"> | <div class="toccolours mw-collapsible mw-collapsed"> | ||
<div style="font-weight:bold;line-height:1.0;"> | <div style="font-weight:bold;line-height:1.0;"> | ||
Q1: Which | Q1: Two COM ports appear in Device Manager. Which one should I select? | ||
</div> | </div> | ||
<div class="mw-collapsible-content"> | <div class="mw-collapsible-content"> | ||
A: | A: The board has an onboard CH334 USB hub. A single Type-C connection enumerates two independent COM ports, and either port can be used to flash programs. | ||
</ | With the USB cable connected, locate the two ports under '''Ports (COM & LPT)''' in Device Manager and distinguish them by their device names: | ||
</ | |||
The port whose name contains <code>USB-Enhanced-SERIAL CH343</code> is the CH343 USB-to-UART interface. | |||
The port whose name contains <code>Espressif</code> or<code> USB JTAG/serial debug unit</code> is the ESP32-S3 native USB interface, which can also be used for JTAG debugging. | |||
To open Device Manager in Windows, right-click the Start menu in the lower-left corner of the desktop and select '''Device Manager'''. Alternatively, press {{key press|Win|R}}, enter<code> devmgmt.msc</code>, and press {{key press|Enter}}. | |||
For a detailed comparison of the two interfaces, see [https://docs.waveshare.com/ESP32-S3-DEV-KIT-N8R8/Arduino Working with Arduino]. | |||
</div> | </div> | ||
| Line 139: | Line 137: | ||
<div class="toccolours mw-collapsible mw-collapsed"> | <div class="toccolours mw-collapsible mw-collapsed"> | ||
<div style="font-weight:bold;line-height:1.0;"> | <div style="font-weight:bold;line-height:1.0;"> | ||
Q2: How do I determine my ESP32-P4 chip revision? | |||
</div> | </div> | ||
<div class="mw-collapsible-content"> | <div class="mw-collapsible-content"> | ||
A: | A: Use either of the following methods to put the board back into download mode: | ||
* Press and hold the RESET button for more than 1 second, then release it. Wait for the computer to detect the device again before flashing. | |||
* Press and hold the BOOT button, press and release the RESET button, and then release the BOOT button. The board enters download mode, which resolves most flashing failures. | |||
</div> | </div> | ||
</div> | </div> | ||
| Line 149: | Line 149: | ||
<div class="toccolours mw-collapsible mw-collapsed"> | <div class="toccolours mw-collapsible mw-collapsed"> | ||
<div style="font-weight:bold;line-height:1.0;"> | <div style="font-weight:bold;line-height:1.0;"> | ||
Q3: Why does flashing fail or the program behave unexpectedly after I replace the board with another one of the same model? | |||
</div> | </div> | ||
<div class="mw-collapsible-content"> | <div class="mw-collapsible-content"> | ||
A: | A: After replacing the board, the computer usually assigns different COM ports. Select the COM port and target chip again, then recompile and flash the program. | ||
</div> | </div> | ||
</div> | </div> | ||
| Line 168: | Line 158: | ||
<div class="toccolours mw-collapsible mw-collapsed"> | <div class="toccolours mw-collapsible mw-collapsed"> | ||
<div style="font-weight:bold;line-height:1.0;"> | <div style="font-weight:bold;line-height:1.0;"> | ||
Q4: Why does the detected serial device repeatedly reset and reconnect after the board is powered on? | |||
</div> | </div> | ||
<div class="mw-collapsible-content"> | <div class="mw-collapsible-content"> | ||
A: | A:This is usually caused by insufficient power from the USB port. Check the supply voltage of the computer's USB port. It should normally be above 4.9 V; below this value, the board may repeatedly disconnect. Switch to a USB port that provides sufficient power. Both USB interfaces on the board can operate normally. | ||
</div> | </div> | ||
</div> | </div> | ||
| Line 178: | Line 167: | ||
<div class="toccolours mw-collapsible mw-collapsed"> | <div class="toccolours mw-collapsible mw-collapsed"> | ||
<div style="font-weight:bold;line-height:1.0;"> | <div style="font-weight:bold;line-height:1.0;"> | ||
Q5: Why are the ESP-IDF controls missing from the VS Code status bar? | |||
</div> | </div> | ||
<div class="mw-collapsible-content"> | <div class="mw-collapsible-content"> | ||
A: | A: Press <code>F1</code> to open the Command Palette and search for Espressif IDF. If the extension is marked as untrusted, set it to trusted so it can operate normally. | ||
</div> | </div> | ||
| Line 188: | Line 177: | ||
<div class="toccolours mw-collapsible mw-collapsed"> | <div class="toccolours mw-collapsible mw-collapsed"> | ||
<div style="font-weight:bold;line-height:1.0;"> | <div style="font-weight:bold;line-height:1.0;"> | ||
Q6: Why can't I open the debugging interface when performing JTAG debugging? | |||
</div> | </div> | ||
<div class="mw-collapsible-content"> | <div class="mw-collapsible-content"> | ||
A: | A: Click the OpenOCD button in the VS Code status bar, stop OpenOCD, and then start it again. | ||
</div> | </div> | ||
Revision as of 17:56, 24 August 2026



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
| Module | ESP32-S3-WROOM-1-N16R8 |
| Processor | Xtensa 32-bit LX7 dual-core, up to 240 MHz |
| On-chip | Memory 512 KB SRAM (TCM), 384 KB ROM |
| Flash | 16 MB (Quad SPI, DIO/QIO mode) |
| PSRAM | 8 MB |
| Wireless | 2.4 GHz Wi-Fi (802.11 b/g/n), Bluetooth 5 (LE), Bluetooth Mesh |
| USB Interface | USB Type-C (power supply, programming, debugging) |
| Onboard Chips | CH343 (USB to UART), CH334 (USB 2.0 HUB) |
| GPIO (chip) | GPIO35/36/37 are NC on the WROOM-1 module |
| Peripherals | 4× SPI, 3× UART, 2× I2C, 2× I2S, 14× Touch, RMT, LED PWM, USB-OTG, TWAI, 2×12-bit ADC, LCD interface, DVP |
| Dimensions |
63.30 × 25.40 mm |
| Development Environment | ESP-IDF, Arduino, MicroPython, PlatformIO, etc. |
Hardware Description
- ESP32-P4NRW32 ESP32-P4 with 32MB stacked PSRAM
- 100M RJ45 Ethernet Port
- 32MB Nor Flash
- Display Interface MIPI-DSI (2-lane), compatible with 5 / 7 / 8 / 10.1inch DSI screens
- Camera Interface MIPI-CSI (2-lane), compatible with cameras such as OV5647
- Type-C Interface For power supply, programming, and debugging
- SMD Microphone
- Speaker Interface MX1.25 2P connector, supports 8Ω 2W speaker
- 4PIN USB Interface USB OTG 2.0 High Speed interface
- PoE Module & Power Supply Header
- BOOT Button Press during power-up or reset to enter download mode
- RESET Button Reset button
- Power Indicator
- TF Card Slot SDIO 3.0 interface protocol
Install Guide
Dimensions
Development Methods
The ESP32 supports multiple development methods, allowing for professional development using the Espressif official ESP-IDF framework, or rapid prototyping using platforms like the Arduino IDE or MicroPython.
The main development platforms include:
- ESP-IDF: Espressif's official development framework, specifically built for the ESP32 series chips, providing a complete development toolchain, code libraries, and documentation. It can fully leverage all the performance and features of ESP32 and is the preferred solution for professional development and commercial products.
- Arduino: A well-known open-source hardware/software platform offering a simple and standard C++ interface, supporting numerous microcontrollers including ESP32. Arduino has rich libraries and examples, widely used in prototyping and education, and is a popular entry-level platform for beginners. For the development environment configuration, please refer to Working with Arduino page.
- MicroPython: The simplified version of Python 3 includes core features and is optimized for microcontroller environments. It supports instant execution without repeated compilation and flashing. It provides an efficient way for developers familiar with Python to get started with ESP32 quickly. For development environment setup, please refer to the Working with MicroPython page.
- Other Development Methods: The ESP32 development ecosystem is very rich. Besides the aforementioned platforms, development is also supported via platforms like PlatformIO, Mongoose OS, Espruino (JavaScript), ESPHome, etc., catering to the needs of developers with different technical backgrounds.
Packing List
- ESP32-P4-ETH Development Board x1
- 20-pin GPIO Headers x2
User Manual
FAQ
Q1: Two COM ports appear in Device Manager. Which one should I select?
A: The board has an onboard CH334 USB hub. A single Type-C connection enumerates two independent COM ports, and either port can be used to flash programs.
With the USB cable connected, locate the two ports under Ports (COM & LPT) in Device Manager and distinguish them by their device names:
The port whose name contains USB-Enhanced-SERIAL CH343 is the CH343 USB-to-UART interface.
The port whose name contains Espressif or USB JTAG/serial debug unit is the ESP32-S3 native USB interface, which can also be used for JTAG debugging.
To open Device Manager in Windows, right-click the Start menu in the lower-left corner of the desktop and select Device Manager. Alternatively, press Template:Key press, enter devmgmt.msc, and press Template:Key press.
For a detailed comparison of the two interfaces, see Working with Arduino.
Q2: How do I determine my ESP32-P4 chip revision?
A: Use either of the following methods to put the board back into download mode:
- Press and hold the RESET button for more than 1 second, then release it. Wait for the computer to detect the device again before flashing.
- Press and hold the BOOT button, press and release the RESET button, and then release the BOOT button. The board enters download mode, which resolves most flashing failures.
Q3: Why does flashing fail or the program behave unexpectedly after I replace the board with another one of the same model?
A: After replacing the board, the computer usually assigns different COM ports. Select the COM port and target chip again, then recompile and flash the program.
Q4: Why does the detected serial device repeatedly reset and reconnect after the board is powered on?
A:This is usually caused by insufficient power from the USB port. Check the supply voltage of the computer's USB port. It should normally be above 4.9 V; below this value, the board may repeatedly disconnect. Switch to a USB port that provides sufficient power. Both USB interfaces on the board can operate normally.
Q5: Why are the ESP-IDF controls missing from the VS Code status bar?
A: Press F1 to open the Command Palette and search for Espressif IDF. If the extension is marked as untrusted, set it to trusted so it can operate normally.
Q6: Why can't I open the debugging interface when performing JTAG debugging?
A: Click the OpenOCD button in the VS Code status bar, stop OpenOCD, and then start it again.