ESP32-S3 (dual-core Xtensa LX7)
ESP32-S3-DevKitC-1
A powerful dual-core board with Wi-Fi, Bluetooth LE 5, native USB OTG, 14 touch pins and AI vector instructions. No DAC and no Classic Bluetooth.
GPIO ADC PWM I2C Power GND
ID: V3_3apower
3V3
Functions
3.3 V output
Operating voltage: 3.3 V logic
Hardware Specifications
Module
ESP32-S3-WROOM-1 / -1U (flash and PSRAM depend on the variant, e.g. N8R2, N16R8)
CPU
Dual-core Xtensa LX7, up to 240 MHz
SRAM
512 KB (+ optional PSRAM in the module)
Wireless
Wi-Fi 802.11 b/g/n (2.4 GHz), Bluetooth LE 5 (no Classic Bluetooth)
Logic level
3.3 V — not 5 V tolerant
ADC
12-bit; ADC1 on GPIO1–10, ADC2 on GPIO11–20
Touch
14 capacitive touch pins (GPIO1–14)
PWM
LEDC on any output GPIO (8 channels)
USB
Two USB ports: USB-to-UART, and native USB OTG (GPIO19/20)
On-board LED
Addressable RGB LED on GPIO48 (v1.0) or GPIO38 (v1.1)
Complete Pinout Table
44| Pin | Label | Type | Functions | Warnings & Notes |
|---|---|---|---|---|
| V3_3a | 3V3 | power | 3.3 V output | — |
| V3_3b | 3V3 | power | 3.3 V output | — |
| RST | RST | reset | Pull LOW to reset (CHIP_PU) | — |
| GPIO4 | 4 | analog | ADC1_CH3, Touch T4 | — |
| GPIO5 | 5 | analog | ADC1_CH4, Touch T5 | — |
| GPIO6 | 6 | analog | ADC1_CH5, Touch T6 | — |
| GPIO7 | 7 | analog | ADC1_CH6, Touch T7 | — |
| GPIO15 | 15 | analog | ADC2_CH4, 32 kHz crystal (optional) | — |
| GPIO16 | 16 | analog | ADC2_CH5, 32 kHz crystal (optional) | — |
| GPIO17 | 17 | analog | ADC2_CH6 | — |
| GPIO18 | 18 | analog | ADC2_CH7 | — |
| GPIO8 | 8 | analog | ADC1_CH7, Touch T8, I2C SDA (Arduino default) | — |
| GPIO3 | 3 | analog | ADC1_CH2, Touch T3, Strapping | Strapping pin (JTAG source): avoid pulling at power-on. |
| GPIO46 | 46 | pwm | Strapping (boot mode / ROM log) | Strapping pin: avoid pulling at power-on. |
| GPIO9 | 9 | analog | ADC1_CH8, Touch T9, I2C SCL (Arduino default) | — |
| GPIO10 | 10 | analog | ADC1_CH9, Touch T10, SPI SS (Arduino default) | — |
| GPIO11 | 11 | analog | ADC2_CH0, Touch T11, SPI MOSI (Arduino default) | — |
| GPIO12 | 12 | analog | ADC2_CH1, Touch T12, SPI SCK (Arduino default) | — |
| GPIO13 | 13 | analog | ADC2_CH2, Touch T13, SPI MISO (Arduino default) | — |
| GPIO14 | 14 | analog | ADC2_CH3, Touch T14 | — |
| V5 | 5V | power | 5 V (from USB) | Never connect 5 V to a GPIO. |
| GND1 | GND | ground | Ground (0 V) | All GND pins are connected together. |
| GND2 | GND | ground | Ground (0 V) | All GND pins are connected together. |
| GPIO43 | TX | uart | UART0 TX | Used by the serial port. |
| GPIO44 | RX | uart | UART0 RX | Used by the serial port. |
| GPIO1 | 1 | analog | ADC1_CH0, Touch T1 | — |
| GPIO2 | 2 | analog | ADC1_CH1, Touch T2 | — |
| GPIO42 | 42 | pwm | JTAG MTMS | — |
| GPIO41 | 41 | pwm | JTAG MTDI | — |
| GPIO40 | 40 | pwm | JTAG MTDO | — |
| GPIO39 | 39 | pwm | JTAG MTCK | — |
| GPIO38 | 38 | pwm | RGB LED on v1.1 boards | — |
| GPIO37 | 37 | reserved | Octal PSRAM/flash on R8 modules | Not usable on modules with octal PSRAM/flash (R8). |
| GPIO36 | 36 | reserved | Octal PSRAM/flash on R8 modules | Not usable on modules with octal PSRAM/flash (R8). |
| GPIO35 | 35 | reserved | Octal PSRAM/flash on R8 modules | Not usable on modules with octal PSRAM/flash (R8). |
| GPIO0 | 0 | pwm | BOOT button, Strapping (boot mode) | Strapping pin: LOW at power-on enters upload mode. |
| GPIO45 | 45 | pwm | Strapping (flash voltage) | Strapping pin: avoid pulling at power-on. |
| GPIO48 | 48 | pwm | RGB LED on v1.0 boards | — |
| GPIO47 | 47 | pwm | — | — |
| GPIO21 | 21 | pwm | — | — |
| GPIO20 | 20 | usb | USB D+ (native USB OTG), ADC2_CH9 | Using it as GPIO disables native USB. |
| GPIO19 | 19 | usb | USB D- (native USB OTG), ADC2_CH8 | Using it as GPIO disables native USB. |
| GND3 | GND | ground | Ground (0 V) | All GND pins are connected together. |
| GND4 | GND | ground | Ground (0 V) | All GND pins are connected together. |