ESP8266

From Wikipedia, the free encyclopedia
ESP8266
ESP-01.jpg
ESP-01 module by Ai-Thinker
ManufacturerEspressif Systems
TypeMicrocontroller
CPU@ 80 MHz (default) or 160 MHz
Memory64 KiB instruction, 96 KiB data
Input16 GPIO pins
Power3.3 VDC
The ESP8266 is a low-cost Wi-Fi chip with full TCP/IP stack and MCU (microcontroller unit) capability produced by Shanghai-based Chinese manufacturer, Espressif Systems.[1]
The chip first came to the attention of western makersin August 2014 with the ESP-01 module, made by a third-party manufacturer, Ai-Thinker. This small module allows microcontrollers to connect to a Wi-Fi network and make simple TCP/IP connections using Hayes-style commands. However, at the time there was almost no English-language documentation on the chip and the commands it accepted.[2] The very low price and the fact that there were very few external components on the module which suggested that it could eventually be very inexpensive in volume, attracted many hackers to explore the module, chip, and the software on it, as well as to translate the Chinese documentation.[3]
The ESP8285 is an ESP8266 with 1 MiB of built-in flash, allowing for single-chip devices capable of connecting to Wi-Fi.[4]
The successor to these microcontroller chips is the ESP32.

Features[edit]

ESP-01 wireframe.
† Both the CPU and flash clock speeds can be doubled by overclocking on some devices. CPU can be run at 160 MHz and flash can be sped up from 40 MHz to 80 MHz.[citation needed] Success varies chip to chip.[citation needed]

SDKs[edit]

In late October 2014, Espressif Systems released a software development kit (SDK) that allowed the chip to be programmed, removing the need for a separate microcontroller.[6] Since then, there have been many official SDK releases from Espressif; Espressif maintains two versions of the SDK – one that is based on FreeRTOS and the other based on callbacks.[7]
An alternative to Espressif's official SDK is the open source ESP-Open-SDK[8] that is based on the GCCtoolchain. ESP8266 uses the Cadence Tensilica L106 microcontroller and the GCC toolchain is open-sourced and maintained by Max Filippov.[9] Another alternative is the "Unofficial Development Kit" by Mikhail Grigorev.[10][11]
Other SDKs (mostly open source) include:
  • NodeMCU – A Lua-based firmware.
  • Arduino – A C++ based firmware. This core enables the ESP8266 CPU and its Wi-Fi components to be programmed like any other Arduino device. The ESP8266 Arduino Core is available through GitHub.
  • MicroPython – A port of MicroPython (an implementation of Python for embedded devices) to the ESP8266 platform.
  • ESP8266 BASIC – An open source basic interpreter specifically tailored for the internet of things. Self hosting browser based development environment.
  • Zbasic for ESP8266 – A subset of Microsoft's widely used Visual Basic 6 which has been adapted as a control language for the ZX microcontroller family and the ESP8266.
  • Espruino – An actively maintained JavaScript SDK and firmware, closely emulating Node.js. Supports a few MCUs, including the ESP8266.
  • Mongoose OS – An open source Operating System for connected products. Supports ESP82666 and ESP32. Develop in C or JavaScript.[12]
  • ESP-Open-SDK – Free and open (as much as possible) integrated SDK for ESP8266/ESP8285 chips.
  • ESP-Open-RTOS – Open source FreeRTOS-based ESP8266 software framework.
  • Zerynth – IoT framework that allows programming ESP8266[13] and other microcontrollers using Python.

Espressif modules[edit]

This is the series of ESP8266-based modules made by Espressif:
NameActive pinsPitchForm factorLEDsAntennaShieldedDimensions (mm)Notes
ESP-WROOM-02[14]181.5 mm2×9 castellatedNoPCB traceYes18 × 20FCC ID 2AC7Z-ESPWROOM02.
ESP-WROOM-02D[15]181.5 mm2×9 castellatedNoPCB traceYes18 × 20FCC ID 2AC7Z-ESPWROOM02D. Revision of ESP-WROOM-02 compatible with both 150-mil and 208-mil flash memory chips.
ESP-WROOM-02U[15]181.5 mm2×9 castellatedNoU.FL socketYes18 × 20Differs from ESP-WROOM-02D in that includes an U.FL compatible antenna socket connector.
ESP-WROOM-S2[16]201.5 mm2×10 castellatedNoPCB traceYes16 × 23FCC ID 2AC7Z-ESPWROOMS2.
In the table above (and the two tables which follow), "Active pins" include the GPIO and ADC pins with which you can attach external devices to the ESP8266 MCU. The "Pitch" is the space between pins on the ESP8266 module, which is important to know if you are going to breadboard the device. The "Form factor" also describes the module packaging as "2 × 9 DIL", meaning two rows of 9 pins arranged "Dual In Line", like the pins of DIP ICs. Many ESP-xx modules include a small on-board LED which can be programmed to blink and thereby indicate activity. There are several antenna options for ESP-xx boards including a trace antenna, an on-board ceramic antenna, and an external connector which allows you to attach an external Wi-Fi antenna. Since Wi-Fi communications generates a lot of RFI (Radio Frequency Interference), governmental bodies like the FCC like shielded electronics to minimize interference with other devices. Some of the ESP-xx modules come housed within a metal box with an FCC seal of approval stamped on it. First and second world markets will likely demand FCC approval and shielded Wi-Fi devices.

Ai-Thinker modules[edit]

ESP-01 module
Ai-Thinker ESP8266 modules (ESP-12F, black color) soldered to breakout boards (white color)
These are the first series of modules made with the ESP8266 by the third-party manufacturer Ai-Thinker and remain the most widely available.[17] They are collectively referred to as "ESP-xx modules". To form a workable development system they require additional components, especially a serial TTL-to-USB adapter (sometimes called a USB-to-UART bridge) and an external 3.3 volt power supply. Novice ESP8266 developers are encouraged to consider larger ESP8266 Wi-Fi development boards like the NodeMCU which includes the USB-to-UART bridge and a Micro-USB connector coupled with a 3.3 volt power regulator already built into the board. When project development is complete, these components are not needed anymore and it can be considered using these cheaper ESP-xx modules as a lower power, smaller footprint option for production runs.
NameActive pinsPitchForm factorLEDsAntennaShieldedDimensions (mm)Notes
ESP-0160.1 in2×4 DILYesPCB traceNo14.3 × 24.8
ESP-01S60.1 in2×4 DILYesPCB traceNo14.4 × 24.7
ESP-01M161.6 mm2×9 edge connectorNoPCB traceYes18.0 × 18.0Uses ESP8285.
ESP-0260.1 in2×4 castellatedNoU.FL socketNo14.2 × 14.2
ESP-03102 mm2×7 castellatedNoCeramicNo17.3 × 12.1
ESP-04102 mm2×4 castellatedNoNoneNo14.7 × 12.1
ESP-0530.1 in1×5 SILNoU.FL socketNo14.2 × 14.2
ESP-0611various4×3 diceNoNoneYes14.2 × 14.7Not FCC approved.
ESP-07142 mm2×8 pinholeYesCeramic + U.FL socketYes20.0 × 16.0Not FCC approved.
ESP-07S142 mm2×8 pinholeNoU.FL socketYes17.0 × 16.0FCC and CE approved.
ESP-08102 mm2×7 castellatedNoNoneYes17.0 × 16.0Not FCC approved.
ESP-0910various4×3 diceNoNoneNo10.0 × 10.0
ESP-1032 mm1×5 castellatedNoNoneNo14.2 × 10.0
ESP-1161.27 mm1×8 pinholeNoCeramicNo17.3 × 12.1
ESP-12142 mm2×8 castellatedYesPCB traceYes24.0 × 16.0FCC and CE approved.[18]
ESP-12E202 mm2×8 castellatedYesPCB traceYes24.0 × 16.04 MiB flash.
ESP-12F202 mm2×8 castellatedYesPCB traceYes24.0 × 16.0FCC and CE approved. Improved antenna performance. 4 MiB flash.
ESP-12S142 mm2×8 castellatedYesPCB traceYes24.0 × 16.04 MiB flash. FCC approved.[19]
ESP-13161.5 mm2×9 castellatedNoPCB traceYesW18.0 × L20.0Marked as ″FCC″. Shielded module is placed sideways, as compared to the ESP-12 modules.
ESP-14222 mm2×8 castellated +6NoPCB traceYes24.3 × 16.2

Other boards[edit]

The popularity of many of these "other boards" over the earlier ESP-xx modules is the inclusion of an on-board USB-to-UART bridge (like the Silicon Labs' CP2102 or the WCH CH340G) and a Micro-USB connector coupled with a 3.3 volt regulator to provide both power to the board and connectivity to the host (software development) computer commonly referred to as the console. With earlier ESP-xx modules, these two items (the USB-to-Serial adaptor and a 3.3 volt regulator) had to be purchased separately and be wired into the ESP-xx circuit. Modern ESP8266 boards like the NodeMCU boards are a lot less painful and offer more GPIO pins to play with. Most of these "other boards" are based on the ESP-12E module, but new modules are being introduced seemingly every few months.
NameActive pinsPitchForm factorLEDsAntennaShieldedDimensions (mm)Notes
Bolt IoT140.1 in2×14 DILYesPCB traceYes30 × 40Comes with an on Board SD card and technologies like Lib-Discovery and Fail Safe Mode. Has its own cloud for IoT.
Olimex MOD-WIFI-ESP8266[20]20.1 inUEXT moduleYesPCB traceNo?Only RX/TX are connected to UEXT connector.
Olimex MOD-WIFI-ESP8266-DEV[21]200.1 in2×11 DIL + castellatedYesPCB traceNo33 × 23All available GPIO pins are connected, also has pads for soldering UEXT connector (with RX/TX and SDA/SCL signals).
NodeMCUDEVKIT140.1 in2×15 DILYesPCB traceYes49 × 24.5Uses the ESP-12 module; includes USB to serial interface.
AdafruitHuzzah ESP8266 breakout[22]140.1 in2×10 DILYesPCB traceYes25 × 38Uses the ESP-12 module.
SparkFunESP8266 Thing[23]WRL-13231120.1 in2×10 DILYesPCB trace + U.FL socketNo58 × 26FTDI serial header, Micro-USB socket for power, includes Li-ion battery charger.
KNEWRON TechnologiessmartWIFI[24]120.1 in2×20 DILYes 1 RGBPCB traceYes25.4 × 50.8CP2102 USB bridge, includes battery charger, micro-USB socket for power and battery charging, 1 RGB LED and USER / Reflash button.
WeMos[25]D1[26]120.1 inArduino UnoYesPCB traceYes53.4 × 68.6Uses the ESP-12F module and Micro-USB socket. Discontinued in favor of WeMos D1 R2.
WeMos[25]D1 R2[27]120.1 inArduino UnoYesPCB traceYes53.4 × 68.6Uses ESP-12F module and has Micro-USB socket.
WeMos[25]D1 mini[28]120.1 in2×8 DILYesPCB traceYes25.6 × 34.2Uses ESP-12S module and has Micro-USB socket.
WeMos[25]D1 mini Lite[29]120.1 in2×8 DILYesPCB traceYes25.6 × 34.2Based on the ESP8285, an ESP8266 with 1 MiB flash built-in; has Micro-USB socket.
WeMos[25]D1 mini Pro[30]120.1 in2×8 DILYesCeramic and U.FL socketYes25.6 × 34.2Uses ESP8266EX chip; has Micro-USB socket, U.FL antenna connector, and 16 MiB flash.
ESPertESPresso Lite[31]160.1 in2×8 DILYesPCB traceYes26.5 × 57.6Uses the ESP-WROOM-02 module. Produced in limited quantity as beta version.
ESPertESPresso Lite V2.0[32]240.1 in2×10 DILYesPCB traceYes28 × 61Improved design and feature to ESPresso Lite.
In-CircuitESP-ADC[33]180.1 in2×9 DILNoU.FL socketYes22.9 × 14.9Uses ESP8266EX chip.
Watterott ESP-WROOM02-Breakout[34]140.1 in2×10 DILYesPCB traceYes40.64 × 27.94Uses the Espressif ESP-WROOM-02 module.
Geek Wave Solution IOT WROOM-02 Dev. Board[35]200.1 in?YesPCB traceYes93.80 × 80.02Development board with Espressif ESP-WROOM-02 module and four relays.

See also[edit]

References[edit]

  1. Jump up^ "ESP8266 Overview". Espressif Systems. Retrieved 2017-10-02.
  2. Jump up^ Brian Benchoff (August 26, 2014). "New Chip Alert: The ESP8266 WiFi Module (It's $5)"Hackaday. Retrieved 2015-06-24.
  3. Jump up^ Brian Benchoff (September 6, 2014). "The Current State of ESP8266 Development"Hackaday. Retrieved 2015-06-24.
  4. Jump up^ "Espressif Announces ESP8285 Wi-Fi Chip for Wearable Devices". Espressif Systems. Mar 9, 2016. Retrieved 2016-07-10.
  5. Jump up^ "Espressif ESP8266 Developer Zone Discussion Forum: Does ESP8266 actually have hardware I2C?". Espressif Systems. 2014-10-27. Retrieved 2017-10-02.
  6. Jump up^ Brian Benchoff (October 25, 2014). "An SDK for the ESP8266 WiFi Chip"Hackaday. Retrieved 2015-06-24.
  7. Jump up^ "Official SDK release from Espressif for ESP8266". Espressif Systems. July 29, 2015. Retrieved 2015-08-08.
  8. Jump up^ Paul Sokolovsky. "esp-open-sdk: Free and open (as much as possible) integrated SDK for ESP8266/ESP8285 chips".
  9. Jump up^ Max Filippov (Feb 15, 2015). "ESP8266 GCC Toolchain". Retrieved 2015-08-08.
  10. Jump up^ Mikhail Grigorev. "Unofficial Development Kit for Espressif ESP8266 (GitHub Repository)".
  11. Jump up^ Mikhail Grigorev. "Project Unofficial Development Kit for Espressif ESP8266".
  12. Jump up^ "Mongoose OS Documentation". Cesanta.
  13. Jump up^ Luigi F. Cerfeda (June 15, 2017). "Python for ESP8266 in just a few clicks using Zerynth". Zerynth (Kinzica Ventures LLC).
  14. Jump up^ "Espressif ESP-WROOM-02". Espressif Systems. Retrieved 2015-07-29.
  15. Jump up to:a b "ESP-WROOM-02D/ESP-WROOM-02U Datasheet" (PDF). Espressif Systems. Retrieved 2017-11-25.
  16. Jump up^ "ESP-WROOM-S2 Datasheet" (PDF). Espressif Systems. Retrieved 2017-10-08.
  17. Jump up^ "ESP8266 module family". ESP8266 Community Wiki. Retrieved 2015-06-24.
  18. Jump up^ "2ADUIESP-12 by Shenzhen Anxinke technology co., LTD for Wi-Fi Module"FCC. December 30, 2014. Retrieved 2015-06-24.
  19. Jump up^ "FCC ID 2AHMR-ESP12S, Shenzhen Ai-Thinker Technology co., LTD WIFI MODULE -ESP12S"FCC. August 4, 2016. Retrieved 2017-07-17.
  20. Jump up^ "MOD-WIFI-ESP8266". Olimex. Retrieved 2015-06-25.
  21. Jump up^ "MOD-WIFI-ESP8266-DEV". Olimex. Retrieved 2015-06-25.
  22. Jump up^ "Adafruit HUZZAH ESP8266 Breakout"Adafruit Industries. Retrieved 2015-06-25.
  23. Jump up^ "SparkFun ESP8266 Thing"SparkFun. Retrieved 2015-06-27.
  24. Jump up^ "KNEWRON smartWIFI"KNEWRON. Retrieved 2016-03-04.
  25. Jump up to:a b c d e WeMos. "WEMOS"WEMOS.
  26. Jump up^ "WeMos D1"WeMos. Retrieved 2016-11-30.
  27. Jump up^ "WeMos D1 R2"WeMos. Retrieved 2016-01-05.
  28. Jump up^ "WeMos D1 mini"WeMos. Retrieved 2017-06-29.
  29. Jump up^ "WeMos D1 mini Lite"WeMos. Retrieved 2017-06-29.
  30. Jump up^ "WeMos D1 mini Pro"WeMos. Retrieved 2017-06-29.
  31. Jump up^ "Espert"Espert. Retrieved 2016-01-07.
  32. Jump up^ "ESPresso Lite V2.0". Espert Pte Ltd. Retrieved 2017-10-02.
  33. Jump up^ "ESP-ADC DIL18 development board"In-Circuit Wiki. Retrieved 2016-02-03.
  34. Jump up^ "Watterott ESP-WROOM02-Breakout". Watterott. Retrieved 2016-11-06.
  35. Jump up^ "Geek Wave Solution ESP8266-WROOM-02-IOT WiFi Development Board". Geek Wave Solution. Retrieved 2017-09-04.

External links[edit]