ESP8266

from Wikipedia, the free encyclopedia
Commercially available ESP8266 module with processor chip (left) and external flash memory (right) for the firmware. In the upper part of the picture the printed WLAN antenna

The ESP8266 is a low cost and executed low-power 32-bit - microcontroller of the Chinese company espressif and enables its open design building wireless-controlled actuators and sensors . The GNU Compiler Collection including toolchain are available as free development tools.

architecture

The 32-bit processor core type Xtensa LX106 from Tensilica works with a system clock of 80 MHz - 160 MHz, has 64 kB RAM as instruction memory and 96 kB RAM as data memory and an internal read-only memory (ROM) which contains an unchangeable bootloader . As a special feature and for cost reasons, the ESP8266 does not have an internal non-volatile and programmable flash memory for the application-specific firmware . The complete firmware is stored in an external, serial flash memory and is loaded into the internal RAM memory in blocks for execution and executed there. Among other things, an SPI interface and an integrated wireless local area network (WLAN according to IEEE 802.11 b / g / n) are available as peripherals .

The microcontroller is also available together with a minimum circuit made of oscillating crystal and flash memory in the form of various modules for direct use. Depending on the module, up to twelve I / O ports , an I²C interface, an I²S interface, an SPI interface, an asynchronous serial interface (UART) and a 10-bit analog-digital converter are brought out. All I / Os with 3.3  V operated.

programming

In addition to GCC and direct programming in the C programming language, different firmware versions are currently supported :

  • Lua -based interactive programming called NodeMCU .
  • Micropython ( Python- based interactive programming)
  • Arduino / C ++ based programming.
  • AT-Command for use as a serial-to-WLAN interface
  • ESP Easy for controlling sensors / actuators via WLAN
  • ESP Basic

NodeMCU, Micropython firmware variants support interactive programming on the ESP8266. Programs are stored in the external flash memory and the complicated memory management such as the necessary block-by-block reloading of external program data in the internal RAM memory is abstracted by the developer using appropriate software functions, which makes writing programs for the ESP8266 much easier.

As the successor to the ESP8266, espressif developed the ESP32 microcontroller with some improvements such as Bluetooth and a Hall sensor .

properties

ESP-01 wire model
  • Processor: L106 32-bit RISC microprocessor core , based on the Tensilica Xtensa Diamond Standard 106Micro with 80 MHz
  • Memory:
    • 32 KiB instruction memory
    • 32 KiB instruction memory cache
    • 80 KiB user data RAM
    • 16 KiB ETS system data RAM
  • External Quad-SPI flash memory: up to 16 MiB are supported (512 KiB to 4 MiB are already connected)
  • IEEE 802.11 b / g / n Wi-Fi
  • 802.11n up to 72.2 Mb / s
  • 16 GPIO PINs
  • SPI
  • I²C (only implemented via software)
  • I²S interfaces with DMA (PINs shared with GPIO)
  • UART on a dedicated PIN, additionally a pure send-only UART, can be activated on GPIO2
  • 10-bit ADC with successive approximation
  • RTC on GPIO16, with this the chip can be woken up from deep sleep via a bridge to RST

Pin assignment of the ESP-01

ESP-01 module pin assignment

The pins that were led to the outside of the normal ESP-01 module are very limited:

  1. VCC, voltage (+3.3 V to 3.6 V)
  2. GND, ground (0 V)
  3. RX, data pin receive X
  4. TX, data pin send X
  5. CH_PD, chip power-down, chip enable, active high
  6. RST, reset
  7. GPIO 0
  8. GPIO 2

Since the GPIO16 of the ESP-01 was not led to the outside, it initially does not support deep sleep. This can be done by attaching (soldering) a pinout directly to the chip.

Espressif modules

Espressif itself has u. a. the following ESP8266-based modules have been released:

Surname Pins Grid Form factor LEDs antenna Shielded Dimensions (mm) comment
ESP-WROOM-02 18 (of which 9 GPIO) 1.5 mm 2 × 9 toothed No PCB Yes 18 × 20 FCC ID 2AC7Z-ESPWROOM02.
ESP-WROOM-02D 18th 1.5 mm 2 × 9 toothed No PCB Yes 18 × 20 FCC ID 2AC7Z-ESPWROOM02D. Revised ESP-WROOM-02, compatible with 150-mil and 208-mil flash memory.
ESP-WROOM-02U 18th 1.5 mm 2 × 9 toothed No U.FL socket Yes 18 × 20 It differs from the ESP-WROOM-02D in that it has a U.FL socket.
ESP-WROOM-S2 20th 1.5 mm 2 × 10 toothed No PCB Yes 16 × 23 FCC ID 2AC7Z-ESPWROOMS2.

Ai-Thinker modules

ESP-01 module
Ai-Thinker ESP8266 modules (ESP-12F, black), which are soldered onto printed circuit boards (white).

The table below shows the first ESP8266 module series from the third-party manufacturer Ai-Thinker , which is also the most widely used.

The information on the memory sizes in the "Comments" column applies to all modules below. The designation is always "ESP-xx". To operate the modules, additional components are required, in particular a voltage source (3.3V - 3.6V) and a serial TTL-to-USB adapter (also called USB-to-UART bridge), which is used for programming (flashing) is needed. Project developers and beginners can also use a NodeMCU board for testing and trying out , which already contains a USB-to-UART bridge and a 5V to 3.3V level converter and can therefore be used more quickly and easily.

Surname Pins Grid Form factor LEDs antenna Shielded Dimensions (mm) Remarks
ESP-01 6th 0.1 in 2 × 4 DIL Yes PCB No 14.3 x 24.8 512 KiB version and blue PCB unbranded. 1 MiB Flash, AI-Cloud and black PCB from AI-Thinker.
ESP-01S 6th 0.1 in 2 × 4 DIL Yes PCB No 14.4 x 24.7 1 MiB Flash
ESP-01M 16 1.6 mm 2 × 9 circuit board connectors No PCB Yes 18.0 x 18.0 Uses the ESP8285 (1 MiB memory).
ESP-02 6th 0.1 in 2 × 4 toothed No U.FL socket No 14.2 x 14.2
ESP-03 10 2 mm 2 × 7 toothed No Ceramics No 17.3 x 12.1
ESP-04 10 2 mm 2 × 4 toothed No no No 14.7 x 12.1
ESP-05 3 0.1 in 1 × 5 SIL No U.FL socket No 14.2 x 14.2
ESP-06 11 various 4 × 3 dice No no Yes 14.2 x 14.7 Not approved by the FCC.
ESP-07 14th 2 mm 2 × 8 solder points Yes Ceramic + U.FL base Yes 20.0 x 16.0 Not approved by the FCC.
ESP-07S 14th 2 mm 2 × 8 solder points No U.FL socket Yes 17.0 x 16.0 Approved by the FCC and CE.
ESP-08 10 2 mm 2 × 7 toothed No no Yes 17.0 x 16.0 Not approved by the FCC.
ESP-09 10 various 4 × 3 dice No no No 10.0 x 10.0
ESP-10 3 2 mm 1 × 5 toothed No no No 14.2 x 10.0
ESP-11 6th 1.27 mm 1 × 8 solder points No Ceramics No 17.3 x 12.1
ESP-12 14th 2 mm 2 × 8 toothed Yes PCB Yes 24.0 x 16.0 Approved by the FCC and CE.
ESP-12E 20th 2 mm 2 × 8 toothed Yes PCB Yes 24.0 x 16.0 4 MiB flash.
ESP-12F 20th 2 mm 2 × 8 toothed Yes PCB Yes 24.0 x 16.0 Approved by the FCC and CE. Improved antenna performance.
ESP-12S 14th 2 mm 2 × 8 toothed Yes PCB Yes 24.0 x 16.0 Approved by the FCC.
ESP-13 16 1.5 mm 2 × 9 toothed No PCB Yes 18.0 x 20.0
ESP-14 22nd 2 mm 2 × 8 toothed +6 No PCB Yes 24.3 x 16.2

literature

  • Erik Bartmann: The ESP8266 practical book: With NodeMCU and ESPlorer. Elektor-Verlag, 2016, ISBN 978-3-89576-321-2 .
  • Neil Kolban: Kolban's Book on the ESP32 & ESP8266. Leanpub (English)

Web links

Commons : ESP8266  - Collection of Images, Videos and Audio Files

Individual evidence

  1. esp8266 GCC Toolchain. Retrieved May 24, 2018 .
  2. Paul Sokolovsky: Getting the most out of ESP8266 (English)
  3. How to Install the ESP8266 Board in Arduino IDE. Retrieved May 25, 2018 .
  4. ESP32 Overview | Espressif Systems. Retrieved July 25, 2017 .
  5. The CPU and flash memory speeds can be doubled for some modules by overclocking. The CPU can be operated at 160 MHz, the flash memory can be increased from 40 MHz to 80 MHz. Success depends on the particular chip and the cooling.
  6. Espressif ESP8266 Developer Zone Discussion Forum: Does ESP8266 actually have hardware I2C? Espressif Systems, User: ESP_Faye, January 20, 2016, accessed on October 16, 2018 .
  7. Espressif ESP-WROOM-02. Espressif Systems, accessed July 29, 2015 .
  8. a b ESP-WROOM-02D / ESP-WROOM-02U Datasheet. Espressif Systems, accessed November 25, 2017 .
  9. ESP-WROOM-S2 Datasheet. Espressif Systems, accessed October 8, 2017 .
  10. ESP8266 module family. ESP8266 Community Wiki, accessed October 16, 2018 .
  11. FCC ID 2ADUIESP-12 WIFI Module by Shenzhen Anxinke technology co., LTD. FCC , December 30, 2014, accessed June 24, 2015 .
  12. FCC ID 2AHMRESP12S WIFI MODULE by Shenzhen Ai-Thinker Technology co., LTD. FCC , August 4, 2016, accessed July 17, 2017 .