

The ESP32 is a low-cost, low-power system on a chip (SoC) series with Wi-Fi and dual-mode Bluetooth capabilities. It is widely used in IoT applications for its versatility and performance. The ESP32 is designed for mobile devices, wearable electronics, and IoT applications, providing a complete, self-contained Wi-Fi and Bluetooth networking solution.








| Specification | Value |
|---|---|
| Operating Voltage | 2.2V - 3.6V |
| Operating Current | 80mA (average) |
| Power Consumption | 5µA (deep sleep mode) |
| Wi-Fi Standards | 802.11 b/g/n |
| Bluetooth | v4.2 BR/EDR and BLE |
| CPU | Xtensa® Dual-Core 32-bit LX6 |
| Flash Memory | 4MB (external) |
| SRAM | 520KB |
| GPIO Pins | 34 |
| Communication | UART, SPI, I2C, I2S, CAN, PWM, ADC, DAC |
| Pin Number | Pin Name | Description |
|---|---|---|
| 1 | EN | Enable (Active High) |
| 2 | IO0 | GPIO0, Boot Mode Select |
| 3 | IO1 | GPIO1, UART0 TXD |
| 4 | IO2 | GPIO2 |
| 5 | IO3 | GPIO3, UART0 RXD |
| 6 | IO4 | GPIO4 |
| 7 | IO5 | GPIO5 |
| 8 | GND | Ground |
| 9 | 3V3 | 3.3V Power Supply |
| 10 | IO12 | GPIO12, HSPI MISO |
| 11 | IO13 | GPIO13, HSPI MOSI |
| 12 | IO14 | GPIO14, HSPI CLK |
| 13 | IO15 | GPIO15, HSPI CS0 |
| 14 | IO16 | GPIO16, UART2 RXD |
| 15 | IO17 | GPIO17, UART2 TXD |
| 16 | IO18 | GPIO18, VSPI CLK |
| 17 | IO19 | GPIO19, VSPI MISO |
| 18 | IO21 | GPIO21, I2C SDA |
| 19 | IO22 | GPIO22, I2C SCL |
| 20 | IO23 | GPIO23, VSPI MOSI |
| 21 | IO25 | GPIO25, DAC1 |
| 22 | IO26 | GPIO26, DAC2 |
| 23 | IO27 | GPIO27 |
| 24 | IO32 | GPIO32, ADC1_CH4 |
| 25 | IO33 | GPIO33, ADC1_CH5 |
| 26 | IO34 | GPIO34, ADC1_CH6 |
| 27 | IO35 | GPIO35, ADC1_CH7 |
| 28 | IO36 | GPIO36, ADC1_CH0 |
| 29 | IO39 | GPIO39, ADC1_CH3 |
#include <WiFi.h>
// Replace with your network credentials
const char* ssid = "your_SSID";
const char* password = "your_PASSWORD";
void setup() {
Serial.begin(115200);
// Connect to Wi-Fi
WiFi.begin(ssid, password);
// Wait for connection
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("Connecting to WiFi...");
}
Serial.println("Connected to WiFi");
}
void loop() {
// Put your main code here, to run repeatedly
}
ESP32 Not Connecting to Wi-Fi:
GPIO Pins Not Responding:
Power Issues:
Boot Mode Issues:
By following this documentation, users can effectively utilize the ESP32 in their projects, leveraging its powerful features for a wide range of applications.