ESP32-S3-Zero Development Board
Code name: ESP32S3_DEV
ESP32-S3-Zero development board is based on esp32s3 microcontroller and uses xtensa architecture. This board has a maximum CPU frequency of 240 MHz and a flash size of 4MB.
About ESP32-S3-Zero
The ESP32-S3-Zero is a compact development board featuring the Espressif ESP32-S3FH4R2 dual-core processor, operating at up to 240MHz. It offers 2.4GHz Wi-Fi (802.11 b/g/n) and Bluetooth 5 (LE) capabilities, making it ideal for IoT projects requiring robust wireless connectivity. πΆ
With its small form factor of 23.5 Γ 18 mm, the board is designed for easy integration into space-constrained applications. The onboard ceramic antenna ensures stable wireless performance without the need for an external antenna.
For user convenience, the ESP32-S3-Zero includes both a BOOT button and a RESET button, facilitating straightforward development and debugging processes. π
Equipped with 24 multifunctional GPIO pins, the board supports various interfaces, including:
- 4 Γ SPI
- 2 Γ I2C
- 3 Γ UART
- 2 Γ I2S
- 2 Γ ADC
Where to Buy
Prices are subject to change. We earn from qualifying purchases as an Amazon Associate.
Technical Specifications
π°οΈ Connectivity
π§ Microcontroller
β¨ Features
- Ultra-compact size: 23.5 Γ 18 mm
- Low power consumption: supports various power modes for energy-efficient applications
- Onboard WS2812 RGB LED connected to GPIO21
- 24 digital IO pins
- 24 external interrupt pins
- 2 analog input pins
- 24 PWM pins
ESP32-S3-Zero Pinout
The ESP32-S3-Zero pinout is engineered for versatility within a compact footprint. Key power pins include 5V, 3.3V, and GND, ensuring reliable power delivery for various peripherals.
The board offers multiple communication interfaces:
- UART: TX (GPIO43), RX (GPIO44)
- I2C: SDA, SCL
- SPI: SCK, MISO, MOSI, SS
For analog input, it provides ADC pins suitable for reading sensor data or voltage levels.
β Safe Pins to Use
For general GPIO usage, these are the safest and most flexible choices:
Why Are These Pins Safe?
- Not involved in bootstrapping β No impact on device boot mode or system startup
- Not linked to flash memory or PSRAM β Won't interfere with storage or memory access
- Not dedicated to USB or JTAG β Free for general use without affecting debugging
- No special hardware connections β Freely assignable without internal conflicts
β οΈ Pins to Avoid or Use with Caution
Some pins are reserved for critical functions like bootstrapping, JTAG debugging, USB communication, and flash memory operations. Misusing these pins may lead to boot failures, programming issues, USB conflicts, or disruptions in flash storage.
Critical Pin Categories:
- π οΈ Strapping Pins: Control boot behavior and flash voltage selection
- π JTAG Debugging Pins: Required for low-level debugging
- π USB Communication Pins: Used for USB Serial/JTAG communication
- β‘ Flash Memory & SPI Pins: Connected to SPI flash memory and PSRAM
- π‘ UART Serial Communication Pins: Used for debugging and firmware uploads
PIN | Label | Reason | Function |
---|---|---|---|
IO3 | GPIO3 | Sampled at reset to select JTAG interface (USB Serial/JTAG controller vs. external pins). Improper use can disable external JTAG or alter debug interface. | π οΈ Strapping |
IO9 | FSPIHD | Connected to external flash (data/hold signal) on most modules. Not recommended for use as GPIO, since it must remain dedicated to flash communication. | β‘ Flash |
IO10 | FSPICS0 | Used to select the external flash chip. It is required for flash access and cannot be repurposed without losing flash connectivity | β‘ Flash |
IO11 | FSPID | Used as a data line for flash (and in-package PSRAM). It should not be used as GPIO when the flash/PSRAM is in use. | β‘ Flash |
IO12 | FSPICLK | Drives the flash (and PSRAM) clock. This critical signal must be reserved for memory and not used as general GPIO. | β‘ Flash |
ESP32-S3-Zero Pin Mappings
This development board provides 24 digital IO pins, out of which 24 can be used as external interrupt pins , 2 as analog input pins and 24 pins have Pulse-Width Modulation (PWM) .
Pin | Function | ESP Pin | Input/Output | Description |
---|---|---|---|---|
1 | 5V | 5V | POWER INPUT | 5V power input for the board |
2 | GND | GND | POWER GROUND | Ground connection |
3 | 3V3 | 3.3V | POWER OUTPUT | 3.3V power output |
5 | IO1 | IO1 | BIDIRECTIONAL | GPIO, ADC |
6 | IO2 | IO2 | BIDIRECTIONAL | GPIO, ADC |
7 | IO3 | IO3 | BIDIRECTIONAL | GPIO, ADC |
8 | IO4 | IO4 | BIDIRECTIONAL | GPIO, ADC |
9 | IO5 | IO5 | BIDIRECTIONAL | GPIO, ADC |
10 | IO6 | IO6 | BIDIRECTIONAL | GPIO, ADC |
11 | IO7 | IO7 | BIDIRECTIONAL | GPIO, ADC |
12 | IO8 | IO8 | BIDIRECTIONAL | GPIO, ADC |
13 | IO9 | IO9 | BIDIRECTIONAL | GPIO, ADC |
14 | IO10 | IO10 | BIDIRECTIONAL | GPIO, ADC |
15 | IO11 | IO10 | BIDIRECTIONAL | GPIO, ADC |
16 | IO12 | IO10 | BIDIRECTIONAL | GPIO, ADC |
17 | IO13 | IO10 | BIDIRECTIONAL | GPIO, ADC |
18 | IO14 | IO10 | BIDIRECTIONAL | GPIO, ADC |
19 | IO15 | IO10 | BIDIRECTIONAL | GPIO, ADC |
20 | IO16 | IO10 | BIDIRECTIONAL | GPIO, ADC |
21 | IO17 | IO10 | BIDIRECTIONAL | GPIO, ADC |
22 | IO18 | IO10 | BIDIRECTIONAL | GPIO, ADC |
23 | IO38 | IO10 | BIDIRECTIONAL | GPIO |
24 | IO39 | IO10 | BIDIRECTIONAL | GPIO |
25 | IO40 | IO10 | BIDIRECTIONAL | GPIO |
26 | IO41 | IO10 | BIDIRECTIONAL | GPIO |
27 | IO42 | IO10 | BIDIRECTIONAL | GPIO |
28 | IO45 | IO10 | BIDIRECTIONAL | GPIO |
Default Tools
Bootloader tool | esptool_py |
Uploader tool | esptool_py |
Network uploader tool | esp_ota |
Bootloader address | 0x0 |
Flash mode | qio |
Boot mode | qio |
Maximum upload size | 4096 Kb (4194304 B) |
Maximum data size | 512 Kb (524288 B) |
The ESP32-S3-Zero development board by default uses esptool_py uploader tool, esp_ota network uploader tool for Over-the-air (OTA) uploads and esptool_py bootloader tool. The bootloader starts at address "0x0". Flash mode and boot mode for ESP32-S3-Zero development board by default is qio and qio respectively.