-

ESP32-S3-N16R8-M

From Geekworm Wiki
Revision as of 16:14, 25 August 2026 by Rita (talk | contribs) (Packing List)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
ESP32-S3-DEV-KIT-N16R8-M
ESP32-S3-DEV-KIT-N16R8-M
ESP32-S3-DEV-KIT-N16R8-M Support AI
ESP32-S3-DEV-KIT-N16R8-M Functional block diagram
ESP32-S3-DEV-KIT-N16R8-M resource interface
ESP32-S3-DEV-KIT-N16R8-M Pin distribution

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.

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

  • 1× ESP32-S3-DEV-KIT-N16R8-M Development Board (with pre-soldered headers)

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 Win + R, enter devmgmt.msc, and press Enter.

For a detailed comparison of the two interfaces, see Working with Arduino.

Q2: Why does the board sometimes fail to connect to the serial port or fail to flash when I flash it again?

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: PA: 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.