Introduction to NodeMCU ESP8266

by Mar 28, 2020NodeMCU

The ESP8266 is, the name of a microcontroller designed by Espressif Systems. It is a self-contained WiFi networking solution offering as a bridge from the existing microcontroller to WiFi and is also capable of running self-contained applications. For less than $3, it can monitor and control things from anywhere in the world – perfect for just about any IoT project.

Contents:

1. Pinout and description

Pin out

The NodeMCU_ESP8266 has 30 pins in total out of which there are 17 GPIO pins. GPIO stands for General Purpose Input Output. There are the 9 digital pins ranging from D0-D8 and there is only one analog pin A0, which is a 10 bit ADC. The D0 pin can only be used to read or write data and can’t perform other options. The ESP8266 chip is enabled when the EN pin is pulled HIGH. When pulled LOW the chip works at minimum power. The board has a 2.4 GHz antenna for a long-range of network and the CP2102 is the USB to TTL converter. The development board equips the ESP-12E module containing ESP8266 chip having Tensilica Xtensa® 32-bit LX106 RISC microprocessor which operates at 80 to 160 MHz adjustable clock frequency and supports RTOS.

There’s also 128 KB RAM and 4MB of Flash memory (for program and data storage) just enough to cope with the large strings that make up web pages, JSON/XML data, and everything we throw at IoT devices nowadays. The ESP8266 Integrates 802.11b/g/n HT40 Wi-Fi transceiver, so it can not only connect to a WiFi network and interact with the Internet, but it can also set up a network of its own, allowing other devices to connect directly to it. This makes the ESP8266 NodeMCU even more versatile.

2. Power Requirement

As the operating voltage range of ESP8266 is 3V to 3.6V, the board comes with an LDO (low dropout) voltage regulator to keep the voltage steady at 3.3V. It can reliably supply up to 600mA. It has three 3v3 pins along with 4 GND pins. The power supply is via the onboard MicroB USB connector. Alternatively, if you have a regulated 5V voltage source, the VIN pin is used to directly supply the ESP8266. Moreover, it requires 80mA Operating Current and 20 µA during Sleep Mode.

3. Various Peripherals and I/O

The ESP8266 supports UART, I2C, SPI communication protocols. It also has 4 PWM channels which can be used to drive motors, the brightness of the LED, etc. Moreover, there are 2 channels of the UART protocol. The ADC (A0) can be used to control any analog device. The CMD is the Chip select pin used in the SPI protocol.

4. On-Board buttons and LED

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
The LED On-board of ESP8266

5. Development Platforms

The prominent platforms include the Arduino IDE and the ESPlorer IDE. Other development platforms that can be equipped to program the ESP8266 are the Espruino – JavaScript SDK and firmware closely emulating Node.js, or  Mongoose OS – An operating system for IoT devices.

6. Applications of ESP8266

The NodeMCU_ESP8266 is basically a WIFI module integrated with a Microcontroller, which makes it a very useful device in the field of IoT. It’s 17 GPIO pins are the prime example of this. The main use of ESP8266 is in home automation which is so much trending these days. This is due to its low power consumption in Sleep mode. Apart from it, some other examples where the ESP8266 can be used are:

  • Making a web server using ESP8266
  • Controlling DHT11 using the NodeMCU
  • ESP8266 weather station-using BMP280
  • OTA programming
  • ESP8266 NTP server for fetching time

Creating a multiplication Skill in Alexa using python

Written By Anmol Punetha

Hey, I am Anmol. I am a tech blogger and an electronics engineering student at the same time. As you're reading my blog, you are getting a generous amount of information in simpler words. Hope it's of use. Thank you for visiting. Keep reading!

RELATED POSTS

Coding  MicroPython using NodeMCU ESP8266

Coding MicroPython using NodeMCU ESP8266

Before diving into the NodeMCU with MicroPython we should know some key concepts of embedded programming such as flashing , firmware etc. Development platforms for NodeMCU_ESP8266: ESPlorerLuaIDEArduino IDE etc Programming languages for NodeMCU_ESP8266:...

Introduction to MicroPython and ESP8266

Introduction to MicroPython and ESP8266

For ages, C and C++ have ruled over the embedded system industry. Fast prototyping is an important aspect of the industry today. In fact MicroPython is the best suited for fast prototyping. Students and engineers are becoming very familiar with the Python programming...

Using NodeMCU ESP8266 with Arduino IDE

Using NodeMCU ESP8266 with Arduino IDE

The NodeMCU_ESP8266 can be used in various development platforms like the ESPlorer, LuaIDE, Arduino IDE etc. In this tutorial you will learn how to use it with the Arduino IDE. First of all, you need to download the Arduino software. Click here to download it. You can...

VIDEOS – FOLLOW US ON YOUTUBE

EXPLORE OUR IOT PROJECTS

IoT Smart Gardening System – ESP8266, MQTT, Adafruit IO

Gardening is always a very calming pastime. However, our gardens' plants may not always receive the care they require due to our active lifestyles. What if we could remotely keep an eye on their health and provide them with the attention they require? In this article,...

How to Simulate IoT projects using Cisco Packet Tracer

In this tutorial, let's learn how to simulate the IoT project using the Cisco packet tracer. As an example, we shall build a simple Home Automation project to control and monitor devices. Introduction Firstly, let's quickly look at the overview of the software. Packet...

All you need to know about integrating NodeMCU with Ubidots over MQTT

In this tutorial, let's discuss Integrating NodeMCU and Ubidots IoT platform. As an illustration, we shall interface the DHT11 sensor to monitor temperature and Humidity. Additionally, an led bulb is controlled using the dashboard. Besides, the implementation will be...

All you need to know about integrating NodeMCU with Ubidots over Https

In this tutorial, let's discuss Integrating NodeMCU and Ubidots IoT platform. As an illustration, we shall interface the DHT11 sensor to monitor temperature and Humidity. Additionally, an led bulb is controlled using the dashboard. Besides, the implementation will be...

How to design a Wireless Blind Stick using nRF24L01 Module?

Introduction Let's learn to design a low-cost wireless blind stick using the nRF24L01 transceiver module. So the complete project is divided into the transmitter part and receiver part. Thus, the Transmitter part consists of an Arduino Nano microcontroller, ultrasonic...

Sending Temperature data to ThingSpeak Cloud and Visualize

In this article, we are going to learn “How to send temperature data to ThingSpeak Cloud?”. We can then visualize the temperature data uploaded to ThingSpeak Cloud anywhere in the world. But "What is ThingSpeak?” ThingSpeak is an open-source IoT platform that allows...

Amaze your friend with latest tricks of Raspberry Pi and Firebase

Introduction to our Raspberry Pi and Firebase trick Let me introduce you to the latest trick of Raspberry Pi and Firebase we'll be using to fool them. It begins with a small circuit to connect a temperature sensor and an Infrared sensor with Raspberry Pi. The circuit...

How to implement Machine Learning on IoT based Data?

Introduction The industrial scope for the convergence of the Internet of Things(IoT) and Machine learning(ML) is wide and informative. IoT renders an enormous amount of data from various sensors. On the other hand, ML opens up insight hidden in the acquired data....

Smart Display Board based on IoT and Google Firebase

Introduction In this tutorial, we are going to build a Smart Display Board based on IoT and Google Firebase by using NodeMCU8266 (or you can even use NodeMCU32) and LCD. Generally, in shops, hotels, offices, railway stations, notice/ display boards are used. They are...

Smart Gardening System – GO GREEN Project

Automation of farm activities can transform agricultural domain from being manual into a dynamic field to yield higher production with less human intervention. The project Green is developed to manage farms using modern information and communication technologies....