Skip to content

NodeMCU

Leo Vidarte edited this page Mar 14, 2017 · 15 revisions

NodeMCU is an open source IoT platform based on the ESP‐12E module. The version 1.0 is the 5th design of NodeMCU devkit. This uses CP2102 as UART bridge, and can flash firmware automatically by using nodemcu-flasher. Also it has a voltage regulator to convert from 5v to 3.3v which is the required by the esp21e module.

Dimensions: 25 x 48 mm

The term "NodeMCU" by default refers to the firmware rather than the dev kits. The firmware uses the Lua scripting language.

NodeMCU pinout

Comparison Table

NodeMCU v1.0 Arduino MKR1000 Particle Photon
Microcontroller ESP-12E module, with Espressif ESP8266 32bits ARM Cortex M0+ 32bits ARM Cortex M3 32bits
Clock Speed 80/160MHz 48MHz 120MHz
Board Power Supply 5V 5V 5V
Circuit Operating Voltage 3.3V 3.3V 3.3V
Flash Memory 4MB 256KB 1MB
SRAM 64KB 32KB 64KB
EEPROM No No Emulated
Digital I/O Pins 10 8 18
PWM Pins 10 12 9
Analog Input Pins 1 (ADC 10 bit) 7 (ADC 8/10/12 bit) 8 (12 bit)
Analog Output Pins 1 (DAC 10 bit) 2 (12 bit)
Connectivity IEEE 802.11 b/g/n Wi-Fi IEEE 802.11 b/g/n Wi-Fi IEEE 802.11 b/g/n Wi-Fi
Antenna Type PCB PCB PBC and uFI
Supported Battery No Li-Po single cell, 3.7V, 700mAh minimum No
UART 1 (+ TX only on pin GPIO2) 1 1
SPI 2 1 2
I2C 1 1 1
LED builtin D0 / GPIO 16 GPIO 6 D7
Programming Languages C++ / Python / Lua / Javascript C++ C++
Flashing Locally / OTA Locally / OTA Over the Web IDE / OTA
Cost $4.30 $32 $19

ESP8266 vs ATMega328 (Arduino UNO, Nano, Pro Mini)

ESP8266 ATMega328
Manufacturer Espressif Atmel
Architecture 32-bit RISC 8-bit AVR RISC
Clock Speed 80 MHz 16 MHz
Maximum operating frequency 160 MHz 20 MHz
Flash Memory External (512Kb-4MB) Internal (32Kb)
Connectivity IEEE 802.11 b/g/n Wi-Fi No
Operating Voltage 3.3v 3.3v or 5v
Digital I/O Pins 10 22
PWM Output 10 6
Analog Pins 1 6