# Panorama des familles de SoC Espressif ## Introduction Espressif Systems produit plusieurs familles de **System on Chip (SoC)** dédiés à l'IoT, toutes orientées vers la connectivité sans fil et le faible coût. Les deux grandes lignées sont l'**ESP8266** (Wi-Fi seul) et l'**ESP32** (Wi-Fi + Bluetooth), cette dernière s'étant elle-même ramifiée en plusieurs sous-familles (S, C, H, P). Le tableau de synthèse ci-dessous donne un aperçu rapide ; chaque famille est ensuite détaillée. | Famille | Année | Cœur | Wi-Fi | Bluetooth | Particularité | |---|---|---|---|---|---| | **ESP8266** | 2014 | Tensilica L106 32 bits, 1 cœur, 80 MHz | 802.11 b/g/n | non | Premier SoC Wi-Fi grand public bon marché | | **ESP32** | 2016 | Tensilica LX6 32 bits, 1 ou 2 cœurs, 240 MHz | 802.11 b/g/n | BT 4.2 + BLE | Polyvalent, cœur double | | **ESP32-S2** | 2020 | Tensilica LX7, 1 cœur | 802.11 b/g/n | non | USB OTG natif, faible consommation | | **ESP32-S3** | 2021 | Tensilica LX7, 2 cœurs, 240 MHz | 802.11 b/g/n | BT 5.0 LE | Accélérateur d'instructions vectorielles pour l'IA | | **ESP32-C3** | 2021 | RISC-V 32 bits, 1 cœur, 160 MHz | 802.11 b/g/n | BT 5.0 LE | Premier ESP en RISC-V | | **ESP32-C6** | 2023 | RISC-V, 2 cœurs (HP + LP) | Wi-Fi 6 (802.11ax), Thread, Zigbee | BT 5.0 LE | Multi-protocoles | | **ESP32-H2** | 2023 | RISC-V, 1 cœur | non | BT 5.0 LE, Thread, Zigbee | Sans Wi-Fi, dédié 802.15.4 | | **ESP32-P4** | 2024 | RISC-V, 2 cœurs HP + 1 LP, 400 MHz | non (radio externe) | non | Application processor haute performance | ## ESP8266 : le pionnier ![ESP8266](20220127-233808.png) L'**ESP8266** (sortie en **2014**) est le SoC qui a démocratisé l'IoT Wi-Fi grand public. Pour quelques euros, il offre un cœur **Tensilica Xtensa L106 32 bits** à 80 MHz, une **radio Wi-Fi 2,4 GHz** complète (802.11 b/g/n) et une pile TCP/IP, le tout dans un boîtier QFN32 de 5 × 5 mm. Caractéristiques marquantes : - un seul cœur, 80 ou 160 MHz ; - pas de Bluetooth, pas de BLE ; - pas de flash interne : code chargé depuis une flash SPI externe (généralement 512 Kio à 4 Mio) ; - 80 Kio de RAM utilisateur ; - 17 GPIO théoriques (mais peu exposées sur les petits modules comme l'ESP-01). > **Correction d'une idée reçue fréquente** : l'ESP8266 **ne dispose pas de Bluetooth**, et l'**ESP32 n'est pas un membre de la famille ESP8266** mais un SoC distinct, sorti plus tard. Le Bluetooth n'est apparu chez Espressif qu'avec l'ESP32 en 2016. ### Modules à base d'ESP8266 Le SoC nu est rarement utilisé seul : il est généralement vendu intégré sur un petit module (PCB + flash + antenne + brochage standardisé) produit par **AI-Thinker** ou directement par **Espressif**. | Origine | Modules les plus utilisés | |---|---| | **AI-Thinker** | ESP-01, ESP-01S, ESP-07, ESP-12E, ESP-12F, ESP-12S | | **Espressif** | ESP-WROOM-02, ESP-WROOM-02D, ESP-WROOM-02U, ESP-WROOM-S2 | Les références plus anciennes ou intermédiaires (ESP-02 à ESP-11, ESP-13, ESP-14, ESP-01M) existent mais n'ont jamais réellement percé ou ont été remplacées par les ESP-12x. Liste complète sur Wikipédia : ## ESP32 : Wi-Fi et Bluetooth ![ESP32](esp32.png) L'**ESP32** (sortie en **2016**) marque un saut générationnel. Au-delà du Wi-Fi déjà présent sur l'ESP8266, il ajoute le **Bluetooth Classic 4.2** et le **Bluetooth Low Energy (BLE)**, monte à **240 MHz**, propose une version **double cœur**, et multiplie les périphériques. Caractéristiques marquantes : - cœur **Tensilica Xtensa LX6**, mono ou double cœur selon les modèles ; - Wi-Fi 2,4 GHz + Bluetooth 4.2 + BLE ; - jusqu'à **520 Kio** de SRAM ; - nombreuses interfaces : 3 UART, 4 SPI, 2 I²C, 2 I²S, CAN, Ethernet MAC, capteur Hall, capteur tactile capacitif, ADC 12 bits sur jusqu'à 18 canaux ; - coprocesseur ULP (Ultra Low Power) capable de tourner pendant que les cœurs principaux dorment. ### Modules ESP32 (Tensilica LX6) Tous fabriqués par Espressif, certifiés FCC/CE : | Module | Particularité | |---|---| | **ESP32-WROOM-32** | Le plus répandu, antenne PCB | | **ESP32-WROOM-32D** | Version révisée avec puce double cœur | | **ESP32-WROOM-32U** | Connecteur U.FL pour antenne externe | | **ESP32-SOLO-1** | Variante mono-cœur | | **ESP32-WROVER** / **WROVER-B** / **WROVER-I** / **WROVER-IB** | Ajout d'une **PSRAM** (4 ou 8 Mio) pour les applications gourmandes en mémoire (caméra, audio) | | **ESP32-PICO-V3-ZERO** | SiP très compact intégrant flash + cristal | Plusieurs déclinaisons d'audiosystème et d'OEM existent autour de cette base (ESP32-A1S de AI-Thinker pour l'audio, NINA-W13x d'u-blox certifiés industriellement, etc.), mais ne sont que des reconditionnements du même SoC. Liste détaillée : ## ESP32-S : USB natif et IA embarquée La série **ESP32-S** introduit le cœur **Xtensa LX7**, plus performant, et abandonne le Bluetooth sur la S2 (réintroduit sur la S3 en version BLE 5.0). | SoC | Cœurs | Wi-Fi | BLE | Atout principal | |---|---|---|---|---| | **ESP32-S2** | 1 × LX7 | oui | non | **USB OTG natif**, faible consommation | | **ESP32-S3** | 2 × LX7 | oui | BLE 5.0 | **Accélération vectorielle** pour TinyML / vision | Modules courants : - série S2 : `ESP32-S2-MINI-1[U]`, `ESP32-S2-SOLO[-U]`, `ESP32-S2-WROOM[-I]`, `ESP32-S2-WROVER[-I]` ; - série S3 : `ESP32-S3-MINI-1[U]`, `ESP32-S3-WROOM-1[U]`, `ESP32-S3-WROOM-2`. Le suffixe `-U` désigne un connecteur d'antenne externe (U.FL), le suffixe `-I` une variante industrielle (plage de température étendue). ## ESP32-C : passage au RISC-V La série **ESP32-C** marque le passage d'Espressif à l'architecture **RISC-V** open source. Plus simple, moins gourmande, et facturée moins cher que les cœurs Xtensa propriétaires. | SoC | Cœur | Wi-Fi | BLE | Autres protocoles | |---|---|---|---|---| | **ESP32-C3** | RISC-V 32 bits, 160 MHz | 802.11 b/g/n | BLE 5.0 | — | | **ESP32-C6** | 2 × RISC-V (HP 160 MHz + LP) | **Wi-Fi 6** (802.11ax) | BLE 5.0 | **Thread, Zigbee** (802.15.4) | L'ESP32-C6 est particulièrement notable : c'est le premier SoC d'Espressif compatible **Matter** sur Thread et Wi-Fi. Modules : `ESP32-C3-MINI-1[U]`, `ESP32-C3-WROOM-02[U]`, et plus récemment les `ESP32-C6-WROOM-1[U]`. ## ESP32-H : 802.15.4 sans Wi-Fi | SoC | Cœur | Wi-Fi | BLE | Autres | |---|---|---|---|---| | **ESP32-H2** | RISC-V 32 bits, 96 MHz | **non** | BLE 5.0 | **Thread, Zigbee** (802.15.4) | L'**ESP32-H2** est conçu pour les nœuds Matter / Thread / Zigbee qui n'ont pas besoin de Wi-Fi (capteurs basse consommation derrière un routeur). Il se couple typiquement à un ESP32-C6 ou à une box compatible Thread. ## ESP32-P : processeur d'application | SoC | Cœurs | Connectivité | Rôle | |---|---|---|---| | **ESP32-P4** | 2 × RISC-V HP (400 MHz) + 1 LP | **aucune radio interne** | Application processor pour interfaces homme-machine évoluées (LCD haute résolution, caméra MIPI-CSI, audio…) | L'ESP32-P4 sort du modèle « SoC IoT autonome » : il est destiné à être couplé à un autre ESP (typiquement un C6) qui apporte la radio. C'est la première incursion d'Espressif sur le segment des microcontrôleurs applicatifs hautes performances. ## Comment choisir Quelques règles simples pour s'y retrouver lors du choix d'un SoC : - **Projet simple, Wi-Fi seul, budget serré** : ESP8266 (sur un module ESP-12F ou une WeMos D1 mini) suffit largement. - **Projet général, Wi-Fi + Bluetooth, beaucoup de GPIO** : ESP32-WROOM-32 reste la valeur sûre. - **Besoin d'USB natif, de basse consommation, ou de TinyML** : ESP32-S2 ou S3. - **Coût minimal et BLE moderne** : ESP32-C3. - **Thread, Zigbee, Matter, Wi-Fi 6** : ESP32-C6 (avec Wi-Fi) ou ESP32-H2 (sans Wi-Fi). - **IHM riche, écran haute définition, caméra** : ESP32-P4 couplé à un C6. ## Pour aller plus loin - [L'ESP-01 : présentation et premiers pas](https://varlog.a5l.fr/post/esp-01-presentation-premiers-pas) - [Premier programme ESP-01](https://varlog.a5l.fr/post/esp-01-premier-programme) - [ESP8266 : commandes AT](https://varlog.a5l.fr/post/esp8266-commandes-at) - Page produits Espressif : - Wikipédia ESP8266 : - Wikipédia ESP32 : ```