ESP8266
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
- 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
- Integrated T / R switch , balun , LNA , power amplifier and power adjustment
- WEP or WPA / WPA2 encryption, as well as open networks
- 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
The pins that were led to the outside of the normal ESP-01 module are very limited:
- VCC, voltage (+3.3 V to 3.6 V)
- GND, ground (0 V)
- RX, data pin receive X
- TX, data pin send X
- CH_PD, chip power-down, chip enable, active high
- RST, reset
- GPIO 0
- 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
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
- How to ESP8266 Information ( Memento from December 14, 2017 in the Internet Archive )
- Data sheets, SDKs and examples (English)
- NodeMCU & ESP tutorial with Arduino IDE (German)
- ESP8266 and ESP8285 Modules Instructions
Individual evidence
- ↑ esp8266 GCC Toolchain. Retrieved May 24, 2018 .
- ↑ Paul Sokolovsky: Getting the most out of ESP8266 (English)
- ↑ How to Install the ESP8266 Board in Arduino IDE. Retrieved May 25, 2018 .
- ↑ ESP32 Overview | Espressif Systems. Retrieved July 25, 2017 .
- ↑ 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.
- ↑ 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 .
- ↑ Espressif ESP-WROOM-02. Espressif Systems, accessed July 29, 2015 .
- ↑ a b ESP-WROOM-02D / ESP-WROOM-02U Datasheet. Espressif Systems, accessed November 25, 2017 .
- ↑ ESP-WROOM-S2 Datasheet. Espressif Systems, accessed October 8, 2017 .
- ↑ ESP8266 module family. ESP8266 Community Wiki, accessed October 16, 2018 .
- ↑ FCC ID 2ADUIESP-12 WIFI Module by Shenzhen Anxinke technology co., LTD. FCC , December 30, 2014, accessed June 24, 2015 .
- ↑ FCC ID 2AHMRESP12S WIFI MODULE by Shenzhen Ai-Thinker Technology co., LTD. FCC , August 4, 2016, accessed July 17, 2017 .