

The ESP32 DOIT DEV KIT1, manufactured by Espressif Systems (Part ID: ISM2.4G 802.11/b/g/n), is a versatile development board built around the ESP32 chip. It features integrated Wi-Fi and Bluetooth capabilities, making it an excellent choice for Internet of Things (IoT) projects, smart devices, and wireless communication applications. Its compact design, powerful processing capabilities, and extensive GPIO options make it suitable for both beginners and advanced developers.








| Parameter | Value |
|---|---|
| Microcontroller | ESP32 Dual-Core Xtensa LX6 |
| Clock Speed | Up to 240 MHz |
| Flash Memory | 4 MB (varies by model) |
| SRAM | 520 KB |
| Wireless Connectivity | Wi-Fi 802.11 b/g/n, Bluetooth v4.2 + BLE |
| Operating Voltage | 3.3V |
| Input Voltage (VIN) | 5V (via USB) or 7-12V (via VIN pin) |
| GPIO Pins | 30 (including ADC, DAC, PWM, I2C, SPI, UART) |
| ADC Resolution | 12-bit |
| DAC Resolution | 8-bit |
| Power Consumption | Ultra-low power consumption in deep sleep mode (~10 µA) |
| Dimensions | 54 mm x 27 mm |
The ESP32 DOIT DEV KIT1 has a total of 30 GPIO pins, which can be configured for various functions. Below is the pinout description:
| Pin | Function | Description |
|---|---|---|
| VIN | Power Input | Accepts 7-12V input for powering the board. |
| 3V3 | Power Output | Provides 3.3V output for external components. |
| GND | Ground | Common ground pin. |
| EN | Enable | Enables or disables the chip. Active high. |
| IO0 | GPIO0 / Boot Mode | Used for boot mode selection during programming. |
| IO2 | GPIO2 | General-purpose I/O pin. |
| IO4 | GPIO4 | General-purpose I/O pin. |
| IO5 | GPIO5 | General-purpose I/O pin. |
| IO12 | GPIO12 / ADC2_CH5 | General-purpose I/O or ADC input. |
| IO13 | GPIO13 / ADC2_CH4 | General-purpose I/O or ADC input. |
| IO14 | GPIO14 / ADC2_CH6 | General-purpose I/O or ADC input. |
| IO15 | GPIO15 / ADC2_CH3 | General-purpose I/O or ADC input. |
| IO16 | GPIO16 | General-purpose I/O pin. |
| IO17 | GPIO17 | General-purpose I/O pin. |
| IO18 | GPIO18 / SPI_CLK | General-purpose I/O or SPI clock pin. |
| IO19 | GPIO19 / SPI_MISO | General-purpose I/O or SPI MISO pin. |
| IO21 | GPIO21 / I2C_SDA | General-purpose I/O or I2C data pin. |
| IO22 | GPIO22 / I2C_SCL | General-purpose I/O or I2C clock pin. |
| IO23 | GPIO23 / SPI_MOSI | General-purpose I/O or SPI MOSI pin. |
| IO25 | GPIO25 / DAC1 | General-purpose I/O or DAC output. |
| IO26 | GPIO26 / DAC2 | General-purpose I/O or DAC output. |
| IO27 | GPIO27 | General-purpose I/O pin. |
| IO32 | GPIO32 / ADC1_CH4 | General-purpose I/O or ADC input. |
| IO33 | GPIO33 / ADC1_CH5 | General-purpose I/O or ADC input. |
| IO34 | GPIO34 / ADC1_CH6 (Input Only) | ADC input only. |
| IO35 | GPIO35 / ADC1_CH7 (Input Only) | ADC input only. |
| IO36 | GPIO36 / ADC1_CH0 (Input Only) | ADC input only. |
| IO39 | GPIO39 / ADC1_CH3 (Input Only) | ADC input only. |
Powering the Board:
Programming the Board:
Connecting Peripherals:
Wi-Fi and Bluetooth Setup:
The following example demonstrates how to connect the ESP32 to a Wi-Fi network and print the IP address:
#include <WiFi.h> // Include the Wi-Fi library
const char* ssid = "Your_SSID"; // Replace with your Wi-Fi network name
const char* password = "Your_PASSWORD"; // Replace with your Wi-Fi password
void setup() {
Serial.begin(115200); // Initialize serial communication at 115200 baud
delay(1000);
Serial.println("Connecting to Wi-Fi...");
WiFi.begin(ssid, password); // Start Wi-Fi connection
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print("."); // Print dots while connecting
}
Serial.println("\nWi-Fi connected!");
Serial.print("IP Address: ");
Serial.println(WiFi.localIP()); // Print the assigned IP address
}
void loop() {
// Add your main code here
}
Board Not Detected by Computer:
Upload Fails with "Failed to Connect" Error:
Wi-Fi Connection Fails:
GPIO Pin Not Responding:
Q: Can I power the ESP32 with a 5V power bank?
A: Yes, you can power the ESP32 via the micro-USB port using a 5V power bank.
Q: How do I reset the ESP32?
A: Press the "EN" button on the board to reset the ESP32.
Q: Can I use the ESP32 with 5V sensors?
A: Use a level shifter to safely interface 5V sensors with the ESP32's 3.3V GPIO pins.
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.
This concludes the documentation for the ESP32 DOIT DEV KIT1.