Introduction to NodeMCU (ESP8266) – IOT

Today we will be looking one of the popular Internet of Things(IOT) device ESP8266. This small module allows micro-controllers to connect to a Wi-Fi network and make simple TCP/IP connections using Hayes-style commands.

What the heck is NodeMCU?

NodeMCU An open-source firmware and development kit that helps you to prototype your IOT product within a few Lua script lines. After flashing this firmware user can code in LUA scripting language.

Simple ESP8266 can only be used to connect other micro-controllers like Arduino to internet with its inbuilt wifi chip. But with NodeMCU development kit this hardware module can use its GPIO pins to connect to other peripherals without help of any other micro-controller.

That means you can program NodeMCU to work with other devices using GPIO along with connected wifi.

This make NodeMCU ideal for use in Iot projects. These can be programmed and then connected with other hardware like relays, buttons etc via GPIO and also to wifi. Over wifi they can contact with some more powerful machines like raspberrypi using protocols like MQTT.

Using wifi these nodes can transfer states to main machine located on network or some sort of server. Server/Main machine can also issue commands to these nodes which they can perform as per their programming.

NodeMCU Hardware

NodeMcu Hardware

NodeMcu Hardware

  1. ESP8266 : It is main chip which with inbuilt wifi
  2. USB to UART convertor : This chip will convert usb data to UART data which main chip can understand
  3. Voltage regulators 
  4. Status LED : This LED is basically used to show current status like flashing/booting
  5. MicroUSB port : Connect board to Computer for programming and powering  the board.
  6. Reset/Flash buttons : Perform actions on board.
  7. GPIO pins : To connect board with other peripherals.

Thats all for now. I will be writing tutorial on how build firmware for this board and how to flash it. Also there will be some tutorials on programming. So till then keep exploring. \m/


Technology enthusiast. Loves to tinker with things. Always trying to create something wonderful using technology. Loves coding for Android, Raspberry pi, Arduino , Opencv and much more.