The ESP8266 LoLin NodeMCU V3 is a low-cost Wi-Fi microcontroller board based on the ESP8266 chip. It features a built-in USB interface for easy programming and a variety of GPIO pins for connecting sensors, actuators, and other devices. This board is widely used in IoT (Internet of Things) applications due to its affordability, compact size, and robust wireless capabilities.
Specification | Value |
---|---|
Microcontroller | ESP8266 |
Operating Voltage | 3.3V |
Input Voltage (via USB) | 5V |
Flash Memory | 4MB |
Clock Speed | 80 MHz / 160 MHz |
Wi-Fi Standard | 802.11 b/g/n |
GPIO Pins | 11 (Digital I/O) |
Analog Input Pin | 1 (10-bit ADC, 0–3.3V range) |
USB Interface | CH340G USB-to-Serial Converter |
Dimensions | 58mm x 31mm x 13mm |
Pin Name | Description |
---|---|
VIN | Input voltage pin (5V input from USB or external power source). |
3V3 | Regulated 3.3V output from the onboard voltage regulator. |
GND | Ground pin. |
D0–D8 | General-purpose digital I/O pins. Can be used for input or output. |
A0 | Analog input pin (0–3.3V range, 10-bit resolution). |
RX | UART receive pin for serial communication. |
TX | UART transmit pin for serial communication. |
EN | Enable pin. Pull HIGH to enable the chip, LOW to disable it. |
RST | Reset pin. Pull LOW to reset the board. |
SDA | I2C data pin (shared with GPIO4 by default). |
SCL | I2C clock pin (shared with GPIO5 by default). |
Powering the Board:
Programming the Board:
Connecting Sensors and Actuators:
Wi-Fi Configuration:
#include <ESP8266WiFi.h> // Include the ESP8266 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); // Start serial communication at 115200 baud
WiFi.begin(ssid, password); // Connect to the Wi-Fi network
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
}
The board is not detected by the computer:
Upload errors in the Arduino IDE:
Wi-Fi connection issues:
GPIO pins not working as expected:
Can I power the board with a 3.7V LiPo battery?
Yes, connect the battery to the VIN and GND pins. Ensure the battery voltage is regulated.
What is the maximum current the GPIO pins can handle?
Each GPIO pin can source or sink up to 12mA. Avoid exceeding this limit.
Can I use the board as a standalone web server?
Yes, the ESP8266 can host a web server using the ESP8266WebServer library.
How do I reset the board?
Press the "RST" button or pull the RST pin LOW momentarily to reset the board.