ESP8266

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Un module ESP8266 alimenté par une pile bouton.

L’ESP8266 est un circuit intégré à microcontrôleur avec connexion WiFi développé par le fabricant chinois Espressif.

En août 2014, les passionnés d’électronique commencèrent à s’intéresser à la version ESP-01 de ce circuit électronique produite par une entreprise tierce, AI-Thinker. Ce circuit intégré de taille réduite permet de connecter son propre microcontrôleur à un réseau WiFi et d’établir des connexions TCP/IP avec des commandes Hayes. Cependant, à cette époque, la documentation était disponible uniquement en chinois, mais ceci ne découragea pas les aficionados qui furent attirés par son prix modique. Ainsi de nombreuses personnes se mirent à explorer les possibilités de l’ESP8266 et commencèrent la traduction de la documentation.

À la fin octobre 2014, Espressif proposa un kit de développement logiciel (SDK) permettant de programmer le circuit sans recourir à l’utilisation d’un microcontrôleur additionnel. Depuis lors, Espressif a sorti quantité de nouvelles versions du SDK et le propose en deux variantes : une variante basée sur RTOS et une autre basée sur les fonctions de rappel (callbacks).

Programmation[modifier | modifier le code]

ESP8266 12-E
ESP8266 12-E avec chip Silabs CP2102 pour la liaison RS232 via le bus USB

L’ESP8266 peut se programmer de plusieurs façons :

  • Avec des scripts Lua, interprétés ou compilés, avec le firmware NodeMCU
  • En C, avec l’IDE Arduino[1]
  • En JavaScript, avec le firmware Espruino
  • En MicroPython, avec le firmware MicroPython [2]
  • En C, avec le SDK d’Espressif
  • En C, avec le SDK esp-open-sdk[3] basé sur la chaîne de compilation GCC

Caractéristiques[modifier | modifier le code]

L’ESP8266 est décliné en plusieurs variantes. Un exemple de caractéristiques est indiqué ci-dessous.

  • 32-bit RISC CPU: Tensilica Xtensa LX106, 80 MHz
  • 64 KiB of instruction RAM, 96 KiB of data RAM
  • External QSPI flash - 512 KiB to 4 MiB (up to 16MiB is supported)
  • IEEE 802.11 b/g/n Wi-Fi
  • 16 GPIO pins
  • SPI, I²C,
  • I²S interfaces with DMA (sharing pins with GPIO)
  • UART on dedicated pins, plus a transmit-only UART can be enabled on GPIO2
  • 1 10-bit ADC

References[modifier | modifier le code]

  1. « Arduino - Home », sur www.arduino.cc (consulté le 28 avril 2016)
  2. « Overview | Building and Running MicroPython on the ESP8266 | Adafruit Learning System », sur learn.adafruit.com (consulté le 29 avril 2016)
  3. https://github.com/pfalcon/esp-open-sdk