

The ESP32 DevKit V1 (CP2102) is a versatile development board based on the ESP32-WROOM-32 module. It features dual-core processing, integrated Wi-Fi, and Bluetooth capabilities, making it an excellent choice for Internet of Things (IoT) applications, smart devices, and wireless communication projects. The board includes a CP2102 USB-to-UART bridge, simplifying programming and serial communication with a computer.








| Parameter | Specification |
|---|---|
| Microcontroller | ESP32-WROOM-32 |
| Processor | Dual-core Xtensa® 32-bit LX6 |
| Clock Speed | Up to 240 MHz |
| Flash Memory | 4 MB |
| SRAM | 520 KB |
| Wi-Fi | 802.11 b/g/n |
| Bluetooth | v4.2 BR/EDR and BLE |
| Operating Voltage | 3.3V |
| Input Voltage (via USB) | 5V |
| GPIO Pins | 30 |
| ADC Channels | 18 |
| DAC Channels | 2 |
| Communication Interfaces | UART, SPI, I2C, I2S, CAN, PWM |
| USB-to-UART Bridge | CP2102 |
| Dimensions | 54 mm x 27 mm |
The ESP32 DevKit V1 has 30 GPIO pins, many of which are multifunctional. Below is a table of the most commonly used pins and their functions:
| Pin Number | Pin Name | Functionality |
|---|---|---|
| 1 | EN | Reset the chip (active high) |
| 2 | GPIO0 | Boot mode selection, general-purpose I/O |
| 3 | GPIO2 | General-purpose I/O, ADC2 channel |
| 4 | GPIO4 | General-purpose I/O, ADC2 channel |
| 5 | GPIO5 | General-purpose I/O, ADC2 channel, PWM |
| 6 | GPIO12 | General-purpose I/O, ADC2 channel, PWM |
| 7 | GPIO13 | General-purpose I/O, ADC2 channel, PWM |
| 8 | GPIO14 | General-purpose I/O, ADC2 channel, PWM |
| 9 | GPIO15 | General-purpose I/O, ADC2 channel, PWM |
| 10 | GPIO16 | General-purpose I/O, ADC2 channel |
| 11 | GPIO17 | General-purpose I/O, ADC2 channel |
| 12 | GPIO18 | SPI clock (SCK), general-purpose I/O |
| 13 | GPIO19 | SPI MISO, general-purpose I/O |
| 14 | GPIO21 | I2C SDA, general-purpose I/O |
| 15 | GPIO22 | I2C SCL, general-purpose I/O |
| 16 | GPIO23 | SPI MOSI, general-purpose I/O |
| 17 | GPIO25 | DAC1, ADC2 channel, general-purpose I/O |
| 18 | GPIO26 | DAC2, ADC2 channel, general-purpose I/O |
| 19 | GPIO27 | ADC2 channel, general-purpose I/O |
| 20 | GPIO32 | ADC1 channel, general-purpose I/O |
| 21 | GPIO33 | ADC1 channel, general-purpose I/O |
| 22 | GPIO34 | ADC1 channel (input only) |
| 23 | GPIO35 | ADC1 channel (input only) |
| 24 | GPIO36 | ADC1 channel (input only) |
| 25 | GPIO39 | ADC1 channel (input only) |
Powering the Board:
Programming the Board:
ESP32 Dev Module) and port in the Arduino IDE.Connecting Peripherals:
Flashing Code:
BOOT button while uploading code to put the ESP32 into flashing mode.BOOT button once the upload begins.Below is an example of how to use the ESP32 DevKit V1 to blink an LED connected to GPIO2:
// Define the GPIO pin for the LED
#define LED_PIN 2
void setup() {
// Set the LED pin as an output
pinMode(LED_PIN, OUTPUT);
}
void loop() {
// Turn the LED on
digitalWrite(LED_PIN, HIGH);
delay(1000); // Wait for 1 second
// Turn the LED off
digitalWrite(LED_PIN, LOW);
delay(1000); // Wait for 1 second
}
ESP32 Not Detected by Computer:
Code Upload Fails:
BOOT button while uploading the code.Wi-Fi Connection Issues:
GPIO Pin Not Working:
Q: Can I power the ESP32 DevKit V1 with a battery?
A: Yes, you can power the board using a 3.7V LiPo battery connected to the 3.3V pin or a 5V source connected to the 5V pin.
Q: What is the maximum Wi-Fi range of the ESP32?
A: The range depends on environmental factors but typically extends up to 100 meters in open spaces.
Q: Can I use the ESP32 DevKit V1 for Bluetooth audio streaming?
A: Yes, the ESP32 supports Bluetooth audio streaming using the A2DP profile.
Q: How do I reset the ESP32?
A: Press the EN button to reset the board.
This concludes the documentation for the ESP32 DevKit V1 (CP2102).