Posts ESP32

ESP32 devkit v1 pinout and specification

In this article, we are going to explain the esp32 devkit v1 pinout. DevKit ESP32 V1, also known as the ESP-WROOM-32. It is a development board based on the ESP32 microcontroller. It has a dual-core processor, built-in Wi-Fi and Bluetooth, and a rich set of peripherals devices pins. 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.

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