

The ESP32-WROOM, manufactured by Freenove, is a powerful Wi-Fi and Bluetooth microcontroller module designed for a wide range of applications. It features dual-core processing, making it ideal for Internet of Things (IoT) projects, real-time data processing, and other complex tasks. With its robust wireless connectivity and versatile GPIO pins, the ESP32-WROOM is a popular choice for developers and hobbyists alike.








The ESP32-WROOM module is packed with features that make it a versatile and powerful microcontroller. Below are its key technical specifications:
| Specification | Details |
|---|---|
| Microcontroller | Tensilica Xtensa® 32-bit LX6 dual-core processor |
| 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 Range | 3.0V to 3.6V |
| GPIO Pins | 34 (multipurpose, including ADC, DAC, PWM, I2C, SPI, UART, etc.) |
| ADC Channels | 18 (12-bit resolution) |
| DAC Channels | 2 (8-bit resolution) |
| Power Consumption | Ultra-low power consumption in deep sleep mode (as low as 10 µA) |
| Operating Temperature | -40°C to 85°C |
| Dimensions | 18 mm x 25.5 mm |
The ESP32-WROOM module has a total of 38 pins. Below is a table describing the key pins and their functions:
| Pin Name | Type | Description |
|---|---|---|
| GND | Power | Ground pin |
| 3V3 | Power | 3.3V power supply output |
| EN | Input | Enable pin (active high) |
| IO0 | GPIO/Boot Mode | GPIO pin 0, also used to enter bootloader mode during programming |
| IO2 | GPIO | General-purpose input/output pin |
| IO4 | GPIO | General-purpose input/output pin |
| IO12 | GPIO/ADC | GPIO pin 12, can also function as an ADC input |
| IO13 | GPIO/ADC | GPIO pin 13, can also function as an ADC input |
| IO14 | GPIO/PWM | GPIO pin 14, supports PWM functionality |
| IO15 | GPIO/PWM | GPIO pin 15, supports PWM functionality |
| IO16 | GPIO | General-purpose input/output pin |
| IO17 | GPIO | General-purpose input/output pin |
| IO18 | GPIO/SPI | GPIO pin 18, can function as SPI clock (SCK) |
| IO19 | GPIO/SPI | GPIO pin 19, can function as SPI data input (MISO) |
| IO21 | GPIO/I2C | GPIO pin 21, can function as I2C data (SDA) |
| IO22 | GPIO/I2C | GPIO pin 22, can function as I2C clock (SCL) |
| IO23 | GPIO/SPI | GPIO pin 23, can function as SPI data output (MOSI) |
| IO25 | GPIO/DAC | GPIO pin 25, can function as a DAC output |
| IO26 | GPIO/DAC | GPIO pin 26, can function as a DAC output |
| IO27 | GPIO/ADC | GPIO pin 27, can also function as an ADC input |
| IO32 | GPIO/ADC | GPIO pin 32, can also function as an ADC input |
| IO33 | GPIO/ADC | GPIO pin 33, can also function as an ADC input |
| IO34 | GPIO/ADC | GPIO pin 34, input-only, can function as an ADC input |
| IO35 | GPIO/ADC | GPIO pin 35, input-only, can function as an ADC input |
Below is an example of how to use the ESP32-WROOM to blink an LED connected to GPIO2:
// Example: Blink an LED using ESP32-WROOM
// Connect an LED to GPIO2 with a suitable resistor
#define LED_PIN 2 // Define GPIO2 as the LED pin
void setup() {
pinMode(LED_PIN, OUTPUT); // Set GPIO2 as an output pin
}
void loop() {
digitalWrite(LED_PIN, HIGH); // Turn the LED on
delay(1000); // Wait for 1 second
digitalWrite(LED_PIN, LOW); // Turn the LED off
delay(1000); // Wait for 1 second
}
Module Not Responding:
Wi-Fi Connection Fails:
Code Upload Fails:
Overheating:
Q: Can the ESP32-WROOM be powered with 5V?
A: No, the ESP32-WROOM operates at 3.3V. Use a voltage regulator or level shifter if interfacing with 5V systems.
Q: How do I reset the module?
A: Press the EN (enable) pin or connect it momentarily to GND to reset the module.
Q: Can I use the ESP32-WROOM for Bluetooth audio streaming?
A: Yes, the ESP32-WROOM supports Bluetooth audio streaming, but additional libraries and configurations may be required.
Q: What is the maximum Wi-Fi range?
A: The Wi-Fi range depends on environmental factors but typically extends up to 100 meters in open spaces.
This concludes the documentation for the ESP32-WROOM module. For further assistance, refer to the official Freenove documentation or community forums.