GPIO Overview
The ESP32-S3 has 45 GPIO pins (GPIO0-21, GPIO26-48). Not all are available on the DevKitC-1 due to internal flash/PSRAM usage.
Complete GPIO Reference
| GPIO | Header | ADC | Touch | RTC | Default Function | Notes |
|---|
| 0 | J3-14 | - | - | Yes | Boot strapping | Hold low for download mode |
| 1 | J3-4 | ADC1_0 | T1 | Yes | General I/O | |
| 2 | J3-5 | ADC1_1 | T2 | Yes | General I/O | |
| 3 | J1-13 | ADC1_2 | T3 | Yes | General I/O | |
| 4 | J1-4 | ADC1_3 | T4 | Yes | General I/O | |
| 5 | J1-5 | ADC1_4 | T5 | Yes | General I/O | |
| 6 | J1-6 | ADC1_5 | T6 | Yes | General I/O | |
| 7 | J1-7 | ADC1_6 | T7 | Yes | General I/O | |
| 8 | J1-12 | ADC1_7 | T8 | Yes | General I/O | |
| 9 | J1-15 | ADC1_8 | T9 | Yes | General I/O | |
| 10 | J1-16 | ADC1_9 | T10 | Yes | FSPI_CS | SPI chip select |
| 11 | J1-17 | ADC2_0 | T11 | Yes | FSPI_MOSI | SPI data out |
| 12 | J1-18 | ADC2_1 | T12 | Yes | FSPI_CLK | SPI clock |
| 13 | J1-19 | ADC2_2 | T13 | Yes | FSPI_MISO | SPI data in |
| 14 | J1-20 | ADC2_3 | T14 | Yes | General I/O | |
| 15 | J1-8 | ADC2_4 | - | Yes | General I/O | |
| 16 | J1-9 | ADC2_5 | - | Yes | General I/O | |
| 17 | J1-10 | ADC2_6 | - | Yes | General I/O | |
| 18 | J1-11 | ADC2_7 | - | Yes | General I/O | |
| 19 | J3-20 | - | - | - | USB D- | USB |
| 20 | J3-19 | - | - | - | USB D+ | USB |
| 21 | J3-18 | - | - | - | General I/O | |
| 35 | J3-13 | - | - | - | PSRAM | N8R8/N16R8 Only |
| 36 | J3-12 | - | - | - | PSRAM | N8R8/N16R8 Only |
| 37 | J3-11 | - | - | - | PSRAM | N8R8/N16R8 Only |
| 38 | J3-10 | - | - | - | RGB LED | V1.1 |
| 39 | J3-9 | - | - | - | JTAG MTCK | Debug |
| 40 | J3-8 | - | - | - | JTAG MTDO | Debug |
| 41 | J3-7 | - | - | - | JTAG MTDI | Debug |
| 42 | J3-6 | - | - | - | JTAG MTMS | Debug |
| 43 | J3-2 | - | - | - | U0TXD | UART TX |
| 44 | J3-3 | - | - | - | U0RXD | UART RX |
| 45 | J3-15 | - | - | - | VDD_SPI strap | Strapping pin |
| 46 | J1-14 | - | - | - | Input only | Input Only |
| 47 | J3-17 | - | - | - | General I/O | |
| 48 | J3-16 | - | - | - | RGB LED | V1.0 |
Pin Restrictions
Strapping Pins
| GPIO | Function | Default | Effect |
|---|
| GPIO0 | Boot mode | HIGH (pulled up) | LOW = download mode |
| GPIO45 | VDD_SPI | LOW (pulled down) | HIGH = 1.8V flash |
| GPIO46 | ROM log | HIGH (pulled up) | LOW = disable logs |
USB Pins
GPIO19 and GPIO20 are dedicated USB pins when USB functionality is enabled:
| GPIO | USB Function | Notes |
|---|
| GPIO19 | USB_D- | Cannot use as GPIO when USB active |
| GPIO20 | USB_D+ | Cannot use as GPIO when USB active |
PSRAM Pins (N8R8/N16R8)
| GPIO | PSRAM Function |
|---|
| GPIO35 | SPI_DQS |
| GPIO36 | SPI_D4 |
| GPIO37 | SPI_D5 |
| GPIO | Notes |
|---|
| GPIO46 | Cannot output, can only read input |
ADC Channels
ADC1 (10 channels)
Works in all conditions:
| Channel | GPIO |
|---|
| ADC1_CH0 | GPIO1 |
| ADC1_CH1 | GPIO2 |
| ADC1_CH2 | GPIO3 |
| ADC1_CH3 | GPIO4 |
| ADC1_CH4 | GPIO5 |
| ADC1_CH5 | GPIO6 |
| ADC1_CH6 | GPIO7 |
| ADC1_CH7 | GPIO8 |
| ADC1_CH8 | GPIO9 |
| ADC1_CH9 | GPIO10 |
ADC2 (10 channels)
| Channel | GPIO |
|---|
| ADC2_CH0 | GPIO11 |
| ADC2_CH1 | GPIO12 |
| ADC2_CH2 | GPIO13 |
| ADC2_CH3 | GPIO14 |
| ADC2_CH4 | GPIO15 |
| ADC2_CH5 | GPIO16 |
| ADC2_CH6 | GPIO17 |
| ADC2_CH7 | GPIO18 |
| ADC2_CH8 | GPIO19 (USB) |
| ADC2_CH9 | GPIO20 (USB) |
Touch Sensors
14 capacitive touch pins (T1-T14):
| Touch | GPIO |
|---|
| T1 | GPIO1 |
| T2 | GPIO2 |
| T3 | GPIO3 |
| T4 | GPIO4 |
| T5 | GPIO5 |
| T6 | GPIO6 |
| T7 | GPIO7 |
| T8 | GPIO8 |
| T9 | GPIO9 |
| T10 | GPIO10 |
| T11 | GPIO11 |
| T12 | GPIO12 |
| T13 | GPIO13 |
| T14 | GPIO14 |
Peripheral Mapping
Default SPI (FSPI)
| Function | GPIO |
|---|
| FSPI_CLK | GPIO12 |
| FSPI_MOSI | GPIO11 |
| FSPI_MISO | GPIO13 |
| FSPI_CS | GPIO10 |
UART
| UART | TX | RX |
|---|
| UART0 | GPIO43 | GPIO44 |
| UART1 | Any GPIO | Any GPIO |
| UART2 | Any GPIO | Any GPIO |
I2C
I2C can be assigned to any GPIO. Common defaults:
| Function | Suggested GPIO |
|---|
| SDA | GPIO8 |
| SCL | GPIO9 |
JTAG Debug
| Function | GPIO |
|---|
| MTCK | GPIO39 |
| MTDO | GPIO40 |
| MTDI | GPIO41 |
| MTMS | GPIO42 |
Recommended Pin Assignments
Sensor Project
Display + SD Card
Motor Control
Related Pages