In this article, we are going to explain the esp32 devkit v1 pinout in detail. The ESP32 DevKit V1, also known as the ESP-WROOM-32, is a development board based on the ESP32 microcontroller. It features a dual-core processor, built-in Wi-Fi and Bluetooth, and a rich set of peripherals. Here is the pinout for the ESP32 DevKit V1:

ESP32 devkit v1 pinout

ESP32 devkit v1 also known as the ESP-WROOM-32, is a development board based on the ESP32 microcontroller.

ESP32 devkit v1 pinout

Power & Control

ESP32 DevKit V1 has two positive power input pins and one control pin on the development board.

Pin Name Function
VIN The input of the 3.3V positive voltage regulator. you can input a voltage supply range of 4 to 12V.
3.3V Output from the voltage regulator. You can input 3.3V to this pin if you have one. you should not supply both input pins at a time.
GND Ground (Negative) pins.
ENABLE Enable the reset pin. Connecting this pin to GND (ground) will reset the ESP32 devkit v1 board. This pin is normally pulled-up. The EN (ENABLE) button pulls it LOW when you press it.

GPIO pins of esp32 devkit v1

ESP32 Devkit v1 has 34 GPIO pins on the chip. The no of these is written on the board from 0 to 39. You can not count these pins to 40 because GPIOs 20, 24, 28, 29, 30, and 31 are not accessible. GPIP Pins of ESP32 can perform many peripheral functions on any of the GPIO pins using the GPIO Mux block of the devkit v1.

GPIO Pad Name FUN0 FUN1 FUN FUN3 FUN4 FUN5 Reset status
0 GPI0 GPI0 CLK OUT1 PGIO0 EMAC TX CLK 3 Re
1 U0TXD U0TXD CLK_OUT3 —1 EMAC RXD2 3
2 GPI2 GPI2 HSPIWP —2 HS2 DATA0 SD_DATA0 2 Re
3 U0RXD U0RXD CLK_OUT2 —3 3
4 GPIO4 GPIO4 HSPIHD —4 HS2_DATA1 SD_DATA1 EMAC_TX_ER 2 Re
5 GPIO5 GPIO5 VSPICS0 —5 HS1_DATA6 EMAC_RX_CLK 3
6 SD_CLK SD_CLK SPICLK —6 HS1_CLK U1CTS 3
7 SD_DATA_0 SD_DATA0 SPIQ —7 HS1_DATA0 U2RTS 3
8 SD_DATA_1 SD_DATA1 SPID —8 HS1_DATA1 U2CTS 3
9 SD_DATA_2 SD_DATA2 SPIHD —9 HS1_DATA2 U1RXD 3
10 SD_DATA_3 SD_DATA3 SPIWP —0 HS1_DATA3 U1TXD 3
11 SD_CMD SD_CMD SPICS0 –11 HS1_CMD U1RTS 3
12 MTDI MTDI HSPIQ –12 HS2_DATA2 SD_DATA2 EMAC_TXD3 2 Re
13 MTCK MTCK HSPID –13 HS2_DATA3 SD_DATA3 EMAC_RX_ER 2 Re
14 MTMS MTMS HSPICLK –14 HS2_CLK SD_CLK EMAC_TXD2 3 Re
15 MTDO MTDO HSPICS0 –15 HS2_CMD SD_CMD EMAC_RXD3 3 Re
16 GPIO16 GPI16 –16 HS1_DATA4 U2RXD EMAC_CLK_OUT 1
17 GPIO17 GPI17 –17 HS1_DATA5 U2TXD EMAC_CLK_180 1
18 GPIO18 GPI18 VSPICLK –18 HS1_DATA7 1
19 GPIO19 GPI19 VSPIQ –19 U0CTS EMAC_TXD0 1
21 GPIO21 GPI21 VSPIHD –21 EMAC_TX_EN 1
22 GPIO22 GPI22 VSPIWP –22 U0RTS EMAC_TXD1 1
23 GPIO23 GPI23 VSPID 23 HS1_STROBE 1
25 GPIO25 GPI25 25 EMAC_RXD0 0 Re
26 GPIO26 GPI26 26 EMAC_RXD1 0 Re
27 GPIO27 GPI27 27 EMAC_RX_DV 0 Re
32 32K_XP GPI32 32 0 Re
33 32K_XN GPI33 33 0 Re
34 VDET_1 GPI34 34 0 R, I
35 VDET_2 GPI35 35 0 R, I
36 SENSOR_VP GPIO36 36 0 R, I
37 SENSOR_CAPP GPIO37 37 0 R, I
38 SENSOR_CAPN GPIO38 38 0 R, I
39 SENSOR_VN GPIO39 39 0 R, I

Strapping Pins of ES32 DevKit V1

All ESP32 microcontroller chips have a bootloader inside the ROM that monitors the state of the chip when powered in. The bootloader checks for all inputs and puts the chip into different configurations. The pins are monitored by the bootloader called strapping pins. ESP32 has five strapping pins on the chip. These strapping pins perform other behaviors during the booting process.

Pin Name Function
GPIO0 Devkit esp32 will enter the serial bootloader when GPIO0 is held low on reset. Otherwise program flash memory. This pin is pulled up internally.
GPIO2 This pin must also be left floating or driven LOW in order to enter the serial bootloader. In normal boot mode (GPIO0 = HIGH), GPIO2 is ignored. on board, LED is connected to this pin.
GPIO12/MTDI This pin selects the flash voltage during boot.
GPIO15/MTDO This pin is used to mute the debug messages printed by the chip during booting.
GPIO5 This pin along with the MTDO pins determines the bus timing of the SDIO peripheral. This is internally pulled up.

Pull-Up & Pull-Down

All GPIO pins have pull-up and pull-down configurations, as well as a high-impedance state. This makes the pin tristate compatible.

LED

GPIO2 is connected to the onboard LED which can be used for debugging. In the Arduino environment, you can invoke this pin as LED_BUILTIN.

  • UART
  • SPI
  • ADC
  • DAC
  • Touch Sensor
  • I2C
  • PWM
  • I2S
  • CAN/TWAI
  • JTAG
  • External Interrupts
  • Ethernet MAC
  • ESP32 devkit v1 specification

The ESP32 DevKitC, which is the official development board provided by Espressif Systems, has the following specifications:

Microcontroller:

  • ESP32-WROOM-32 module with ESP32 dual-core processor (Xtensa LX6) running at up to 240 MHz
  • 4 MB Flash memory

Wireless Connectivity:

  • Wi-Fi 802.11b/g/n, supporting WPA/WPA2 encryption
  • Bluetooth v4.2 with BLE (Bluetooth Low Energy)

Operating Voltage:

  • 3.3Volts

Digital I/O Pins:

  • 34 GPIO (General Purpose Input/Output) pins, which can be used for digital input or output, PWM, I2C, SPI, and more

Analog Input Pins:

  • 12-bit SAR ADC (Analog-to-Digital Converter) with up to 18 channels

Interfaces:

  • UART (Universal Asynchronous Receiver-Transmitter)
  • SPI (Serial Peripheral Interface)
  • I2C (Inter-Integrated Circuit)
  • I2S (Inter-IC Sound)
  • PWM (Pulse-Width Modulation)
  • SDIO/SPI (Secure Digital Input/Output/Serial Peripheral Interface)
  • DAC (Digital-to-Analog Converter)
  • CAN (Controller Area Network)

Power Supply:

  • USB Type-C for power and programming

Programming:

  • Programming can be done via USB using the Arduino IDE, ESP-IDF, or other compatible development environments
  • Supports various development frameworks, including Arduino, MicroPython, and ESP-IDF (Espressif IoT Development Framework)

Additional Features:

  • Reset button
  • Onboard antenna for Wi-Fi and Bluetooth
  • Boot/Flash button for programming and bootloader mode selection

These specifications are specific to the ESP32 DevKit V1, other ESP32 development boards may have little different specifications and features. It is always a good idea to refer to the official documentation or the specific datasheet of the board you are using for more detailed information.

  1. ESP32 Technical Reference Manual [PDF]
  2. ESP32 Datasheet [PDF]
  3. ESP Bootloader and Strapping Pins
  4. Introduction to the ESP-Prog Board