The ESP8266 is a low-cost Wi-Fi microchip, with built-in TCP/IP networking software, and microcontroller capability, produced by Espressif Systems. NodeMCU is a low-cost open source IoT platform.NodeMCU is an open source firmware for which open source prototyping board designs are available. The name "NodeMCU" combines "node" and "MCU" (micro-controller unit). The term "NodeMCU" strictly speaking refers to the firmware rather than the associated development kits. NodeMCU is formed by an ESP12E, which still has an ESP8266EX inside it. In a nutshell, an ESP8266 is an open hardware development board that can be used by tinkerers, hobbyists, and makers to design and build devices that interact with the real world.
This repository contains all the basic ESP8266 Projects one needs to know before working on end-to-end projects.
-
32-bit microprocessor operating at 80 or 160MHz.
-
320 KByte of RAM.
-
Operating voltage: 3.3V.
-
Input voltage: 7-12V.
-
Digital I/O pins: 16.
-
Analog input pin: 1.
-
2 UART channel
-
2 SPI channel.
-
1 I2C channel.
-
WiFi 802.11 b/g/n support (2.4 GHz), up to 72.2 Mbps.
-
PCB Antenna.
-
17 programmable GPIO pins.
-
10 bit ADC with upto 18 channels.
-
8 bit DAC.
-
4 PWM output interfaces.
-
Integrated Hall effect sensor.
-
WPA, WPA2 authentication and Privacy Infrastructure.
-
Wi-Fi Mode Station/SoftAP/SoftAP+Station.
-
3 sleep modes.
Specifications:
- Micro-USB port
- 3.3V regulated supply.
- Vin: External input power supply.
- EN, RST: Pin and button to reset the microcontroller.
- A0: Used to measure analog voltage in the range 0-3.3V
- GPIO1 to GPIO16: Used as input-output pins.
- SD1, CMD, SD0, CLK: Used for SPI communication.
- TXD0, RXD0, TXD2, RXD2: Used as UART interfaces. RXD1 & TXD1 are used to upload firmware on the board.
Documentation provided by Espressif for all ESP Series
Documentation provided by Espressif for ESP8266EX
Before starting the installation process, make sure you have the latest version of Arduino IDE.
Follow the steps below:
- In your Arduino IDE, go to
File>Preferences
.
- Enter the following URL into the "Additional Board Manager URLs" fields:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Then, click "OK".
Note: If you already have ESP8266 board URL, you can seperate the URLs with a comma.
- Open Boards Manager. Go to
Tools>Board>Boards Manager
.
- Search for ESP8266 and press install button for ESP8266 by ESP8266 Community
- Well done!. ESP8266 libraries should be installed in you Arduino IDE.
Follow the steps below:
-
Connect your ESP8266 board to your computer through micro-USB cable. Make sure the power LED turns on.
-
Start Arduino IDE and navigate to
Tools>Boards>/<Select your ESP8266 board>
- Go to
Tools>Port
and select appropriate Port to which you ESP8266 board is connected.
- Now let's upload the Blink Program to check if we are able to program our ESP8266 board. Open example sketch from
File>Examples>01.Basics
or run the below program.
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
Note: For more info, go to Basic LED Blink using ESP8266
- Basic LED Blink using ESP8266
- HTTP Authentication using ESP8266 ... and many more.