Introduction To Nodemcu
Introduction To Nodemcu
NODEMCU-ESP8266
What is NodeMCU?
NodeMCU( Node Micro controller unit) is an
open source IOT platform .
It includes firmware which runs on the ESP8266
WiFi SoC (system on chip) from Espressif
Systems .
Hardware which is based on the ESP-12 module .
The term NODEMCU by default refers to the
firmware rather than the development kits .
The firmware uses the LUA scripting language .
The ESP8266 is a low cost wifi microchip with
full TCP/IP(transmission control protocol /
internet protocol) stack
Advantages of NodeMCU over Arduino UNO:
• Beter Processor & Memory: NodeMCU comes with an 80MHz of
clock speed and 4MB of flashmemory.
• Built-in TCP/IP Stack-loT Ready: The NodeMCU contains a Wifi
connection and can connect to the internet through Wifl. It is best
suited for lot applications.
• Cheaper: NodeMCU is an ESP8266 chip-based microcontroller
development board, which is very cheap as compared to Arduino
UNO.
• Breadboard-friendly and compact: The NodeMCU can be easily
inserted into a breadboard and test various circuit designs. Whereas
Arduino UNO cannot be fit into the Breadboard.
FEATURES OF NODEMCU
• Open source
• Interactive
• Programmable
• Low cost
• Simple
• WIFI enabled
• Smart
PIN CONFIGURATION
• The NodeMCU_ESP8266 has 30 pins.
• Power pins:4
Vin: External Power Supply
3.3V:There are 3 pins. Regulated 3.3V can be supplied to this pin to power the
board
• Micro-USB: NodeMCU can be powered through the USB port
• GND: Ground pins:5
• ESP8266 has 2 onboard buttons along with an on-board LED which connects
with the D0 PIN.
• The two buttons are FLASH and RST.
• FLASH pin– It is to download new programs to the board
• RST pin – It is to reset the ESP8266 chip
• GPIO Pins
NodeMCU has 16 general purpose input-output pins on its board
• Analog Pin:A0
Used to measure analog voltage in the range of 0-3.3V
• Digital pins
There are the 9 digital pins ranging from D0-D8
The D0 pin can only be used to read or write data and can’t perform other
options.
• PWM pins:12
It also has 4 PWM channels which can be used to drive motors, the brightness of
the LED, etc.
• control pins:3
Enable pin (EN), the reset pin (RST) and the wake pin.
• SPI Pins
NodeMCU has four pins available for SPI communication.
SD1, CMD, SD0, CLK
• UART Pins(TXD0, RXD0, TXD2, RXD2)
NodeMCU has two UART interfaces, UART0 (RXD0 & TXD0) and
UART1 (RXD1 & TXD1).
UART1 is used to upload the firmware/program.
• I2C Pins
NodeMCU has I2C functionality support but due to the internal
functionality of these pins, you have to find which pin is I2C.
SPECIFICATIONS
• Microcontroller: Tensilica 32-bit RISC CPU Xtensa LX106
• Operating Voltage: 3.3V
• Input Voltage: 7-12V
• UARTs: 1
• SPIs: 1
• I2Cs: 1
• Flash Memory: 4 MB
• SRAM: 64 KB
• Clock Speed: 80 MHz
How to upload programs on to ESP8266 from Arduino IDE
• Firstly, you need to download the Arduino IDE. If you already have
installed then it is ok.
• Otherwise you can download the Arduino IDE from here.
• Now open the IDE and follow this path. File -> preferences ->
Additional board manager URL.
• Now paste the URL in the dialog box :
http://arduino.esp8266.com/stable/package_esp8266com_index.json
• Now follow this path. Tools -> Board -> Boards Manager
• Now in the search bar, type esp.
• There will be esp8266 listed in the boards below.
• After the installation is complete, open Tools -> Board-> Select the
NodeMCU 1.0
• Now your board is installed and selected. There are various settings
which can be changed right from the IDE now.
• You can now upload the code to NodeMCU right from the Arduino
IDE.