The ESP32-WROOM-32 is a powerful Wi-Fi and Bluetooth microcontroller module designed for IoT applications and embedded systems. It features dual-core processing capabilities, making it suitable for tasks requiring high performance and efficiency. With integrated Wi-Fi and Bluetooth (Classic and BLE), the ESP32-WROOM-32 is widely used in smart home devices, wearables, industrial automation, and other connected applications.
The ESP32-WROOM-32 module has 38 pins. Below is a table of the most commonly used pins and their functions:
Pin | Name | Function |
---|---|---|
1 | EN | Enable pin. Pull high to enable the module. |
2 | GPIO0 | General-purpose I/O, also used for boot mode selection. |
3 | GPIO2 | General-purpose I/O, often used for onboard LED. |
4 | GPIO12 | General-purpose I/O, supports ADC and other functions. |
5 | GPIO13 | General-purpose I/O, supports PWM and ADC. |
6 | GPIO14 | General-purpose I/O, supports PWM and ADC. |
7 | GPIO15 | General-purpose I/O, supports PWM and ADC. |
8 | GPIO16 | General-purpose I/O, often used for UART communication. |
9 | GPIO17 | General-purpose I/O, often used for UART communication. |
10 | 3V3 | 3.3V power supply output. |
11 | GND | Ground. |
12 | TXD0 | UART0 transmit pin. |
13 | RXD0 | UART0 receive pin. |
14 | ADC1_CH0 | Analog input channel 0. |
15 | DAC1 | Digital-to-analog converter channel 1. |
For a complete pinout, refer to the ESP32-WROOM-32 datasheet.
3V3
pin. Ensure the current rating of the power source is sufficient (at least 500 mA).The ESP32-WROOM-32 can be programmed using the Arduino IDE. Below is an example of connecting the ESP32 to a Wi-Fi network:
#include <WiFi.h> // Include the Wi-Fi library for ESP32
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
WiFi.begin(ssid, password); // Start connecting to Wi-Fi
Serial.print("Connecting to Wi-Fi");
while (WiFi.status() != WL_CONNECTED) {
delay(500); // Wait for connection
Serial.print(".");
}
Serial.println("\nConnected to Wi-Fi!");
Serial.print("IP Address: ");
Serial.println(WiFi.localIP()); // Print the assigned IP address
}
void loop() {
// Add your main code here
}
Module Not Responding:
EN
pin is pulled high.Wi-Fi Connection Fails:
Code Upload Fails:
Overheating:
Q: Can the ESP32-WROOM-32 operate on 5V?
A: No, the module operates at 3.3V. Use a voltage regulator or level shifter for 5V systems.
Q: How do I reset the module?
A: Pull the EN
pin low momentarily to reset the module.
Q: Can I use the ESP32-WROOM-32 for Bluetooth audio?
A: Yes, the module supports Bluetooth audio streaming using the A2DP profile.
Q: What is the maximum Wi-Fi range?
A: The range depends on environmental factors but typically extends up to 100 meters in open space.
This documentation provides a comprehensive guide to using the ESP32-WROOM-32 module effectively. For further details, consult the official datasheet and reference materials.