REFERENCE Β· GPIO PINOUT

ESP32 DEVKIT V1 β€” GPIO Reference

A lookup table for the 30‑pin ESP‑WROOM‑32 board: pick a pin without breaking booting or Wi‑Fi.

Rule of thumb: for a plain input or output, reach for a βœ… safe pin first β€” GPIO 4, 13, 16, 17, 18, 19, 21, 22, 23, 25, 26, 27, 32, 33.
ESP32 DEVKIT V1 pinout diagram
The DEVKIT V1 pinout (see Project 0 for the board tour).

1 Β· Quick categories

CategoryPinsWhy
SAFE general‑purpose4, 13, 16, 17, 18, 19, 21, 22, 23, 25, 26, 27, 32, 33Use these first for I/O
STRAPPING (read at boot)0, 2, 5, 12, 15Usable, but a wrong level can block uploading
BOOT HIGH/PWM1, 3, 5, 14, 15May glitch attached outputs at reset
INPUT‑ONLY34, 35, 36 (VP), 39 (VN)No output, no internal pull
DO NOT USE (flash)6, 7, 8, 9, 10, 11Wired to the SPI flash β€” not broken out
πŸ”Œ USB serial1 (TX0), 3 (RX0)Used by the Serial Monitor β€” avoid for I/O

2 Β· Full pin table

I = input Β· O = output Β· ADC = analog‑in Β· Touch = capacitive touch Β· DAC = analog‑out.

GPIOLabelIOADCTouchOtherNotes
36VPβœ…β€”ADC1_CH0β€”Sensor VPinput only
39VNβœ…β€”ADC1_CH3β€”Sensor VNinput only
34D34βœ…β€”ADC1_CH6β€”β€”input only
35D35βœ…β€”ADC1_CH7β€”β€”input only
32D32βœ…βœ…ADC1_CH4T9β€”safe
33D33βœ…βœ…ADC1_CH5T8β€”safe
25D25βœ…βœ…ADC2_CH8β€”DAC1safe
26D26βœ…βœ…ADC2_CH9β€”DAC2safe
27D27βœ…βœ…ADC2_CH7T7β€”safe
14D14βœ…βœ…ADC2_CH6T6HSPI CLKPWM at boot
12D12βœ…βœ…ADC2_CH5T5HSPI MISOstrapping boot fails if pulled HIGH
13D13βœ…βœ…ADC2_CH4T4HSPI MOSIsafe
23D23βœ…βœ…β€”β€”VSPI MOSIsafe
22D22βœ…βœ…β€”β€”IΒ²C SCLsafe
21D21βœ…βœ…β€”β€”IΒ²C SDAsafe
19D19βœ…βœ…β€”β€”VSPI MISOsafe
18D18βœ…βœ…β€”β€”VSPI CLKsafe
5D5βœ…βœ…β€”β€”VSPI CSstrapping HIGH at boot; PWM at boot
17TX2βœ…βœ…β€”β€”UART2 TXsafe
16RX2βœ…βœ…β€”β€”UART2 RXsafe
4D4βœ…βœ…ADC2_CH0T0β€”safe
2D2βœ…βœ…ADC2_CH2T2On‑board LEDstrapping floating/LOW to flash
15D15βœ…βœ…ADC2_CH3T3HSPI CSstrapping HIGH at boot; PWM at boot
1TX0β€”βœ…β€”β€”UART0 TXDebug output at boot β€” avoid
3RX0βœ…β€”β€”β€”UART0 RXHIGH at boot β€” avoid
0(BOOT)βœ…βœ…ADC2_CH1T1Boot selectstrapping tied to BOOT; not on header
Pins 6–11 connect to the module's SPI flash and are not exposed β€” never use them.

3 Β· Peripheral defaults

BusSignal β†’ pin
IΒ²CSDA = GPIO 21, SCL = GPIO 22 (reassignable in code)
SPI β€” VSPIMOSI 23 Β· MISO 19 Β· CLK 18 Β· CS 5
SPI β€” HSPIMOSI 13 Β· MISO 12 Β· CLK 14 Β· CS 15
UART0 (USB Serial)TX 1 Β· RX 3
UART2TX 17 Β· RX 16
DAC (analog out)DAC1 = 25 Β· DAC2 = 26

4 Β· ADC & touch

ADC is 12‑bit β†’ readings 0–4095 for 0–3.3 V.

Touch T0–T9: T0=4, T1=0, T2=2, T3=15, T4=13, T5=12, T6=14, T7=27, T8=33, T9=32.

5 Β· Electrical limits

More: ESP32 pinout reference (Random Nerd Tutorials) β†’

← Project 00 Β· Electronics Basics Components Glossary β†’