DOIT ESP32 DEVKIT V1 Development Board
Code name: ESP32_DEV
DOIT ESP32 DEVKIT V1 development board is based on esp32 microcontroller and uses xtensa architecture. This board has a maximum CPU frequency of 240 MHz and a flash size of 4MB.
About DOIT ESP32 DEVKIT V1
The DOIT ESP32 DEVKIT V1 is a versatile development board built around the proven Espressif ESP32-WROOM-32 module. It packs dual-core processing power, Wi-Fi 802.11 b/g/n and Bluetooth 4.2 (BR/EDR + BLE) into a slim, breadboard-friendly 30-pin package-perfect for rapid IoT prototyping. π‘
An on-board CP2102 USB-to-UART converter and auto-reset circuitry let you plug in, program, and debug over Micro-USB with zero fuss. π
Power options are flexible: feed the board via VIN (5 V), the Micro-USB port, or tap the regulated 3V3 rail for low-power projects. A high-efficiency LDO keeps everything stable. β‘οΈ
Development conveniences include a dedicated EN (reset) button π and a BOOT (IO0) button for easy firmware flashing and download-mode entry. π
With rich peripherals-ADC, DAC, PWM, capacitive-touch, IΒ²C, SPI, UART and more-the DOIT ESP32 DEVKIT V1 is ready to drive sensors, displays, motors, or anything your next connected gadget requires. βοΈ
Where to Buy DOIT ESP32 DEVKIT V1
Prices are subject to change. We earn from qualifying purchases as an Amazon Associate.
DOIT ESP32 DEVKIT V1 Technical Specifications
π USB
π°οΈ Connectivity
π§ Microcontroller
β¨ Features
- 40 digital IO pins
- 16 external interrupt pins
- 16 analog input pins
- 19 PWM pins
DOIT ESP32 DEVKIT V1 Pinout
The DOIT ESP32 DEVKIT V1 pinout exposes nearly the entire feature set of the ESP32 on two easy-to-breadboard rows of 15 pins each.
Power rails include VIN (5 V) for USB or external input, a regulated 3V3 output, and several GND pins for solid reference.
Serial I/O: TX0 (GPIO1) and RX0 (GPIO3) link to the CP2102 for USB programming, while TX2 (GPIO17) and RX2 (GPIO16) give you a second hardware UART for sensors or GPS modules.
IΒ²C defaults to SDA (GPIO21) and SCL (GPIO22), but any open GPIO can be reassigned in software.
SPI comes in two flavors: the default VSPI bus (MOSI GPIO23, MISO GPIO19, SCK GPIO18, CS GPIO5) and an alternate HSPI bus on GPIO12βGPIO15 for additional devices.
Analog & touch: Eight ADC1 channels reside on GPIO32βGPIO39, usable even when Wi-Fi is active. Extra ADC2 channels (e.g., GPIO0, 2, 4, 12β15, 25β27) are shared with Wi-Fi. Dual 8-bit DAC outputs sit on GPIO25 and GPIO26. Many of these pads double as capacitive-touch sensors for sleek, button-free interfaces.
Every GPIO can source PWM signals for LED dimming or motor control. Keep an eye on boot-strap pins-GPIO0, GPIO2, and GPIO15-which must be held in the correct state (usually HIGH) during reset for normal startup.
From robust power handling to multiple high-speed buses, the DOIT ESP32 DEVKIT V1 pinout gives makers and professionals alike the flexibility to build anything from simple sensor nodes to fully fledged connected products-all on a compact, breadboard-friendly board.
β Safe Pins to Use
For general GPIO usage, these are the safest and most flexible choices:
Why Are These Pins Safe?
- Not involved in bootstrapping β No impact on device boot mode or system startup
- Not linked to flash memory or PSRAM β Won't interfere with storage or memory access
- Not dedicated to USB or JTAG β Free for general use without affecting debugging
- No special hardware connections β Freely assignable without internal conflicts
β οΈ Pins to Avoid or Use with Caution
Some pins are reserved for critical functions like bootstrapping, JTAG debugging, USB communication, and flash memory operations. Misusing these pins may lead to boot failures, programming issues, USB conflicts, or disruptions in flash storage.
Critical Pin Categories:
- π οΈ Strapping Pins: Control boot behavior and flash voltage selection
- π JTAG Debugging Pins: Required for low-level debugging
- π USB Communication Pins: Used for USB Serial/JTAG communication
- β‘ Flash Memory & SPI Pins: Connected to SPI flash memory and PSRAM
- π‘ UART Serial Communication Pins: Used for debugging and firmware uploads
| PIN | Label | Reason | Function | 
|---|---|---|---|
| IO1 | U0TXD (GPIO1) | Connected to on-board USB-UART for uploading and logs; drives serial output at boot, so using as GPIO can disrupt programming or console. | π USB | 
| IO2 | GPIO2 | If driven HIGH on reset (while IO0 is LOW), selects an unsupported SDIO boot mode, causing boot failure. | π οΈ Strapping | 
| IO3 | U0RXD (GPIO3) | Used for receiving data from USB-UART (programming); also pulled HIGH at boot for console communication, so using as GPIO can disrupt uploads. | π USB | 
| IO4 | GPIO4 | Sampled at reset for boot config; should not be driven at boot (affects boot mode timing). | π οΈ Strapping | 
| IO5 | GPIO5 | Must be HIGH during boot; if pulled LOW at reset, alters SDIO slave timing and may prevent normal boot. | π οΈ Strapping | 
DOIT ESP32 DEVKIT V1 Useful Links
π Datasheet
https://www.javanelec.com/stfiles/getappdocument/1/true/f94d9c02-935a-4075-8484-f57aec67dcc0.pdf
π ESP32 Datasheet
https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf
π KiCad
https://github.com/tyme2tb/doit-esp32-devkit-v1/tree/main/kicad
π Schematic
https://embedded-systems-design.github.io/overview-of-the-esp32-devkit-doit-v1/SchematicsforESP32.pdf
DOIT ESP32 DEVKIT V1 Pin Mappings
This development board provides 40 digital IO pins, out of which 16 can be used as external interrupt pins , 16 as analog input pins and 19 pins have Pulse-Width Modulation (PWM) .
| Pin | Function | ESP Pin | Input/Output | Description | 
|---|---|---|---|---|
| 1 | 5V | 5V | POWER INPUT | 5V power input for the board | 
| 2 | GND | GND | POWER GROUNT | Ground connection | 
| 3 | 3V3 | 3.3V | POWER OUTPUT | 3.3V power output | 
| 5 | IO1 | GPIO1 | BIDIRECTIONAL | GPIO | 
| 6 | IO2 | GPIO2 | BIDIRECTIONAL | GPIO, ADC | 
| 7 | IO3 | GPIO3 | BIDIRECTIONAL | GPIO | 
| 8 | IO4 | GPIO4 | BIDIRECTIONAL | GPIO, ADC | 
| 9 | IO5 | GPIO5 | BIDIRECTIONAL | GPIO | 
| 10 | IO12 | GPIO12 | BIDIRECTIONAL | GPIO, ADC | 
| 11 | IO13 | GPIO13 | BIDIRECTIONAL | GPIO, ADC | 
| 12 | IO14 | GPIO14 | BIDIRECTIONAL | GPIO, ADC | 
| 13 | IO15 | GPIO15 | BIDIRECTIONAL | GPIO, ADC | 
| 14 | IO16 | GPIO16 | BIDIRECTIONAL | GPIO | 
| 15 | IO17 | GPIO17 | BIDIRECTIONAL | GPIO | 
| 16 | IO18 | GPIO18 | BIDIRECTIONAL | GPIO | 
| 17 | IO19 | GPIO19 | BIDIRECTIONAL | GPIO | 
| 18 | IO21 | GPIO21 | BIDIRECTIONAL | GPIO | 
| 19 | IO22 | GPIO22 | BIDIRECTIONAL | GPIO | 
| 20 | IO23 | GPIO23 | BIDIRECTIONAL | GPIO | 
| 21 | IO25 | GPIO25 | BIDIRECTIONAL | GPIO, ADC | 
| 22 | IO26 | GPIO26 | BIDIRECTIONAL | GPIO, ADC | 
| 23 | IO27 | GPIO27 | BIDIRECTIONAL | GPIO, ADC | 
| 24 | IO32 | GPIO32 | BIDIRECTIONAL | GPIO, ADC | 
| 25 | IO33 | GPIO33 | BIDIRECTIONAL | GPIO, ADC | 
| 26 | IO34 | GPIO34 | INPUT | GPIO, ADC | 
| 27 | IO35 | GPIO35 | INPUT | GPIO, ADC | 
| 28 | IO36 | GPIO36 | INPUT | GPIO, ADC | 
| 29 | IO39 | GPIO39 | INPUT | GPIO, ADC | 
DOIT ESP32 DEVKIT V1 Pins Mapping Arduino IDE
Below you can find the DOIT ESP32 DEVKIT V1 pinout. This development board provides 40 digital IO pins, out of which 16 can be used as external interrupt pins, 16 as analog input pins and 19 pins have Pulse-Width Modulation (PWM).
| Pin | Analog | Touch | PWM | Other | 
|---|---|---|---|---|
| 0 | A11 | T1 | ||
| 1 | PWM | TX | ||
| 2 | A12 | T2 | PWM | LED_BUILTIN | 
| 3 | PWM | RX | ||
| 4 | A10 | T0 | PWM | |
| 5 | PWM | SS | ||
| 12 | A15 | T5 | PWM | |
| 13 | A14 | T4 | PWM | |
| 14 | A16 | T6 | PWM | |
| 15 | A13 | T3 | PWM | |
| 18 | PWM | SCK | ||
| 19 | PWM | MISO | ||
| 21 | PWM | SDA | ||
| 22 | PWM | SCL | ||
| 23 | PWM | MOSI | ||
| 25 | A18 | PWM | DAC1 | |
| 26 | A19 | PWM | DAC2 | |
| 27 | A17 | T7 | PWM | |
| 32 | A4 | T9 | PWM | |
| 33 | A5 | T8 | PWM | |
| 34 | A6 | |||
| 35 | A7 | |||
| 36 | A0 | |||
| 39 | A3 | 
Default Tools for DOIT ESP32 DEVKIT V1
| Bootloader tool | esptool_py | 
| Uploader tool | esptool_py | 
| Network uploader tool | esp_ota | 
| Bootloader address | 0x1000 | 
| Flash mode | dio | 
| Boot mode | dio | 
| Maximum upload size | 1280 Kb (1310720 B) | 
| Maximum data size | 320 Kb (327680 B) | 
The DOIT ESP32 DEVKIT V1 development board by default uses esptool_py uploader tool, esp_ota network uploader tool for Over-the-air (OTA) uploads and esptool_py bootloader tool. The bootloader starts at address "0x1000". Flash mode and boot mode for DOIT ESP32 DEVKIT V1 development board by default is dio and dio respectively.






