ESP8266 is a system on chip (SoC) comprising a built-in WiFi module, 32 bit micro-controller and related peripherals. A TCP/IP networking stack can be run by the microcontroller to take care intricacies related to WiFi, making this device capable of working as a standalone WiFi node. The fact that an ESP8266 chip complete with a breakout board can be purchased for as little as $3, it is ideal for Internet of Things focused prototyping and, later on, production.
What is ESP8266 used for
Internet of things is the talk of town in the IT sector these days. ESP8266’s cost effectiveness, small form factor and low energy requirements are some of the reasons it is considered a prime candidate for IoT node development platform.
Architecturally, ESP8266 has the following specs:
- Power Requirements: 3.3V, 170mA (max)
- Processor: Tensilica L106 32bit
- RAM: 32K
- GPIOs: 17
- ADC: 1 pin, 10 bit
- WiFi: 802.11 support b/g/n/d/e/i/k/r
Not bad for an IoT node !
ESP8266 is a small SoC chip (5mm x 5mm) in size which has to be hooked up to a bunch of small components and an antenna to be useful. As a result, it is available in a number of different modules fulfilling these requirements with some optional addons, each with its own pros and cons. I could get my hand on the following versions:
Easy to use, very good for beginners. Simply plug in the USB and use from one of the range of software provided to configure the device and program it. A firmware, which enables NodeMCU to interprets commands in LUA language, is loaded by default.
This is a more basic component which exposes Rx, Tx, 2 GPIO pins and power connections from the ESP8266 chip. A serial to USB connector is required to talk to this device. Moreover, flashing a firmware into this device requires some extra connections. This is a smaller device, aimed to be used in a more integrated design.
ESP8266 Firmware Development
The most fascinating and appealing aspect, for me atleast, regarding the ESP8266 chip is the community around it in general and the open source community in particular. The default firmware loaded into chip which responds to AT commands is available open source. A port of FreeRTOS is available for this target. Furthermore, other independent open source projects for ESP8266 firmware like Sming have sprung up and have started to mature now. Some of the links are:
This level of interest in firmware development in open source community is an indicator of the maturity, stability and ease of access and configuration offered by ESP8266 based devices, surpassing other similar platforms.
One of the best things floating around in this community is the book on ESP8266 written by Neil Kolban which is, obviously, available for free. Download your copy from the link below!