

The ESP32, manufactured by Espressif Systems, is a low-cost, low-power system on a chip (SoC) with integrated Wi-Fi and Bluetooth capabilities. It is widely used in Internet of Things (IoT) applications, embedded systems, and smart devices. The ESP32 Dev Module is a development board that simplifies prototyping and development with the ESP32 chip.








The ESP32 Dev Module has a variety of pins for different functionalities. Below is a summary of the key pins:
| Pin Name | Function | Description |
|---|---|---|
| GPIO0 | Input/Output, Boot Mode Select | Used for boot mode selection during startup. |
| GPIO2 | Input/Output, ADC, DAC | General-purpose pin, can also function as ADC or DAC. |
| GPIO12 | Input/Output, ADC | General-purpose pin, supports ADC functionality. |
| GPIO13 | Input/Output, ADC, Touch Sensor | General-purpose pin, supports ADC and touch sensing. |
| GPIO15 | Input/Output, ADC, PWM | General-purpose pin, supports ADC and PWM. |
| EN | Enable | Active-high pin to enable or reset the chip. |
| 3V3 | Power | 3.3V power supply input/output. |
| GND | Ground | Ground connection. |
| TX0 (GPIO1) | UART Transmit | UART0 transmit pin for serial communication. |
| RX0 (GPIO3) | UART Receive | UART0 receive pin for serial communication. |
Note: Some GPIO pins are reserved for internal functions or have specific boot mode requirements. Refer to the ESP32 datasheet for detailed pin behavior.
Powering the ESP32:
3V3 pin. GND pin to the ground of your circuit. Programming the ESP32:
Connecting Peripherals:
Uploading Code:
EN (enable) button on the ESP32 board if required to reset the chip.Below is an example of how 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 on the ESP32 while uploading the code.Wi-Fi Connection Issues:
Random Resets or Instability:
Q: Can the ESP32 operate on 5V?
A: No, the ESP32 operates at 3.3V. Applying 5V to GPIO pins can damage the chip.
Q: How do I put the ESP32 into deep sleep mode?
A: Use the esp_deep_sleep_start() function in your code. Refer to the Espressif documentation for detailed instructions.
Q: Can I use the ESP32 with Bluetooth and Wi-Fi simultaneously?
A: Yes, the ESP32 supports simultaneous use of Bluetooth and Wi-Fi, but performance may vary depending on the application.
Q: What is the maximum range of the ESP32's Wi-Fi?
A: The range depends on environmental factors but typically extends up to 100 meters in open spaces.
This concludes the documentation for the ESP32 Dev Module. For more advanced features and examples, refer to the official Espressif documentation.