All pinouts

Espressif ESP32

ESP32 DevKit V1 Pinout

The ESP32 DevKit V1 is the most common 30-pin ESP32 dev board. It exposes 25 usable GPIOs across two rows, with built-in Wi-Fi, Bluetooth, ADC, DAC, touch, PWM, I2C, SPI, and UART. Below is the complete pinout with every pin's primary function and the gotchas that catch beginners.

Specifications

MCU
ESP32-WROOM-32 (Xtensa LX6 dual-core, 240 MHz)
Flash
4 MB
SRAM
520 KB
GPIO
25 usable (of 39 total)
ADC
18 channels, 12-bit
Operating voltage
3.3V (5V tolerant on VIN only)

Pin reference

PinNameType / functionsNotes
ENResetPowerPull LOW to reset the chip.
GPIO36VP / SENSOR_VPInput only, ADC1_0Input only — cannot drive output.
GPIO39VN / SENSOR_VNInput only, ADC1_3Input only.
GPIO34GPIO34Input only, ADC1_6No internal pull-up/down.
GPIO35GPIO35Input only, ADC1_7No internal pull-up/down.
GPIO32GPIO32Digital I/O, ADC1_4, Touch9
GPIO33GPIO33Digital I/O, ADC1_5, Touch8
GPIO25GPIO25Digital I/O, DAC1, ADC2_8
GPIO26GPIO26Digital I/O, DAC2, ADC2_9
GPIO27GPIO27Digital I/O, ADC2_7, Touch7
GPIO14GPIO14Digital I/O, ADC2_6, Touch6, HSPI_CLKOutputs PWM at boot.
GPIO12GPIO12Digital I/O, ADC2_5, Touch5, HSPI_MISOBoot fails if pulled HIGH.
GNDGroundPower
GPIO13GPIO13Digital I/O, ADC2_4, Touch4, HSPI_MOSI
GPIO9SD2Connected to flashDo not use unless flash is in QIO mode.
GPIO10SD3Connected to flashDo not use.
GPIO11CMDConnected to flashDo not use.
5V / VIN5V inputPowerFeed 5V here when not using USB.
3V33.3V outputPowerFrom onboard regulator, ~600 mA max.
GNDGroundPower
GPIO15GPIO15Digital I/O, ADC2_3, Touch3, HSPI_CS0Outputs PWM at boot; pull LOW to silence.
GPIO2GPIO2Digital I/O, ADC2_2, Touch2, onboard LEDMust be floating or LOW during boot.
GPIO4GPIO4Digital I/O, ADC2_0, Touch0
GPIO16RX2Digital I/O, UART2 RX
GPIO17TX2Digital I/O, UART2 TX
GPIO5GPIO5Digital I/O, VSPI_CS0Outputs PWM at boot.
GPIO18GPIO18Digital I/O, VSPI_CLK
GPIO19GPIO19Digital I/O, VSPI_MISO
GPIO21SDADigital I/O, default I2C SDA
GPIO3RX0UART0 RXUsed for USB serial — sharing breaks uploads.
GPIO1TX0UART0 TXUsed for USB serial.
GPIO22SCLDigital I/O, default I2C SCL
GPIO23GPIO23Digital I/O, VSPI_MOSI

Gotchas

  • 01GPIO 6–11 are wired to the onboard SPI flash. Using them will brick uploads.
  • 02GPIO 34, 35, 36, 39 are input-only and have no internal pull-up/pull-down.
  • 03ADC2 pins (GPIO 0, 2, 4, 12–15, 25–27) cannot be read while Wi-Fi is active. Use ADC1 (GPIO 32–39) for analog reads if Wi-Fi is on.
  • 04GPIO 12 must be LOW at boot, GPIO 0 must be HIGH (after boot button release), GPIO 2 must be floating or LOW.

Explain code for this board

Paste a sketch and get a plain-English breakdown.

Open code explainer

Generate a wiring diagram

Describe your circuit and get a Mermaid diagram you can share.

Open diagram generator

Other boards