Fact-checked by Grok 2 weeks ago

NodeMCU

NodeMCU is an open-source and development kit that enables of Internet of Things (IoT) devices using scripting on Espressif's low-cost and system-on-chip (SoC) modules. The platform integrates hardware interfaces such as GPIO, PWM, , , and on a single board, combined with Node.js-style network , to simplify and control for applications like sensors and smart devices. The NodeMCU for is built on Espressif's NON-OS SDK and supports an asynchronous, model based on 5.1.4 or 5.3, with over 70 C modules and nearly 20 Lua modules for tasks including management, HTTP communication, and file handling. It utilizes an on-module flash-based SPIFFS file system for storing scripts and data, while the Lua Flash Store (LFS), introduced in July 2018, allows up to 256 KB of Lua code to be embedded directly in the for efficient execution. Community-supported and compatible with any or module, the for is available in stable release and active dev branches, while ESP32 support is in the dev-esp32 branch, with pre-built binaries accessible via a custom build service; the latest stable release was version 3.0.0 in February 2024. The NodeMCU development kit, such as the v1.0 version, features a compact board with a built-in USB-to-TTL converter for easy connection to computers, facilitating flashing and script uploading without additional . This plug-and-play design, leveraging the FCC-certified module, has made NodeMCU a popular choice for hobbyists and developers seeking an accessible entry into development since its as an ESP8266-based platform.

Introduction

Overview

NodeMCU is an open-source and kit based on Espressif Systems' and system-on-chip (SoCs), designed to facilitate scripting for of (IoT) applications. The platform's core purpose is to simplify programming for hobbyists and developers by providing high-level Lua commands that abstract away low-level details, offering an accessible alternative to the complex C-based originally supplied by Espressif. Key hardware components include an Espressif such as the or , a USB-to-serial converter such as the CP2102 chip for direct computer connectivity, an onboard for stable 3.3V operation, and breadboard-compatible pin headers to support easy integration into prototypes. Launched in 2014, NodeMCU emerged as a user-friendly option to streamline development on the ESP8266 beyond traditional C programming.

Key Features

NodeMCU distinguishes itself through its support for scripting, which enables tailored for applications. This allows developers to establish connectivity and control GPIO pins with minimal code, often in just a few lines, facilitating without the complexity of lower-level languages. The platform is fully open-source, licensed under the , with both firmware and hardware schematics freely available on , encouraging community contributions and custom modifications. A key convenience is the built-in USB interface for programming and , which integrates a USB-to-serial converter and eliminates the need for external programmers or additional circuitry. NodeMCU boards are notably affordable, typically costing under $5, and feature a compact measuring 48 mm x 26 mm, making them suitable for easy integration into space-constrained projects. Additionally, it supports over-the-air () updates and access to an on-module through Lua modules like SPIFFS, allowing seamless remote upgrades and persistent without physical connections. This integration builds on Espressif's and hardware, providing a user-friendly layer for Wi-Fi-enabled development.

Historical Development

Origins and Timeline

NodeMCU emerged in 2014 as a community-led initiative by developers seeking an open-source solution to overcome the constraints of Espressif Systems' proprietary AT firmware for the newly introduced system-on-chip (). The , which began production in December 2013, initially relied on closed-source AT commands that limited direct access to hardware features and required cumbersome serial interactions for basic operations. Frustrated with these limitations, a group of enthusiasts initiated the project to provide a more flexible and programmable alternative, focusing on simplifying prototyping for broader accessibility. The foundational work began with the first commit to the NodeMCU repository on by developer "zeroday" (also known as ) on October 13, 2014, introducing a Lua-based interpreter tailored for the . The project's first hardware milestone came with the public release of the NodeMCU devkit v0.9 in late 2014, built around the ESP-12 module with 4MB of . This board integrated the with essential peripherals like a USB-to-serial converter (CP2102), , and breadboard-friendly pin headers, reducing the need for custom wiring in early experiments. Central to NodeMCU's design was its motivation to democratize development by layering a lightweight scripting engine over Espressif's emerging SDK, which had been released in October 2014; this abstraction enabled for configuration, GPIO manipulation, and network tasks without delving into low-level C code. Adoption accelerated through online maker communities, with early mentions on in December 2014 highlighting the 's ease of use for scripting, and the repository quickly gaining contributors and forks. By early 2015, the Lua core reached its first stable iteration, supporting 5.1.4 with built-in modules for essential functions like timers, PWM, and I2C, which solidified its reliability for practical applications. This phase transitioned NodeMCU from a niche experiment into a standardized open-hardware platform, as the v0.9 devkit design inspired commercial clones and further refinements by mid-2015.

Major Milestones

In 2016, the release of NodeMCU v2 by LOLIN introduced significant improvements in hardware stability and expanded support for a broader range of modules, enabling more reliable prototyping with the . This version addressed early limitations in power management and pin compatibility, allowing developers to integrate over 40 modules by mid-year for tasks like interfacing and network communication. Initial ESP32 support efforts began in 2016, with community-driven forks extending compatibility to the microcontroller by 2018, facilitating a transition to dual-architecture support with enhanced processing power and wireless features. These efforts, including the introduction of the Lua Flash Store (LFS) in September 2018 for efficient and new modules like u8g2 for , marked a pivotal shift toward more versatile embedded applications. Support for programming NodeMCU boards via the Arduino IDE, enabled by the ESP8266 core released in 2015, matured by 2016-2017, simplifying development for beginners with C++ sketches alongside Lua options. Key firmware updates around this period added Lua 5.3 compatibility and refined TLS protocols, enhancing security for Wi-Fi connections. Espressif continued advancing ESP32 SoCs with features like built-in Bluetooth Low Energy and increased RAM up to 520 KiB for more demanding IoT tasks, providing seamless upgrades from ESP8266 variants while community NodeMCU firmware maintained compatibility. Community contributions have sustained NodeMCU's evolution, with the primary firmware repository exceeding 7,600 GitHub stars as of 2023 and incorporating ongoing security patches to mitigate Wi-Fi vulnerabilities like those in MbedTLS implementations. Active maintenance includes regular bug fixes and module optimizations, ensuring long-term viability for open-source projects.

Hardware Specifications

Board Variants

NodeMCU boards are available in various hardware iterations, primarily distinguished by their underlying microcontroller modules: the for early versions and the for more advanced ones. The original -based variants include the v0.9 model, which features a blue (PCB) and integrates the ESP-12E module with 4 MB of . This design was developed as an open-source development kit to simplify prototyping with the . Subsequent variants, such as v1.0, refined the layout while retaining the ESP-12E module and compatibility with the NodeMCU ecosystem. Other notable ESP8266-based boards include the Amica NodeMCU, which maintains a similar pinout to the original but employs a different USB-to-serial converter chip, often the CH340 for cost efficiency. In contrast, the LoLin NodeMCU (sometimes labeled as v3) adopts a larger with wider pin spacing, enhancing compatibility while using the same ESP-12E module. These variants share core specifications like an 80 MHz clock speed and Wi-Fi-only connectivity, prioritizing simplicity for applications. Shifting to ESP32-based variants, the NodeMCU-32S introduces dual-core processing at 240 MHz, 4 MB flash, 520 KB SRAM, and integrated (BLE) alongside , enabling more complex tasks such as audio processing via support. This board includes an onboard CP2102 USB-to-serial chip and 2x19-pin extension headers for easy integration. The official Espressif ESP32-DevKitC serves as a breadboard-friendly alternative, exposing all ESP32 pins in a compact, low-footprint design optimized for prototyping without third-party modifications. More recent variants, as of 2025, include ESP32-S3-based boards like the Waveshare NodeMCU-ESP-S3-12K, featuring a dual-core Xtensa LX7 at up to 240 MHz, 512 KB with optional PSRAM up to 8 MB, 4 and 5 (LE), native USB support, and acceleration capabilities for advanced and applications. Key hardware differences between and variants lie in processing power and connectivity: models are limited to single-core at 80 MHz, while variants add BLE, dual cores, and up to 240 MHz speeds for enhanced performance in multitasking scenarios. All variants operate at 3.3 V logic levels with a maximum draw of approximately 300 mA during transmission, supported by onboard voltage regulators that accept 5 V USB input for stable power delivery. These boards are predominantly mass-produced by third-party manufacturers like , with widespread availability through electronics distributors; however, clones often vary in quality, such as those featuring counterfeit chips that may exhibit instability compared to genuine components. Pin compatibility across variants allows for shared prototyping setups, though detailed electrical interfaces are covered separately.

Pin Configuration

The NodeMCU board, based on the , features a pinout arranged in two rows of 15 headers each, totaling 30 pins, which include power, ground, and (GPIO) connections for interfacing with external hardware. These pins are labeled D0 through D8, along with RX, TX, and A0, mapping to GPIO0 through GPIO16, though GPIO6 through GPIO11 are typically reserved for internal access and not exposed for general use. The (ADC) is limited to a single channel on A0 (ADC0), while serial interfaces include UART on GPIO1 (TX) and GPIO3 (RX), I2C typically on GPIO4 (SDA) and GPIO5 (SCL), and SPI on GPIO6 through GPIO11 (though avoided due to flash conflicts).
Pin LabelGPIOPrimary FunctionsNotes
D016Digital I/OWakes from ; HIGH at boot
D15Digital I/O, SCLI2C clock
D24Digital I/O, SDAI2C data; on-board LED
D30Digital I/OBoot mode (LOW for )
D42Digital I/OBoot mode (must be HIGH)
D514Digital I/O, SCLKSPI clock
D612Digital I/O, MISOSPI data in
D713Digital I/O, MOSISPI data out
D815Digital I/O, CSBoot mode (must be LOW)
RX3UART RXSerial receive; HIGH at boot
TX1UART TXSerial transmit; HIGH at boot
A0ADC0Analog input10-bit resolution, 0-3.3V range on NodeMCU
The GPIO pins operate at 3.3V logic levels with a maximum voltage tolerance of 3.6V, and inputs are not officially 5V tolerant despite some informal reports of ; exceeding this risks permanent damage. Each GPIO supports a maximum source current of 12mA and a higher current, limiting direct drive of high-power loads without external circuitry. The (enable) pin serves as an active-low , pulling it low initiates a hardware , while GPIO0 determines modes—held low during power-on enters download mode for flashing. GPIO2 connects to an on-board LED (active low) and must be high at to avoid failure. NodeMCU variants based on the , such as the NodeMCU-32S, expand the pinout to 38-40 headers with greater flexibility, exposing up to 30 GPIOs (GPIO0 through GPIO39, excluding flash-reserved pins). These include multiple ADCs with 18 channels total—eight on ADC1 (GPIO32-39) and ten on ADC2 (GPIO0, 2, 4, 12-15, 25-27), offering 12-bit resolution but with ADC2 unavailable during operation—and capacitive touch sensors on ten GPIOs (0, 2, 4, 12-15, 25-27, 32, 33). UART defaults remain similar (GPIO1/3 for UART0), I2C on GPIO21/22, and on configurable sets like GPIO18-23 for VSPI, while voltage levels stay at 3.3V logic with up to 40mA per GPIO and no 5V output capability. modes involve strapping pins like GPIO0 (low for download) and GPIO15 (low for normal boot), with the EN pin retaining functionality. Safety considerations include the absence of 5V output from any pin, necessitating level shifters for 5V devices, and the requirement for external pull-up resistors (typically 4.7kΩ to 3.3V) on I2C lines due to the open-drain nature of the protocol. Always verify board-specific schematics, as pin mappings can vary slightly across manufacturers.

Software Framework

Firmware Details

The NodeMCU firmware is an open-source implementation that provides a Lua-based scripting environment for the ESP8266 and ESP32 WiFi system-on-chips (SoCs) from Espressif Systems. For the ESP8266, it is built upon a customized Lua interpreter derived from Lua 5.1.4 with eLua patches and NodeMCU-specific enhancements; for the ESP32, it uses Lua 5.3.5 with NodeMCU enhancements. This enables event-driven, asynchronous programming directly on the microcontroller. For the ESP8266, the firmware layers over Espressif's Non-OS SDK, which is a lightweight, non-real-time operating environment optimized for low-resource embedded applications. Core modules include Wi-Fi management via the wifi module (supporting station mode with wifi.sta and access point mode with wifi.ap), timer operations through the tmr module for scheduling tasks, GPIO control using functions like gpio.write and gpio.read for digital I/O, and file system access via the file module for interacting with the on-module SPIFFS (SPI Flash File System). The firmware's build process involves compiling the source code from the official repository, where users can select and include specific modules to create a customized tailored to application needs. This modular approach allows for the addition of custom modules through extensions, which are integrated during the compilation using the provided build scripts. Once compiled, the resulting image is flashed to using esptool, a Python-based utility for interacting with Espressif chips, ensuring compatibility with the hardware's flash layout. Memory management in NodeMCU is constrained by the limited resources of the target SoCs, with the providing approximately 96 KB of , of which roughly half (around 44-50 KB) is typically available for Lua scripts after accounting for the SDK, stack, and drivers like . The allocates space dynamically for variables and objects, monitored via the node.[heap](/page/Heap)() , which returns the current free size in bytes to help developers avoid out-of-memory conditions during . To optimize usage, features like the Lua Flash Store (LFS), introduced in July 2018, allow Lua code and constants to execute from , preserving for dynamic data. Adaptations for the shift the to Espressif's ESP-IDF , a full-featured RTOS that supports multitasking and advanced peripherals, enabling broader compatibility with the chip's dual-core architecture and additional hardware capabilities. This update incorporates (BLE) support through dedicated modules, configurable during the build process to include Bluetooth host-controller interface (HCI) components, allowing initialization and operation via APIs such as those in the bluetooth module for tasks like device scanning and GATT services. As of 2025, the latest stable release is version 3.0.0 (tagged as 3.0.0-release_20240225), available in variants aligned with the underlying SDKs: the Non-OS variant for ESP8266-focused, resource-constrained projects, and the ESP-IDF (RTOS) variant for ESP32 deployments requiring more complex, multi-threaded operations.

Programming and Tools

NodeMCU programming primarily revolves around Lua scripting on its custom firmware, with tools facilitating flashing, editing, uploading, and interactive development. The flashing process begins with erasing the existing flash memory using esptool.py, a Python-based utility from Espressif for communicating with the ESP8266 or ESP32 bootloader over serial. A typical command sequence involves connecting the board via USB, identifying the serial port (e.g., /dev/ttyUSB0 on Linux), and executing esptool.py --port <port> erase_flash to clear the chip, followed by esptool.py --port <port> --baud 115200 write_flash -fm dio 0x00000 <firmware.bin> to upload the NodeMCU firmware binary, where dio specifies the flash mode for most modules. This baud rate of 115200 ensures reliable transfer, though higher rates like 460800 can be used for faster flashing on compatible hardware. Once flashed, additional Lua files like init.lua for boot-time execution can be uploaded separately using serial tools. Several development environments support NodeMCU Lua programming. ESPlorer serves as a dedicated integrated development environment (IDE) for editing, syntax-highlighting, and uploading Lua scripts directly to the device via serial, including support for file management and interactive execution. The NodeMCU PyFlasher provides a graphical interface for firmware flashing, simplifying the esptool.py process without command-line interaction. For modern workflows, Visual Studio Code extensions such as NodeMCU-Tools enable Lua editing, linting, optimization, and one-click uploading over serial, integrating seamlessly with serial monitors for real-time feedback. The basic programming workflow starts with connecting the NodeMCU board to a computer via USB, which powers the device and exposes a serial interface; a terminal emulator set to 115200 baud 8N1 then accesses the Lua REPL, greeted by the >>> prompt for immediate script evaluation. Developers load and execute scripts using the built-in dofile("filename.lua") function to run file-based code, while asynchronous events—such as timer expirations via the tmr module or WiFi connection status changes—are managed through callback registrations, allowing non-blocking operation in resource-constrained environments. Core modules like gpio and wifi are referenced briefly in scripts for hardware interaction, but their internals are handled by the firmware. Debugging relies on the connection for output and error capture. The print() function outputs strings or values to the monitor, enabling of variables and execution flow at 115200 . For robust error handling, Lua's pcall() wraps potentially failing calls, returning success status and results or errors without crashing the interpreter, which is essential for production scripts on unstable networks.

Applications and Ecosystem

Common Use Cases

NodeMCU boards, particularly those based on the , are widely employed in projects to enable Wi-Fi-controlled relays for managing lights, fans, and other appliances. These setups often integrate with protocols to facilitate communication between devices and central smart home hubs, allowing and rules via mobile apps or voice assistants. In sensor networks, NodeMCU serves as a versatile node for collecting environmental , such as and readings from DHT11 s connected to its GPIO pins. The board processes this locally before transmitting it over to cloud platforms like ThingSpeak, enabling real-time visualization, alerting, and historical logging for applications in , weather monitoring, and indoor climate control. For wearables and , NodeMCU supports low-power GPS tracking implementations using modules interfaced via UART, where the board parses NMEA sentences to extract , , and timestamp information for location-based services like personal trackers or fleet monitoring prototypes. ESP32-based NodeMCU variants extend functionality to (BLE) applications, such as deploying beacons for indoor in warehouses or offices, where devices broadcast identifiers for proximity detection and inventory management. These boards also handle audio streaming over I2S interfaces, integrating microphones or speakers for voice-activated prototypes. Despite its capabilities, NodeMCU projects require attention to power management; the ESP8266 achieves ultra-low consumption of approximately 20 μA in mode by disabling the radio and CPU while retaining functionality for timed wake-ups. Developers often implement reconnection logic to ensure reliable operation in intermittent networks, using callbacks to monitor connection status and retry authentication as needed. The Arduino Core is an open-source project that integrates the microcontroller, including NodeMCU boards, into the IDE ecosystem, enabling developers to program in C++ using familiar Arduino libraries and functions while leveraging the ESP8266's capabilities. This core bridges the gap between NodeMCU's native Lua scripting and the broader Arduino community, allowing seamless porting of sketches to NodeMCU hardware for applications like sensor networks and prototypes. MicroPython provides an alternative firmware option for ESP8266 and ESP32-based devices such as NodeMCU, implementing a lightweight version of Python 3 that emphasizes syntactic simplicity and rapid prototyping compared to Lua-based approaches. Users can flash MicroPython onto NodeMCU boards to run Python scripts directly on the device, facilitating easier integration with Python ecosystems for tasks like data logging and web services, though standard builds require at least 1 MiB of flash memory, with full-featured versions (v1.13 and later) needing 2 MiB or more. Tasmota is an open-source firmware designed for and devices, including NodeMCU, that replaces proprietary smart home device software with customizable, locally controlled alternatives supporting integrations like and Google Home. It can be flashed onto NodeMCU via over-the-air updates or connection, offering features such as communication, rule-based automation, and web-based configuration for turning NodeMCU into a versatile controller. In smart home ecosystems, NodeMCU serves as a base for ESPHome devices within , where users compile and flash custom to create bespoke sensors and actuators that integrate natively via the ESPHome add-on. This setup allows NodeMCU to report from sensors like temperature or motion directly to dashboards, enabling automated home routines without dependencies. Community-driven repositories extend NodeMCU's development workflow, such as NodeMCU-docker, which provides a containerized environment for building custom binaries in the , simplifying compilation across platforms without local toolchain setup. Additionally, forks of Lua-RTOS adapt the for hardware like NodeMCU, incorporating preemptive multitasking and driver support to enhance performance in time-sensitive applications beyond standard NodeMCU .

References

  1. [1]
    NodeMcu -- An open-source firmware based on ESP8266 wifi-soc.
    An open-source firmware and development kit that helps you to prototype your IOT product within a few Lua script lines.
  2. [2]
    NodeMCU Documentation
    ### Summary of NodeMCU
  3. [3]
    Lua based interactive firmware for ESP8266, ESP8285 and ESP32
    NodeMCU is an open source Lua based firmware for the ESP8266 WiFi SOC from Espressif and uses an on-module flash-based SPIFFS file system.Missing: board | Show results with:board
  4. [4]
    Nodemcu devkit V1.0 - GitHub
    A development kit for NodeMCU firmware. It will make NodeMCU more easy. With a micro USB cable, you can connect NodeMCU devkit to your laptop and flash it ...
  5. [5]
    Lua Developer FAQ - NodeMCU Documentation
    ¶ The NodeMCU company was set up by Zeroday to develop and to market a set of Lua firmware-based development boards which employ the Espressif ESP8266 SoC. The ...
  6. [6]
    NodeMCU ESP8266 Pinout, Specifications, Features & Datasheet
    Apr 22, 2020 · The NodeMCU ESP8266 development board comes with the ESP-12E module containing the ESP8266 chip having Tensilica Xtensa 32-bit LX106 RISC microprocessor.
  7. [7]
    NodeMCU, the popular development board with ESP8266
    NodeMCU is a development board based on the ESP12E, which is probably the most popular module integrating the ESP8266 SoC.
  8. [8]
    A development kit for NodeMCU firmware - GitHub
    A development kit for NodeMCU firmware. It will make NodeMCU more easy. With a micro USB cable, you can connect NodeMCU devkit to your laptop and flash it ...
  9. [9]
    Getting Started with ESP8266 NodeMCU Development Board
    Aug 5, 2024 · The ESP8266 is a low-cost Wi-Fi chip for IoT and home automation. This guide covers how to get started, including choosing a board and ...
  10. [10]
    NodeMCU - osoyoo.com
    May 3, 2017 · Board Size, 48mm x 26mm. Weight, ~7g. Software, Wi-Fi Mode, Station/SoftAP/SoftAP+Station. Security, WPA/WPA2. Encryption, WEP/TKIP/AES.Missing: dimensions | Show results with:dimensions
  11. [11]
    ESP8266 ESP-12E CH340G WIFI Network Development Board
    Greatly speed up your IOT application developing process. Lowest cost WI-FI Less than $3 WI-FI MCU ESP8266 integrated and esay to prototyping development kit.Missing: dimensions | Show results with:dimensions
  12. [12]
    [NodeMcu] A LUA based firmware for ESP8266 (build 20141120) - Everything ESP8266
    - **Initial Post**: By zeroday, posted on Thu Nov 20, 2014.
  13. [13]
  14. [14]
    NodeMCU is both a Breadboard-Friendly ESP8266 Wi-Fi Board and ...
    Apr 18, 2015 · http://www.banggood.com/NodeMcu-Lua-ESP-12E-WIFI-Development-Board-p ... 2015/09/nodemcu-breadboard-aid.html. Reply. J0539h. 9 ...
  15. [15]
    ESP8266 - Wikipedia
    The chip was popularized in the English-speaking maker community in August 2014 via the ESP-01 module, made by a third-party manufacturer Ai-Thinker. This small ...
  16. [16]
    Compiling Your Own Programs For The ESP8266 - Hackaday
    Dec 8, 2014 · Another easyway to interact with the ESP8266 is to use the Lua firmware from https://github.com/funshine/nodemcu-firmware. The Lua interpreter ...
  17. [17]
    GitHub - funshine/nodemcu-firmware: lua based interactive firmware for mcu like esp8266
    ### Summary of https://github.com/funshine/nodemcu-firmware
  18. [18]
    Comparison of ESP8266 NodeMCU development boards - my2cents
    Sep 28, 2015 · If you compare the pin layout there's only a tiny difference to the V2 layout. LoLin decided to use one of the two reserve pins for USB power ...
  19. [19]
    History of Node MCU: Production of The ESP8266. Lications - Scribd
    Node MCU started on 13 Oct 2014, when Hong committed the first file of node mcu-firmware to Git Hub Two months later, the project expanded to include an ...
  20. [20]
    How we deal with the ESP8266 and ESP32 forks within this one ...
    Dec 9, 2016 · This fork can never be merged with either without destroying our ability to build ESP8266 configuration. I feel that this is a step that takes the NodeMCU ...
  21. [21]
    Installing ESP8266 Board in Arduino IDE (Windows, Mac OS X, Linux)
    This tutorial shows how to install the ESP8266 board in Arduino IDE whether you're using Windows, Mac OS X or Linux.
  22. [22]
    ESP32 Wi-Fi & Bluetooth SoC - Espressif Systems
    ESP32 adds priceless functionality and versatility to your applications with minimal Printed Circuit Board (PCB) requirements. Hybrid Wi-Fi & Bluetooth Chip.Missing: 2023 | Show results with:2023
  23. [23]
    Releases · nodemcu/nodemcu-firmware - GitHub
    Feb 25, 2024 · Instant dev environments · Issues. Plan and track work · Code Review. Manage code changes · Discussions. Collaborate outside of code · Code ...Missing: board | Show results with:board<|separator|>
  24. [24]
    ESP8266: NodeMCU Dev Kit V1.0 Review - Squix – TechBlog
    Jun 13, 2015 · I can wholeheartedly recommend the NodeMCU V1.0 for you, especially if you are just getting started with the whole ESP8266 thing. It is relatively cheap, easy ...Missing: Amica LOLIN
  25. [25]
    NodeMCU ESP8266 Specifications, Overview and Setting Up
    The NodeMCU (Node MicroController Unit) is an open-source software and hardware development environment built around an inexpensive System-on-a-Chip (SoC) ...<|control11|><|separator|>
  26. [26]
    NodeMCU Variants
    Nov 13, 2015 · However, there are some versions of the NodeMCU board which have had some modification done to implement “Dual-I/O” (“DIO”) SPI, freeing up ...
  27. [27]
    ESP32 vs ESP8266 - Pros and Cons - Maker Advisor
    The ESP32 is the ESP8266 successor. It adds an extra CPU core, faster Wi-Fi, more GPIOs, and supports Bluetooth 4.2 and Bluetooth low energy.
  28. [28]
    NodeMCU-32S — PlatformIO v6.1 documentation
    NodeMCU-32S uses ESP32 with 240MHz, 4MB flash, 320KB RAM. It lacks an on-board debug probe and is not ready for debugging.
  29. [29]
    ESP32-DevKitC - Espressif Systems
    ESP32-DevKitC is a low-footprint, entry-level development board with a rich peripheral set, optimized for easy prototyping and has all ESP32 pins exposed.
  30. [30]
    Introduction to ESP8266 and NodeMcu - blog
    Jan 18, 2015 · ... Supply at least 300mA at 3.3v. Then connect the CH_PD pin to VCC. This is enough to get the chip running. To flash a firmware, use a 3.3v ...
  31. [31]
    ESP8266 Pinout Reference: Which GPIO pins should you use?
    The ESP8266 comes with 33 GPIOs with multiple functions. This article is a simple and easy to follow reference guide for the ESP8266 NodeMCU GPIOs.ESP8266 NodeMCU Digital... · ESP8266 Deep Sleep · Home Automation Using...
  32. [32]
  33. [33]
    GPIO Maximum current Imax - ESP8266 Developer Zone
    Jan 17, 2015 · 1.12mA here refers to the source current and sink current is greater than 12mA. 2.12mA is for per pin and each pin is the same. 3. Drive capacity current of ...
  34. [34]
    ESP32 Pinout Reference: Which GPIO pins should you use?
    The ESP32 chip comes with 48 pins with multiple functions. Not all pins are exposed in all ESP32 development boards, and some pins cannot be used.ESP32 Analog Inputs · ESP32 I2C Communication · ESP32 SPI Communication
  35. [35]
    NodeMCU-32S Development Board Details, Pinout, Specs
    Below you can find the NodeMCU-32S pinout. This development board provides 40 digital IO pins, out of which 16 can be used as external interrupt pins, 16 as ...
  36. [36]
    NodeMCU Documentation
    ### Summary of NodeMCU Firmware Architecture and Build Process
  37. [37]
    Lua Flash Store (LFS) - NodeMCU Documentation
    If you only need to update the Lua components, then you can work over-the-air (OTA). For example see my HTTP_OTA. lua, which pulls a new LFS image from a ...
  38. [38]
    dev-esp32 - NodeMCU Documentation - Read the Docs
    NodeMCU is an open source Lua based firmware for the ESP32 and ESP8266 WiFi SOCs from Espressif. It uses an on-module flash-based SPIFFS file system.Building the firmware · Lua 5.3 Support · Bthci · JTAG debugging
  39. [39]
  40. [40]
  41. [41]
    Flashing the firmware - NodeMCU Documentation
    Below you'll find all necessary information to flash a NodeMCU firmware binary to ESP8266 or ESP8285. Note that this is a reference documentation and not a ...
  42. [42]
    Flashing Firmware - ESP8266 - — esptool latest documentation
    Compile and upload your firmware once with your preferred framework. The detailed esptool command will be displayed in the output right before the flashing ...
  43. [43]
  44. [44]
    4refr0nt/ESPlorer: Integrated Development Environment ... - GitHub
    The essential multiplatforms tools for any ESP8266 developer from luatool author's, including a LUA for NodeMCU and MicroPython. Also, all AT commands are ...
  45. [45]
  46. [46]
    NodeMCU-Tools - Visual Studio Marketplace
    Sep 3, 2025 · NodeMCU development tools for Visual Studio Code. Installation: Launch VS Code Quick Open ( Ctrl+P ), paste the following command, and press enter.
  47. [47]
    Getting started - NodeMCU Documentation - Read the Docs
    Our intention is to introduce you to programming in Lua on the ESP8266 ... The same Docker image you used to build the NodeMCU firmware can be used to compile Lua ...
  48. [48]
    Installing ESP32 in Arduino IDE (Windows, Mac OS X, Linux)
    In this tutorial we'll show you how to install the ESP32 board in Arduino IDE whether you're using Windows, Mac OS X or Linux.Missing: hybrid Lua
  49. [49]
    Smart Home Automation System Using ESP8266 NodeMCU
    Feb 9, 2024 · IoT-based smart home automation system lets homeowners control appliances conveniently from their smartphones and laptops.
  50. [50]
    ESP8266 core for Arduino - GitHub
    This project brings support for the ESP8266 chip to the Arduino environment. It lets you write sketches, using familiar Arduino functions and libraries, ...Missing: 2020 | Show results with:2020
  51. [51]
    MicroPython - Python for microcontrollers
    MicroPython is a lean and efficient implementation of the Python 3 programming language that includes a small subset of the Python standard libraryMicroPython downloads · Quick reference for the ESP8266 · Esp8266 · Unicorn
  52. [52]
    ESP8266 firmware - MicroPython - Python for microcontrollers
    The following are daily builds of the ESP8266 firmware. This will work on boards with at least 2MiB of flash. They have the latest features and bug fixes.
  53. [53]
    1. Getting started with MicroPython on the ESP8266
    This tutorial will guide you through setting up MicroPython, getting a prompt, using WebREPL, connecting to the network and communicating with the Internet.<|control11|><|separator|>
  54. [54]
    About - Tasmota
    Tasmota is an open source firmware for Espressif ESP8266, ESP32, ESP32-S or ESP32-C3 chipset based devices created and maintained by Theo Arends.
  55. [55]
    Download - Tasmota
    Download. Download binaries from: Official OTA Server:~ · Current release · Development branch · ESP32 Current release · ESP32 Development branch ...
  56. [56]
    Install Tasmota
    Install Tasmota · Connect the ESP device to your computer using USB or serial-to-USB adapter · Select the firmware variant suitable for your device · Hit "Install" ...
  57. [57]
    ESPHome - Smart Home Made Simple
    ESPHome is an open-source firmware framework that simplifies the process of creating custom firmware for popular WiFi-enabled microcontrollers.
  58. [58]
    ESPHome - Home Assistant
    Configuration · Browse to your Home Assistant instance. · Go to Settings > Devices & Services. · In the bottom right corner, select the Add Integration button.Missing: NodeMCU | Show results with:NodeMCU
  59. [59]
    marcelstoer/docker-nodemcu-build - GitHub
    Clone and edit the NodeMCU firmware locally on your platform. This image will take it from there and turn your code into a binary which you then can flash ...Docker Nodemcu Build And Lfs... · Usage · Build For Esp8266
  60. [60]
    whitecatboard/Lua-RTOS-ESP8266 - GitHub
    Lua RTOS for ESP8266. Contribute to whitecatboard/Lua-RTOS-ESP8266 development by creating an account on GitHub.