← Retour
Électronique

ESP8266 : panorama du SoC, des modules et des cartes de développement

Cédrix · 28/01/2022

Présentation

L'ESP8266 est un microcontrôleur économique intégrant nativement une interface Wi-Fi 2,4 GHz (IEEE 802.11 b/g/n) et une pile TCP/IP. Il est conçu et commercialisé par Espressif Systems, une société chinoise basée à Shanghai et présente à l'international (États-Unis, Inde, République tchèque, Brésil, Singapour).

Lancé fin 2014, l'ESP8266 a connu un succès très rapide grâce à un rapport prix / fonctionnalités sans précédent : pour quelques euros, il met à disposition un microcontrôleur 32 bits cadencé à 80 MHz et une connectivité Wi-Fi complète. Sa version la plus connue, l'ESP-01, est devenue la porte d'entrée standard vers l'IoT pour le grand public.

Le SoC a depuis été complété par la famille ESP32 (cœur Xtensa LX6/LX7 dual-core, Bluetooth en plus du Wi-Fi), puis par les ESP32-Cx / ESP32-Sx / ESP32-Hx, mais l'ESP8266 reste massivement utilisé pour les projets simples et peu gourmands.

Trois niveaux à ne pas confondre

Avant d'entrer dans les spécifications, une clarification utile sur le vocabulaire — fréquemment mélangé dans la documentation amateur :

Niveau Définition Exemples
SoC (System on Chip) Le circuit intégré nu, vendu par Espressif. ESP8266EX
Module Un petit PCB qui embarque le SoC, sa flash, son antenne et un brochage standardisé. ESP-01, ESP-12E, ESP-WROOM-02
Carte de développement Une carte plus large qui embarque un module + un USB-série + un régulateur + des boutons + des broches au pas standard. NodeMCU, WeMos D1 mini, Adafruit HUZZAH

L'ESP-01 est donc un module (vendu par AI-Thinker), pas un SoC ni une carte de développement à proprement parler.

Spécifications techniques du SoC ESP8266EX

Processeur

  • cœur Tensilica Xtensa LX106, RISC 32 bits ;
  • cadencé à 80 MHz par défaut, 160 MHz en mode overclock logiciel.

Mémoire

  • 32 Kio d'IRAM (instructions) ;
  • 32 Kio de cache d'instructions ;
  • 80 Kio de RAM utilisateur ;
  • 16 Kio de RAM système réservée à l'ETS ;
  • pas de ROM ni de flash interne : le code est chargé depuis une flash SPI externe (QSPI) pouvant atteindre 16 Mio, généralement comprise entre 512 Kio et 4 Mio sur les modules vendus.

Radio Wi-Fi

  • norme IEEE 802.11 b/g/n (2,4 GHz uniquement) ;
  • chiffrement WEP, WPA, WPA2 (mais pas WPA3) ;
  • modes station, point d'accès et mixte (STA+AP) ;
  • bloc RF intégré (TR switch, balun, LNA, PA, matching network) — le module n'a besoin que de son antenne.

Périphériques

  • 17 GPIO théoriques au niveau du SoC (mais beaucoup sont préemptées par la flash SPI ou non exposées sur les modules courants) ;
  • SPI matériel ;
  • I²C logiciel (bit-banging, pas de contrôleur dédié) ;
  • I²S avec DMA ;
  • UART matérielle complète sur des broches dédiées ; un second UART en émission seule peut être activé sur GPIO2 ;
  • un ADC 10 bits unique, par approximations successives, lisible sur la broche TOUT/ADC0.

Alimentation

  • tension d'alimentation 3,0 à 3,6 V (nominal 3,3 V) ;
  • pics de courant pouvant atteindre environ 300 mA lors des émissions Wi-Fi.

Modules à base d'ESP8266

Deux familles principales coexistent. AI-Thinker a inondé le marché avec la série « ESP-0x / ESP-1x », pendant qu'Espressif a publié sa propre gamme « ESP-WROOM » plus tardive.

Modules AI-Thinker

Logo AI-Thinker

AI-Thinker a produit une longue série de modules, qui se distinguent essentiellement par leur facteur de forme, leur antenne (PCB, céramique, IPEX), leur nombre de broches exposées et la taille de la flash soudée.

Les plus connus :

Module Particularités
ESP-01 Le plus compact, 8 broches, antenne PCB, 1 Mo de flash sur les versions noires. Le plus économique, mais GPIO très limités.
ESP-01S Version améliorée de l'ESP-01, généralement 1 Mo de flash et LED câblée différemment.
ESP-07 16 broches, antenne céramique + connecteur IPEX pour antenne externe, blindage RF.
ESP-12E / ESP-12F / ESP-12S Format SMD 22 broches, blindé, antenne PCB. Base de la quasi-totalité des cartes NodeMCU et WeMos.

Les autres références (ESP-02 à ESP-11, ESP-13, ESP-14) existent mais ont peu percé en pratique. La plupart sont aujourd'hui difficiles à trouver et n'ont pas d'intérêt particulier face aux ESP-12x.

Modules Espressif

Logo Espressif

Espressif a publié sa propre gamme « WROOM » certifiée FCC/CE, souvent privilégiée pour les produits commerciaux :

Module Antenne
ESP-WROOM-02 PCB
ESP-WROOM-02D PCB (version révisée)
ESP-WROOM-02U Connecteur U.FL pour antenne externe
ESP-WROOM-S2 Variante avec SDIO

Liste détaillée et historique des modules sur Wikipédia : https://en.wikipedia.org/wiki/ESP8266

Cartes de développement

Les cartes de développement embarquent un module ESP8266 et tout le nécessaire pour démarrer immédiatement : convertisseur USB-série, régulateur 3,3 V, boutons RESET et FLASH, broches au pas de 2,54 mm, parfois LED utilisateur.

NodeMCU

Brochage NodeMCU v3

La carte la plus populaire de la famille. Elle existe en plusieurs révisions :

  • v0.9 : module ESP-12, format « large » 47 mm de large ;
  • v1.0 (DEVKIT v1.0) : module ESP-12E, USB-série CP2102, format normalisé ;
  • v3 (« LoLin » et clones) : module ESP-12E ou ESP-12F, USB-série CH340. C'est la version la plus répandue, bien que la numérotation « v3 » soit purement commerciale (non officielle).

La carte expose la plupart des GPIO du module sous des noms D0 à D8 propres à NodeMCU, qui ne correspondent pas directement aux numéros GPIO de l'ESP8266. Une table de correspondance est indispensable :

Étiquette NodeMCU GPIO ESP8266
D0 GPIO16
D1 GPIO5
D2 GPIO4
D3 GPIO0
D4 GPIO2 (LED interne)
D5 GPIO14
D6 GPIO12
D7 GPIO13
D8 GPIO15

WeMos D1 mini

Format compact (34 × 25 mm), module ESP-12F, USB-série CH340. Compatible mécaniquement avec un large écosystème de shields empilables (relais, OLED, batterie, capteur DHT…). C'est aujourd'hui la carte la plus utilisée pour des projets domotiques.

Adafruit HUZZAH

Carte haut de gamme avec module ESP-12E, régulateur 500 mA, niveau logique compatible avec une logique 5 V via résistances de pull-up. Idéale pour prototyper de manière fiable, mais plus chère et nécessite un FTDI externe sur la version sans USB.

Espressif ESP-12E (module)

Le module ESP-12E n'est pas une carte de développement à proprement parler : c'est le module SMD soudé sur la majorité des NodeMCU et WeMos. Son brochage est cependant utile à connaître lorsqu'on veut concevoir sa propre carte autour de lui.

Brochage du module ESP-12E

DOIT ESP-12F

Carte de prototypage à base de module ESP-12F, comparable à une NodeMCU v3, parfois vendue sous le nom DOIT DevKit V1.

Pour aller plus loin

Commentaires

Aucun commentaire pour l'instant. Soyez le premier !

Laisser un commentaire
Un code de vérification sera envoyé à votre adresse email.