ESP8266 Characteristics, Structure, Application Fields and Other Details

24 January 2024


Ⅰ. What is ESP8266?

Ⅱ. Characteristics of ESP8266 module

Ⅲ. Hardware interface of ESP8266

Ⅳ. Development method of ESP8266

Ⅴ. Structure of ESP8266

Ⅵ. What are the working modes of ESP8266?

Ⅶ. What are the application fields of ESP8266?



ESP8266 is a WIFI chip with integrated MCU launched by Espressif Systems in 2015. It was developed by ESPRESSIF SYSTEMS company and can realize the function of communicating with the network. ESP8266 is widely used in the Internet of Things. It can be connected to a microcontroller (such as Arduino) through a serial communication interface, thereby realizing a variety of application scenarios such as smart lights, smart vehicles, and smart homes. In this article, we will introduce information about its characteristics, structure and applications. So let’s get started!



Ⅰ. What is ESP8266?


662dda15a60a816ef5d23029aab0cb15.png


ESP8266 is a powerful WIFI module. It integrates an ultra-low power consumption 32-bit micro MCU (single chip microcomputer), the main frequency supports 80MHZ and 160MHz, and can even run RTOS. ESP8266 can create functions in the main program of Arduino IDE for writing, and transmit the data of the detection module connected to the Arduino development board to the server through ESP8266. It can also be compiled directly as a development board through Arduino IDE.


The commonly used ESP8266WIFI module is developed by the domestic Anxinke company. The ESP8266 WIFI module developed by Essence includes dozens of models, divided into three series: ESP-01, ESP-07, and ESP-12. Each series is subdivided by different suffixes. The main chips of these modules are basically Espressif's ESP8266. The main differences between different models are the number of IO ports, module size, and Flash capacity. The Flash capacity has various specifications such as 8Mbit and 32Mbit.



Ⅱ. Characteristics of ESP8266 module


The ESP8266 module has the following features:


• Stable performance: It has a wide operating temperature range, maintains stable performance, and can adapt to various operating environments.


• Network protocol support: ESP8266 supports TCP/IP protocol stack and can implement common network protocols such as HTTP and MQTT. This enables it to communicate and exchange data with cloud service platforms, servers and other devices.


• Power supply and size: The ESP8266 module typically uses 3.3V power supply and has a smaller size and SMT package, making it suitable for integration into a variety of different types of electronic devices.


• Low power consumption: ESP8266 is designed for mobile devices, wearable electronics and IoT applications, achieving ultra-low power consumption through a number of proprietary technologies. Its power-saving mode is suitable for various low-power application scenarios.


• GPIO pins: The module usually has multiple GPIO pins for connecting external devices and sensors. These pins can be configured as inputs or outputs and can be used to control external circuits, read sensor data, and more.


• External memory support: The module typically supports external flash memory (Flash) for storing application, firmware, and configuration data. This allows the module to have large storage capacity to support complex applications and data processing.


• Software ecosystem: Due to its wide range of applications and developer community support, ESP8266 has a rich software ecosystem. Developers can leverage a variety of open source libraries, frameworks, and sample code to quickly develop applications, and get support and solutions from the community.


• Highly integrated: SP8266 integrates antenna switches, 32-bit Tensilica processor, standard digital peripheral interface, radio frequency balun, low noise amplifier, power amplifier, filter and power management module, etc., and requires less peripheral circuits, thereby reducing PCB space.



Ⅲ. Hardware interface of ESP8266


0e89d260c244bc77cc0742aba5ef591b.png

 

• PWM interface: The GPIO port of ESP8266 supports PWM function, which can be used to control the brightness and speed of peripherals such as motors and lights.


• ADC interface: ESP8266 integrates an ADC to convert analog signals into digital signals. The ADC interface can be connected to analog devices such as sensors, reading analog values and converting them into digital data.


• GPIO ports: ESP8266 has multiple GPIO ports for interacting with other peripheral devices. The GPIO port supports digital input and output and PWM functions, and can be programmed to control various peripherals, such as LED lights, relays, switches, etc.

 

• I2C interface: The I2C interface is a serial communication interface that can connect multiple devices and uses two wires (SDA and SCL) to achieve data transmission. ESP8266 can communicate with other I2C devices, such as sensors, displays, etc., through the I2C interface.

 

• SDIO interface: The SDIO interface is a high-speed serial data interface commonly used for reading and writing operations on SD cards and MMC cards. ESP8266 can be connected to an SD card or MMC card through the SDIO interface to store and read data.


• UART interface: The UART interface is the main interface for serial communication between ESP8266 and other devices. It can be connected to other devices through the RX and TX pins. Through the UART interface, it can realize data transmission, reception and control with sensors, computers, other microcontrollers and other devices.


• SPI interface: SPI interface is also a serial communication interface. It can connect multiple devices and use four wires (MISO, MOSI, SCK and SS) for data transmission. ESP8266 can communicate with other SPI devices through the SPI interface, such as Flash memory, LCD display, etc.



Ⅳ. Development method of ESP8266


The ESP8266 series generally has two development methods, namely AT command development and SDK development.


1. AT command: The manufacturer has pre-burned the firmware on the ESP8266 chip before leaving the factory, and encapsulated the WiFi protocol stack to realize the transparent transmission function internally. Users only need to use a USB to TTL module or the serial port of a microcontroller to achieve communication with the WiFi module. By sending AT commands, users can control the WiFi module.


2. SDK development: Since ESP8266 itself is a programmable chip, it can be regarded as a microcontroller with wireless communication functions. Users need to write the corresponding program in a special IDE and write the program into the chip by burning firmware. Therefore, to implement WiFi communication, we need to customize the WiFi protocol stack. This requires users to have a high level of relevant knowledge.



Ⅴ. Structure of ESP8266


2efea907f0bb48dbfda0839743c181cb.png


As can be seen from the picture, the ESP8266 chip integrates a CPU and is a 32-bit processor. It acts as both a WiFi protocol processor and an application processor. The main frequency of this processor supports two frequencies: 80MHz and 160MHz. Developers can write applications and download them to the chip. The processor is capable of running these applications written by developers. These applications are programmed to the SPI Flash external to the chip through the UART0 interface through the officially provided ESP FLASH DOWNLOAD TOOL tool. It is worth noting that the flash memory is not integrated inside the chip, so an external SPI Flash is required. Currently, it supports four sizes of Flash memory: 512KB, 1024KB, 2048KB and 4096KB.



Ⅵ. What are the working modes of ESP8266?


This module has three working modes, namely AP mode, STA mode and STA+AP mode.


1. AP mode: The ESP8266 module serves as a hotspot, and the device is directly connected to the module to achieve wireless control over the LAN.

2. STA mode: The ESP8266 module is connected to the Internet through a router, allowing a mobile phone or computer to remotely control the device through the Internet.

3. STA+AP mode: This is a coexistence mode that can achieve seamless switching through Internet control, thus providing a more convenient operating experience.



Ⅶ. What are the application fields of ESP8266?


• Industrial automation: The module can be used to monitor and control various devices and processes to realize remote monitoring and automation control.


• Wireless sensor networks: The module can be used to establish wireless sensor networks using lower power consumption and a smaller code base to monitor environmental parameters such as temperature, humidity, light, etc. and transmit the data to the cloud for analysis and storage.


• Remote monitoring and control system: By integrating the ESP8266 into the device, we can realize remote monitoring and control of the device. No matter where we are, we can access and control these devices at any time as long as we have the proper network connection and equipment.


• Smart home: The ESP8266 can be used to control a variety of devices in the home, such as security systems, lighting systems and temperature control systems. It is able to connect to the home network via Wi-Fi for remote monitoring and control.


• IoT devices and sensors: The ESP8266 can be integrated into a variety of IoT devices and sensors, enabling them to connect to the Internet via Wi-Fi. This includes areas such as smart homes, home automation, and smart cities.

 

• Education and academic research: Due to its ease of use and powerful features, the ESP8266 has been widely used in education and academic research, becoming an important learning tool and practice platform in the field of IoT and embedded system development. In major universities and academic institutions, ESP8266 is widely used in teaching and research programs to help students and researchers learn and master IoT and embedded system development skills.




Frequently Asked Questions


1. What is ESP8266 used for?


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.


2. Is ESP8266 a Arduino?


ESP32 and ESP8266 boards are third-party boards. Arduino Cloud supports the both variations but cannot guarantee that certain boards based on these SoCs work. A list of tested and officially supported development boards can be found at here.


3. Can ESP32 replace ESP8266?


The older Gateways have the ESP8266 chip inside, however it's possible to update your ESP8266 Gateway to the powerful ESP32. If you don't want to upgrade your Gateway with EMS-ESP32, the 'old' firmware will still work as it is of course.


4. Why is ESP8266 so popular?


Yes, it is cheap. Like what this article mentions, $5 ESP8266 is even cheaper than the sensors-launched-out-of-a-cannon. It means the sensors cannons used are usually made with low cost approaches because it will be useless after cannons launched. Even though, ESP8266 is still a lot cheaper than the sensor.