The HiLetGo ESP32-WROOM-32D (Part ID: 3-01-1287) is a high-performance microcontroller module designed for IoT (Internet of Things) applications. It features integrated Wi-Fi and Bluetooth capabilities, a dual-core processor, and a wide range of GPIO pins, making it suitable for projects requiring wireless communication, real-time processing, and versatile interfacing.
Parameter | Specification |
---|---|
Manufacturer | HiLetGo |
Part ID | 3-01-1287 |
Microcontroller | ESP32-D0WDQ6 (dual-core Xtensa LX6) |
Clock Speed | Up to 240 MHz |
Flash Memory | 4 MB |
SRAM | 520 KB |
Wireless Connectivity | Wi-Fi 802.11 b/g/n, Bluetooth v4.2 |
Operating Voltage | 3.3V |
Input Voltage Range | 3.0V - 3.6V |
GPIO Pins | 36 |
Communication Protocols | UART, SPI, I2C, I2S, PWM, ADC, DAC |
ADC Resolution | 12-bit |
DAC Resolution | 8-bit |
Operating Temperature | -40°C to +85°C |
Dimensions | 25.5 mm x 18 mm x 3 mm |
The HiLetGo ESP32-WROOM-32D has 38 pins. Below is a summary of the key pins and their functions:
Pin Number | Name | Function Description |
---|---|---|
1 | EN | Enable pin. Active high to enable the module. |
2 | IO0 | GPIO0, used for boot mode selection. |
3 | IO1 (TX0) | GPIO1, UART0 TX pin. |
4 | IO3 (RX0) | GPIO3, UART0 RX pin. |
5 | IO4 | GPIO4, general-purpose I/O. |
6 | IO5 | GPIO5, general-purpose I/O. |
7 | IO12 | GPIO12, supports ADC2 and touch sensing. |
8 | IO13 | GPIO13, supports ADC2 and touch sensing. |
9 | IO14 | GPIO14, supports ADC2 and touch sensing. |
10 | IO15 | GPIO15, supports ADC2 and touch sensing. |
11 | IO16 | GPIO16, general-purpose I/O. |
12 | IO17 | GPIO17, general-purpose I/O. |
13 | IO18 | GPIO18, supports SPI clock (SCK). |
14 | IO19 | GPIO19, supports SPI data (MISO). |
15 | IO21 | GPIO21, supports I2C SDA. |
16 | IO22 | GPIO22, supports I2C SCL. |
17 | IO23 | GPIO23, supports SPI data (MOSI). |
18 | GND | Ground pin. |
19 | 3V3 | 3.3V power output. |
Note: Some GPIO pins have specific restrictions or dual functions. Refer to the ESP32 datasheet for detailed pin behavior.
Powering the Module:
3V3
pin. Avoid exceeding the input voltage range (3.0V - 3.6V).GND
pin to the ground of your circuit.Programming the Module:
TX
pin of the adapter to the RX0
pin (IO3) of the ESP32.RX
pin of the adapter to the TX0
pin (IO1) of the ESP32.EN
pin to reset the module if needed.Boot Mode Selection:
IO0
pin low (connect to GND) while resetting the module.Connecting Peripherals:
IO21
(SDA) and IO22
(SCL).IO18
(SCK), IO19
(MISO), and IO23
(MOSI).Below is an example of how to blink an LED connected to GPIO2 of the ESP32 using the Arduino IDE:
// Example: Blink an LED on GPIO2 of the ESP32
// Define the GPIO pin for the LED
const int ledPin = 2;
void setup() {
// Initialize the GPIO pin as an output
pinMode(ledPin, OUTPUT);
}
void loop() {
// Turn the LED on
digitalWrite(ledPin, HIGH);
delay(1000); // Wait for 1 second
// Turn the LED off
digitalWrite(ledPin, LOW);
delay(1000); // Wait for 1 second
}
Note: Install the ESP32 board package in the Arduino IDE before uploading the code.
Module Not Detected by Computer:
Code Upload Fails:
IO0
pin low during reset to enter programming mode.Wi-Fi Connection Issues:
GPIO Pin Not Working:
Q: Can the ESP32-WROOM-32D operate at 5V?
A: No, the module operates at 3.3V. Use a level shifter for 5V peripherals.
Q: How do I reset the module?
A: Pull the EN
pin low momentarily to reset the module.
Q: Can I use the ESP32 with a battery?
A: Yes, ensure the battery provides a stable 3.3V output.
Q: What is the maximum Wi-Fi range?
A: The range depends on environmental factors but typically extends up to 50 meters indoors and 200 meters outdoors.
For further assistance, refer to the official ESP32 datasheet or HiLetGo support resources.