The ESP8266 is a system on a chip (SOC) Wi-Fi microchip for Internet of Things (IoT) applications produced by Espressif Systems.

Given its low cost, small size and adaptability with embedded devices, the ESP8266 is now used extensively across IoT devices. Although it’s now been succeeded by the newer generation ESP32 microcontroller chip, the ESP8266 is still a popular choice for IoT developers and manufacturers.

In this article, we’ll explain the main features of ESP8266 modules and development boards and their application within the world of IoT.

Set up a simulated IoT Video surveillance device on your PC in minutes.

Our full-stack demos give you access to the Nabto Platform so you can try it now. We specialize in secure, low-latency, P2P connectivity. Get the demo app to try it.

Get App Demo

What is the ESP8266?

The ESP8266 module enables microcontrollers to connect to 2.4 GHz Wi-Fi, using IEEE 802.11 bgn. It can be used with ESP-AT firmware to provide Wi-Fi connectivity to external host MCUs, or it can be used as a self-sufficient MCU by running an RTOS-based SDK. The module has a full TCP/IP stack and provides the ability for data processing, reads and controls of GPIOs.

ESP8266 Specifications

This is based on the ESP-12 module, which we discuss below.

ESP8266 Functions

ESP8266 has many applications when it comes to the IoT. Here are just some of the functions the chip is used for:

  • Networking: The module’s Wi-Fi antenna enables embedded devices to connect to routers and transmit data
  • Data Processing: Includes processing basic inputs from analog and digital sensors for far more complex calculations with an RTOS or Non-OS SDK
  • P2P Connectivity: Create direct communication between ESPs and other devices using IoT P2P connectivity
  • Web Server: Access pages written in HTML or development languages.

ESP8266 Applications

The ESP8266 modules are commonly found in the following IoT devices:

Chip versus Modules versus Development Boards

As discussed above, the ESP8266 is just the name of the chip. There are essentially three formats you can buy this in:

  • ESP8266 Chip: This is the basic chip manufactured by Espressif, which comes unshielded and needs to be soldered onto a module. This is unsuitable for most users, apart from perhaps volume device manufacturers that can factor this into the production process under the unit cost of a module.

  • ESP8266 Modules: These are the surface-mountable modules that contain the chip, which are ready to be mounted onto an MCU, produced by Espressif, Ai-Thinker and certain other manufacturers. They are usually shielded and pre-approved by the FCC for use. This means they’re a good option for device manufacturers looking to scale production.
  • ESP8266 Development Boards: These are the complete IoT MCU development boards that have the modules preinstalled. They’re used for developers and manufacturers to create prototypes during the design stage, before they start production. Development boards are produced by several different manufacturers and the specifications differ between models. Some core specifications to be aware of when assessing ESP8266 IoT development board options include:
    • GPIO pins
    • ADC pins
    • Wi-Fi antennas
    • LEDs
    • Shielding*
    • Flash Memory

*Many international markets require shielded Wi-Fi devices, as Wi-Fi produces considerable Radio Frequency Interference (RFI), and shielding minimizes this interference. This should, therefore, be a key consideration for all developers and embedded-device manufacturers.

Manufacturers of Modules and Boards

Some of the largest manufacturers of ESP8266 modules and development boards are:

  • Espressif

  • Ai-Thinker

  • WeMos

  • Adafruit

  • Olimex

ESP8266 Modules

  • Espressif Systems

The Espressif Systems esp8266 is available in the following modules:

ModelAntennaeDimensionsGPIO & ADC PinsFlashLEDsShielded
ESP-WROOM-02PCB trace18 × 20182 MiBNoYes
ESP-WROOM-02DPCB trace18 × 20182 MiBNoYes
ESP-WROOM-02UU.FL socket18 × 20182 MiBNoYes
ESP-WROOM-S2PCB trace16 × 23202 MiBNoYes

● Ai-Thinker

Current Ai-Thinker esp8266 modules are the following:

ModelAntennaeDimensionsGPIO & ADC PinsFlashLEDsShielded
ESP-01SPCB trace14.4 × 24.761 MiBYesNo
ESP-01MPCB trace18 × 18161 MiBNoYes
ESP-07SU.FL socket17 × 16144 MiBNoYes
ESP-08SNone17 × 16104 MiBNoYes
ESP-12FPCB trace24 × 16204 MiBYesYes
ESP-12SPCB trace24 × 16144 MiBYesYes

Older and discontinued models include: ESP-01, ESP-02, ESP-03, ESP-04, ESP-05, ESP-06, ESP-7, ESP-08, ESP-09, ESP-10, ESP-11, ESP-12, ESP-12E, and ESP-13 and ESP-14.

ESP8266 Development Boards/Dev Kits

● ESP8266 Opensource Community

ModelAntennaeFirmwareGPIO & ADC PinsUSBFlash
NodeMCUPCB traceEspressif Non-OS SDK, using Lua scripting language14USB to serial interface1 MiB

● WeMos

Current WeMos boards are the following:

ModelAntennaeFirmwareGPIO & ADC PinsUSBFlash
D1 R2PCB traceCompatible with MicroPython, Arduino, nodemcu12Micro-USB socket1 MiB
D1 miniPCB traceCompatible with MicroPython, Arduino, nodemcu12Micro-USB socket4 MiB
D1 mini LitePCB traceCompatible with MicroPython, Arduino, nodemcu12Micro-USB socket1 MiB
D1 mini ProCeramic and U.FL socketCompatible with MicroPython, Arduino, nodemcu12Micro-USB socket16 MiB

● Adafruit

The current Adafruit 8266 board is the following:

ModelAntennaeFirmwareGPIO & ADC PinsUSBFlash
Huzzah ESP8266 BreakoutPCB traceNodeMCU’s Lua interpreter or Arduino IDE14USB to serial interface1 MiB

● Olimex

The current Olimex 8266 boards are the following:

ModelAntennaeGPIO & ADC PinsUSBFlash
MOD-WIFI-ESP8266PCB trace2USB to serial interface2 MiB
MOD-WIFI-ESP8266-DEVPCB trace20USB to serial interface2 MiB

SDKs

There is now a wide range of software development kits (SDKs) available, enabling developers to program the chip directly without using a separate MCU.

Espressif provides two official SDKs for use with ESP8266, which are:

Aside from the Espressif options, there are plenty of commercial and open-source SDKs on the market, including:

Which is the best ESP8266 Module or Development Board for IoT?

As the above comparisons show, there are many options available with ESP8266 IoT boards and modules. To help you with your decision making, we’ve summarized some of the most popular below.

Ai-Thinker ESP-01

The ESP-01 is one of the biggest selling IoT Wi-Fi modules on the market. It’s widely used in smart home and networking projects.

The default AT firmware enables it to be used in combination with an Arduino. However, you can easily update the firmware with a USB-to-ESP-01 adaptor module.

A common complaint with this board is that the pin posts make it difficult to plug it directly into a breadboard, but this can be easily overcome by building or buying an adaptor module.

There are two versions available, one with 500kb of flash and the other with 1Mbit of flash.

Ai-Thinker ESP-05

This module was developed to provide Wi-Fi connectivity for MCUs such as Raspberry Pi and PIC and other Wi-Fi projects. It, therefore, does not have GPIOS.

It fits into a breadboard without any problems, but there are some complaints about being stuck with the factory set firmware unless you’re prepared to do some serious modifications.

Ai-Thinker ESP-12

This is a more fully featured module with 11 GPIO pins, an ADC, 4Mbits of flash, and 10-bit resolution. However, the module is not breadboard friendly, meaning you’ll need to use an adaptor.

There are two versions available, ESP-12F, which has 20 GPIOS and ESP-12S, which has 14.

Espressif NodeMCU module V1.0

This board has the ESP-12E module and comes with 4 Mbits of flash and features a row of pins on each side of the breadboard. The board comes with four communication interfaces: SPI, I2C, UART, and I2S, with 16 GPIO and one ADC. The RAM is 160KB, divided into 64KB for instruction and 96KB for data.

Adafruit Huzzah ESP8266 Breakout

This microcontroller operates at a logic level of 3.3V and is clocked at 80MHz. It comes programmed with the Lua Interpreter, which makes programming simple, with no boot loading required. Alternatively, you can use the Arduino IDE to program it.

There is an onboard CP2104 USB-to-serial converter, therefore you can simply plug it into your computer and upload your code. The board is also lightweight and small, so it’s useful for projects with space constraints.

WeMos D1 Mini

The WeMos D1 Mini was designed to be one of the smallest possible development boards for the ESP8266 module. It has a micro USB connection and compatibility with several firmware options.

Read Our Other Resources

We’ve published a range of IoT resources for our community, including: