

The NodeMCU 32 38 Pin, manufactured by NodeMCU with part ID ESP 32S, is a low-cost, open-source IoT platform based on the ESP32 chip. It features dual-mode Wi-Fi and Bluetooth capabilities, making it ideal for a wide range of wireless communication applications. Designed for easy integration with various sensors and actuators, this module is widely used in IoT projects, home automation, and wireless data transmission systems.








| Parameter | Specification |
|---|---|
| Microcontroller | ESP32 Dual-Core Tensilica Xtensa LX6 |
| Operating Voltage | 3.3V |
| Input Voltage Range | 5V (via USB) or 7-12V (via VIN pin) |
| Flash Memory | 4MB |
| SRAM | 520KB |
| Wi-Fi Standard | 802.11 b/g/n |
| Bluetooth | BLE and Bluetooth v4.2 |
| GPIO Pins | 30 (including ADC, DAC, PWM, I2C, SPI, UART) |
| ADC Resolution | 12-bit |
| DAC Resolution | 8-bit |
| Clock Speed | Up to 240 MHz |
| Power Consumption | Ultra-low power (varies by mode) |
| Dimensions | 58mm x 25.5mm |
The NodeMCU 32 38 Pin module has 38 pins, each with specific functions. Below is the pinout description:
| Pin Number | Pin Name | Function Description |
|---|---|---|
| 1 | GND | Ground |
| 2 | VIN | Input voltage (7-12V) |
| 3 | 3V3 | 3.3V output for powering external devices |
| 4-21 | GPIO0-19 | General Purpose Input/Output pins |
| 22 | ADC1_CH0 | Analog-to-Digital Converter channel 0 |
| 23 | ADC1_CH1 | Analog-to-Digital Converter channel 1 |
| 24 | DAC1 | Digital-to-Analog Converter channel 1 |
| 25 | DAC2 | Digital-to-Analog Converter channel 2 |
| 26 | TX0 | UART Transmit pin |
| 27 | RX0 | UART Receive pin |
| 28 | EN | Enable pin (active high) |
| 29 | IO34 | Input-only GPIO |
| 30 | IO35 | Input-only GPIO |
| 31-38 | Reserved | Reserved for future use |
Powering the NodeMCU 32 38 Pin:
Programming the Module:
Connecting Peripherals:
Uploading Code:
Below is an example of how to use the NodeMCU 32 38 Pin to read data from a DHT11 temperature and humidity sensor and send it to the serial monitor:
#include <DHT.h>
// Define the DHT sensor type and pin
#define DHTPIN 4 // GPIO4 is connected to the DHT11 data pin
#define DHTTYPE DHT11 // DHT11 sensor
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(115200); // Initialize serial communication at 115200 baud
dht.begin(); // Initialize the DHT sensor
Serial.println("DHT11 Sensor Test");
}
void loop() {
delay(2000); // Wait 2 seconds between readings
// Read temperature and humidity values
float humidity = dht.readHumidity();
float temperature = dht.readTemperature();
// Check if the readings are valid
if (isnan(humidity) || isnan(temperature)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
// Print the readings to the serial monitor
Serial.print("Humidity: ");
Serial.print(humidity);
Serial.print("% Temperature: ");
Serial.print(temperature);
Serial.println("°C");
}
Module Not Detected by Computer:
Code Upload Fails:
Wi-Fi Connection Issues:
Unstable Power Supply: