

The ESP32 DevKitC (WROOM-32) is a versatile development board built around the ESP32 chip, which integrates Wi-Fi and Bluetooth capabilities. This board is widely used in Internet of Things (IoT) applications, prototyping, and embedded systems development. Its compact design, powerful dual-core processor, and extensive connectivity options make it a popular choice for developers and hobbyists alike.








The ESP32 DevKitC (WROOM-32) is equipped with the ESP32-WROOM-32 module, which includes a dual-core Xtensa® 32-bit LX6 microprocessor. Below are the key technical details:
The ESP32 DevKitC has a total of 38 pins. Below is a summary of the key pins and their functions:
| Pin | Name | Description |
|---|---|---|
| 1 | 3V3 | 3.3 V power output |
| 2 | GND | Ground |
| 3 | EN | Enable pin (active high, used to reset the chip) |
| 4 | IO0 | GPIO0, used for boot mode selection during programming |
| 5-39 | GPIO1-GPIO39 | General-purpose input/output pins (multiplexed for ADC, DAC, PWM, etc.) |
| 21 | TXD0 | UART0 Transmit |
| 22 | RXD0 | UART0 Receive |
| 25 | ADC1_CH0 | Analog input channel 0 |
| 26 | DAC1 | Digital-to-Analog Converter output 1 |
| 27 | DAC2 | Digital-to-Analog Converter output 2 |
| 28 | VIN | Input voltage (5 V via USB or external power supply) |
Note: Some GPIO pins have specific functions or limitations. Refer to the ESP32 datasheet for detailed pin multiplexing information.
Powering the Board:
Programming the Board:
Connecting Peripherals:
Uploading Code:
The following example demonstrates how to blink an LED connected to GPIO2:
// Define the GPIO pin where the LED is connected
const int ledPin = 2;
void setup() {
// Set the LED pin as an output
pinMode(ledPin, OUTPUT);
}
void loop() {
// Turn the LED on
digitalWrite(ledPin, HIGH);
delay(1000); // Wait for 1 second
// Turn the LED off
digitalWrite(ledPin, LOW);
delay(1000); // Wait for 1 second
}
The board is not detected by the computer:
Code upload fails:
Wi-Fi connection issues:
Unstable operation or random resets:
Q: Can I use the ESP32 DevKitC with MicroPython?
A: Yes, the ESP32 supports MicroPython. You can flash the MicroPython firmware to the board and use it for development.
Q: How do I use the Bluetooth functionality?
A: The ESP32 supports both Bluetooth Classic and BLE. You can use the Arduino IDE or ESP-IDF to write Bluetooth applications.
Q: What is the maximum current draw of the ESP32?
A: The ESP32 can draw up to 500 mA during peak operation, especially when using Wi-Fi or Bluetooth.
Q: Can I power the ESP32 with a battery?
A: Yes, you can use a LiPo battery with a suitable voltage regulator or connect it to the VIN pin.
By following this documentation, you can effectively use the ESP32 DevKitC (WROOM-32) for your projects and troubleshoot common issues.