

The ESP32S NodeMCU, manufactured by AZ-Delivery, is a versatile microcontroller board designed for Internet of Things (IoT) applications and rapid prototyping. It features built-in Wi-Fi and Bluetooth capabilities, making it an excellent choice for wireless communication projects. With its powerful dual-core processor, ample GPIO pins, and support for various communication protocols, the ESP32S NodeMCU is suitable for a wide range of applications, including home automation, sensor networks, and wearable devices.








The ESP32S NodeMCU is based on the ESP32 microcontroller and includes the following key specifications:
| Specification | Details |
|---|---|
| Microcontroller | ESP32 (dual-core Xtensa LX6 processor) |
| Clock Speed | Up to 240 MHz |
| Flash Memory | 4 MB |
| SRAM | 520 KB |
| Wi-Fi | 802.11 b/g/n (2.4 GHz) |
| Bluetooth | Bluetooth 4.2 (Classic and BLE) |
| Operating Voltage | 3.3V |
| Input Voltage (VIN) | 5V (via USB or VIN pin) |
| GPIO Pins | 30 (including ADC, DAC, PWM, I2C, SPI, UART) |
| ADC Channels | 18 (12-bit resolution) |
| DAC Channels | 2 |
| Communication Protocols | UART, SPI, I2C, I2S, CAN, PWM |
| USB Interface | Micro-USB |
| Dimensions | 58 mm x 25.5 mm |
The ESP32S NodeMCU has a total of 30 GPIO pins, each with multiple functions. Below is a summary of the pin configuration:
| Pin | Function | Description |
|---|---|---|
| VIN | Power Input | Connect to 5V power source (e.g., USB or external power supply). |
| GND | Ground | Common ground for the circuit. |
| 3V3 | 3.3V Output | Provides 3.3V output for external components. |
| EN | Enable | Enables or disables the chip (active high). |
| GPIO0 | GPIO, Boot Mode | General-purpose I/O, also used for boot mode selection. |
| GPIO2 | GPIO, ADC, PWM | General-purpose I/O, analog input, or PWM output. |
| GPIO4 | GPIO, ADC, PWM | General-purpose I/O, analog input, or PWM output. |
| GPIO5 | GPIO, ADC, PWM | General-purpose I/O, analog input, or PWM output. |
| GPIO12 | GPIO, ADC, PWM, Touch Sensor | General-purpose I/O, analog input, PWM output, or touch sensor input. |
| GPIO13 | GPIO, ADC, PWM, Touch Sensor | General-purpose I/O, analog input, PWM output, or touch sensor input. |
| GPIO14 | GPIO, ADC, PWM, Touch Sensor | General-purpose I/O, analog input, PWM output, or touch sensor input. |
| GPIO15 | GPIO, ADC, PWM, Touch Sensor | General-purpose I/O, analog input, PWM output, or touch sensor input. |
| GPIO16 | GPIO | General-purpose I/O. |
| GPIO17 | GPIO | General-purpose I/O. |
| TXD0 | UART TX | UART transmit pin (default serial communication). |
| RXD0 | UART RX | UART receive pin (default serial communication). |
For a complete pinout diagram, refer to the official AZ-Delivery documentation.
Powering the Board:
Programming the Board:
Connecting Peripherals:
Wi-Fi and Bluetooth Setup:
WiFi.h library in your code. BluetoothSerial.h library.The following example demonstrates how to connect the ESP32S NodeMCU to a Wi-Fi network:
#include <WiFi.h> // Include the Wi-Fi library
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 Wi-Fi connection
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
}
Board Not Detected in Arduino IDE:
Wi-Fi Connection Fails:
Program Upload Fails:
Random Resets or Instability:
Q: Can I use the ESP32S NodeMCU with 5V sensors?
A: Yes, but you will need a level shifter to convert the 5V signals to 3.3V.
Q: How do I reset the ESP32?
A: Press the "EN" button on the board to reset the microcontroller.
Q: Can I use the ESP32S NodeMCU for battery-powered projects?
A: Yes, the board can be powered using a LiPo battery connected to the VIN pin, but ensure proper voltage regulation.
Q: How do I enable Bluetooth on the ESP32?
A: Include the BluetoothSerial.h library in your code and initialize the Bluetooth module using BluetoothSerial.begin().
By following this documentation, you can effectively utilize the ESP32S NodeMCU for your IoT and prototyping projects.