Quelle puce ESP32 devriez-vous utiliser ? Actuellement, Espressif répertorie 14 puces dans la famille ESP32. Onze sont en production de masse (ESP32, S2, S3, C2, C3, C5, C6, C61, H2, P4 et le S31 récemment lancé). Avec autant de puces, il peut être difficile de choisir laquelle utiliser dans votre projet.
Dans ce guide, nous vous présenterons chaque puce ESP32 actuellement sur le marché et comparerons leurs fonctionnalités pour faciliter le choix de celle qui convient à votre projet.
Notre liste de puces et les données correspondantes ont été compilées à partir des fiches techniques et des pages produits d’Espressif, en plus de la documentation actuelle des projets Arduino Core, ESP-IDF, MicroPython, CircuitPython, Tasmota et ESPHome.
Table des matières
Dans ce guide, nous aborderons les sujets suivants :
1. Comparaison des puces principales : spécifications clés
Le tableau suivant compare les spécifications clés de haut niveau de chaque puce : architecture du processeur, vitesse d’horloge, mémoire sur puce, etc.
| Ébrécher | Processeur | Horloge maximale | Co-processeur / coeur LP | SRAM | Éclair | PSRAM | Conclusion | Date | Fiche de données |
|---|---|---|---|---|---|---|---|---|---|
| ESP32 | 2 × Xtensa LX6 | 240 MHz | ULP FSM | 520 Ko | 4 Mo dans le paquet typique (jusqu’à 16 Mo ext.) | 2 Mo dans le paquet (jusqu’à 8 Mo ext.) | QFN48, 5×5/6×6 mm | 2016 | |
| ESP32-S2 | 1 × Xtensa LX7 | 240 MHz | ULP FSM | 320 Ko | Dépend du module (généralement 4 Mo) | Aucun dans la puce de base (ajoutez jusqu’à 2 Mo) | QFN56, 7 × 7 mm | 2020 | |
| ESP32-S3 | 2 × Xtensa LX7 | 240 MHz | ULP RISC-V + FSM | 512 Ko | 4/8 Mo dans le paquet ; grand externe via QSPI/Octal | 2/8/16 Mo dans le paquet | QFN56, 7 × 7 mm | 2021 | |
| ESP32-S31 (nouveau) | 2×RISC-V | 320 MHz | Non publié | 512 Ko | Non publié | Non publié | QFN80, 8 × 8 mm | juillet 2026 | Pas encore de fiche technique |
| ESP32-C2 (ESP8684) | 1 × RISC-V (RV32IMC) | 120 MHz | Non | 272 Ko | 1 à 4 Mo dans le paquet uniquement | Non | QFN24, 4×4 mm | 2022 | |
| ESP32-C3 | 1 × RISC-V (RV32IMC) | 160 MHz | Non | 400 Ko | 4/8 Mo en paquet (jusqu’à 16 Mo en extension) | Non | QFN32, 5×5mm | 2021 | |
| ESP32-C5 | 1 × noyau RISC-V + LP | 240 MHz | LP RISC-V, jusqu’à 40 MHz | 384 Ko | Options intégrées/externes | Options intégrées au paquet disponibles | QFN48, 6×6 mm | avril 2025 | |
| ESP32-C6 | 1 × noyau RISC-V + LP | 160 MHz | LP RISC-V, 20 MHz | 512 Ko | 4/8 Mo en paquet (jusqu’à 16 Mo en extension) | Non | QFN40 (nu) / QFN32 (module flash-in-pkg), 5 × 5 mm | 2023 | |
| ESP32-C61 | 1 × RISC-V | 160 MHz | Non | 320 Ko | Dans le paquet/externe | PSRAM externe prise en charge | QFN40/LGA40, 5×5 mm | juin 2025 | |
| ESP32-H2 | 1 × RISC-V | 96 MHz | Non | 320 Ko | Dans le paquet | Non | QFN32, 4×4 mm | 2023 | |
| ESP32-H4 (nouveau) | 2×RISC-V | 96 MHz | Non publié | 384 Ko | Non publié | Non publié | Non publié | mars 2026 | Pas encore de fiche technique |
| ESP32-H21 (nouveau) | 1 × RISC-V | 96 MHz | Non publié | 320 Ko | Non publié | Non publié | Non publié | Annoncé en mars 2026 | Pas encore de fiche technique |
| ESP32-P4 | 2 × RISC-V (HP) + noyau LP | 400 MHz (silicium v3.x, depuis mai 2026) ; 360 MHz sur les anciennes cartes v1.x | LP RISC-V ; SIMD/DSP + FPU simple précision | 768 Ko | Externe uniquement (pas de réseau sans fil) | 16/32 Mo dans le paquet | QFN104, 10 × 10 mm | 2024 | |
| ESP32-E22 (nouveau) | 2×RISC-V | 500 MHz | Non publié | Non publié | Non publié | Pas d’option PSRAM | QFN, 9×9 mm, 100 broches | Annoncé en janvier 2026 | Pas encore de fiche technique |
2. Protocoles pris en charge : Wi-Fi, Bluetooth, Zigbee, Thread, Matter et autres
Le tableau suivant présente les protocoles sans fil pris en charge pour chaque puce. Vérifiez d’abord ce tableau lorsqu’un projet a une exigence de connectivité spécifique.
Il convient de noter qu’il n’y a pas de Bluetooth sur l’ESP32-S2 ni de Wi-Fi sur la série H.
| Ébrécher | Wi-Fi | Bluetooth | ESP-MAINTENANT | Discussion / Zigbee (802.15.4) | Chemin de la matière | Ethernet |
|---|---|---|---|---|---|---|
| ESP32 | Wi-Fi 4, 2,4 GHz | 4.2 Classic (BR/EDR) + LE (certifié LE 5.0, mais pas de 2M PHY/longue portée/publicité externe) | Oui | Non | Wi-Fi ou Ethernet | 10/100 MAC natif (nécessite un PHY externe) |
| ESP32-S2 | Wi-Fi 4, 2,4 GHz | Non | Oui | Non | Wi-Fi (la mise en service nécessite une solution de contournement car il n’y a pas de BLE) | SPI uniquement (pas de MAC natif) |
| ESP32-S3 | Wi-Fi 4, 2,4 GHz | LE 5 (certifié 5.4) | Oui | Non | Wi-Fi | Non |
| ESP32-S31 | Wi-Fi 6, 2,4 GHz | LE 5.4 + Classique BR/EDR | Oui | Oui | Wi-Fi ou fil de discussion | Gigabit MAC (natif) |
| ESP32-C2 | Wi-Fi 4, 2,4 GHz | LE 5 | Oui | Non | Wi-Fi | Non |
| ESP32-C3 | Wi-Fi 4, 2,4 GHz | LE 5 (certifié 5.4) | Oui | Non | Wi-Fi | Non |
| ESP32-C5 | Wi-Fi 6, 2,4 et 5 GHz (uniquement ESP32 double bande) | LE 5 (certifié BT Core 6.0) | Oui | Oui (Thread 1.4 / Zigbee 3.0) | Wi-Fi ou fil de discussion | Non |
| ESP32-C6 | Wi-Fi 6, 2,4 GHz | LE 5 (certifié 5.3) | Oui | Oui (Thread 1.3 / Zigbee 3.0) | Wi-Fi ou fil de discussion | Non |
| ESP32-C61 | Wi-Fi 6, 2,4 GHz | LE 5 (certifié BT Core 6.0) | Oui | Non | Wi-Fi | Non |
| ESP32-H2 | Non | LE 5 (certifié 5.3) | Non | Oui (Thread 1.4 / Zigbee 3.0) | Sujet uniquement | Non |
| ESP32-H4 | Non | LE 5.4 | Non | Oui | Sujet uniquement | Non |
| ESP32-H21 | Non | LE 5 | Non | Oui | Sujet uniquement | Non |
| ESP32-P4 | Les cartes associent un compagnon ESP32-C6 sur SDIO pour Wi-Fi/BT/Thread | Aucun sur puce | Pas de puce (disponible sur les cartes via le compagnon C6) | Non | Via la puce radio compagnon | 10/100 MAC natif (nécessite un PHY externe) |
| ESP32-E22 | Wi-Fi 6E tri-bande : 2,4 + 5 + 6 GHz (canaux 160 MHz, 2×2 MU-MIMO, jusqu’à 2,4 Gbps) | BR/EDR Classique + LE 5.4 | Non documenté | Non | Transport Wi-Fi uniquement, via l’hôte (E22 n’exécute aucune application) | Non |
Remarque : LoRa n’est pas répertorié car vous avez besoin d’un émetteur-récepteur externe. Chaque carte ESP32 LoRa (comme Heltec Wi-Fi LoRa 32, LILYGO T-Beam, etc.) est livrée avec une puce ESP32 avec un émetteur-récepteur SX1262/SX1276 séparé sur SPI.
3. Firmware/SDK pris en charge par puce
Le tableau suivant montre quels frameworks et projets de micrologiciels sont actuellement pris en charge sur chaque puce. Gardez à l’esprit que les versions stables des nouvelles puces peuvent mettre plusieurs mois à être disponibles.
| Ébrécher | ESP-IDF | Noyau Arduino | MicroPython | CircuitPython | Tasmota | ESPAccueil | RTOS Zephyr |
|---|---|---|---|---|---|---|---|
| ESP32 | Oui | Oui | Oui | Bêta | Oui | Oui (Arduino ou IDF) | Oui |
| ESP32-S2 | Oui | Oui | Oui | Écurie | Oui | Oui (Arduino ou IDF) | Oui |
| ESP32-S3 | Oui | Oui | Oui | Écurie | Oui | Oui (Arduino ou IDF) | Oui |
| ESP32-S31 | Aperçu | Non | Non | Non | Non | Non | Non |
| ESP32-C2 | Oui | Composant uniquement 1* | Oui | Alpha | Oui | Oui (IDF uniquement) | Partiel |
| ESP32-C3 | Oui | Oui | Oui | Bêta | Oui | Oui (Arduino ou IDF) | Oui |
| ESP32-C5 | Oui | Oui | Oui | Pas encore | Pas encore | Oui (IDF uniquement) | Partiel |
| ESP32-C6 | Oui | Oui | Oui | Alpha | Oui | Oui (IDF uniquement) | Oui |
| ESP32-C61 | Oui | Composant uniquement 1* | Pas encore | Pas encore | Pas encore | Oui (IDF uniquement) | Partiel |
| ESP32-H2 | Oui | Oui | Oui | Alpha | Core le prend en charge ; Zigbee/Thread | Oui (IDF uniquement) | Partiel |
| ESP32-H4 | Aperçu | Non | Non | Non | Non | Non | Non |
| ESP32-H21 | Aperçu | Non | Non | Non | Non | Non | Non |
| ESP32-P4 | Oui | Oui | Tôt | Alpha | Tôt | Oui (IDF uniquement) | Partiel |
| ESP32-E22 | Pas encore public | Non | Non | Non | Non | Non | Non |
Remarques :
1* C2 et C61 ne sont pas faciles à installer via le gestionnaire de cartes Arduino IDE standard. Il ne fonctionne que sur ESP-IDF avec Arduino-ESP32 via « Arduino en tant que composant ESP-IDF » ou en reconstruisant les bibliothèques statiques.
« ESPHome (IDF uniquement) » signifie que la puce a besoin du framework ESP-IDF dans ESPHome. L’option de framework Arduino Core d’ESPHome est limitée à ESP32 (classique), S2, S3 et C3.
4. Puces ESP32 : disponibilité GPIO par fonctionnalité
I2C, SPI et UART sont rarement épinglés sur des GPIO fixes sur un ESP32. Il existe une matrice GPIO qui vous permet de les acheminer vers presque toutes les broches du logiciel.
La vraie différence entre les puces réside dans les broches à fonctions fixes (ADC/touch/DAC, qui sont câblées) et USB.
| Ébrécher | GPIO totale | I2C | IPS | UART | I2S | LEDC/PWM | Saisir uniquement les broches | Canaux ADC | Épingles tactiles | Canaux DAC | USB natif |
|---|---|---|---|---|---|---|---|---|---|---|---|
| ESP32 | 34 | 2 | (2 utilisables : HSPI/VSPI.SPI0/1 sont dédiés au flash) | 3 | 2 | 16 ch | 6 (GPIO 34 à 39) | 18 canaux, 12 bits (2 unités. ADC2 est inutilisable lorsque le Wi-Fi est actif.) | 10 | 2 × 8 bits | Non |
| ESP32-S2 | 43 | 2 | 4 | 2 | 1 | 8 ch | 0 | 20 canaux, 13 bits (2 unités) | 14 | 2 × 8 bits | USB OTG natif |
| ESP32-S3 | 45 | 2 | 4 (2 utilisables. SPI0/1 dédié au flash/PSRAM) | 3 | 2 | 8 ch | 0 | 20 canaux, 12 bits (2 unités) | 14 | Non | USB OTG natif + USB série/JTAG séparé |
| ESP32-S31 | 60 | Non publié | Non publié | Non publié | Non publié | Non publié | 0 | Non publié | Non publié | Non publié | Natif (interface exacte à déterminer) |
| ESP32-C2 | 14 | 1 (maître uniquement) | 3 (1 utilisable. SPI0/1 dédié au flash) | 2 | Non | 6 ch | 0 | 5 voies, 12 bits | 0 | 0 | Non |
| ESP32-C3 | 22 (seulement 16 sur C3FH4X) | 1 | 3 (1 utilisable) | 2 | 1 | 6 ch | 0 | 6 voies, 12 bits | 0 | 0 | USB série/JTAG (programme/débogage ; pas un port hôte USB) |
| ESP32-C5 | 29 | 1 (+ 1 LP-I2C) | 3 (1 utilisable) | 2 (+ 1 LP-UART) | 1 | 6 canaux (LEDC haute résolution | 0 | SAR ADC, nombre de canaux similaire à celui du C6 | 0 | 0 | USB série/JTAG |
| ESP32-C6 | 30 puces nues (22 sur le QFN32) | 1 (+ 1 LP-I2C) | 3 (1 utilisable) | 2 (+ 1 LP-UART) | 1 | 6 ch | 0 | 7 voies, 12 bits | 0 | 0 | USB série/JTAG |
| ESP32-C61 | 30 | 1 | 3 (1 utilisable) | 2 | 1 | 6 ch | 0 | Non publié | 0 | 0 | USB série/JTAG |
| ESP32-H2 | 19 | 2 | 3 (1 utilisable) | 2 | 1 | 6 ch | 0 | Non publié | 0 | 0 | USB série/JTAG |
| ESP32-H4 | 40 | Non publié | Non publié | Non publié | Non publié | Non publié | 0 | Non publié | Non publié | Non publié | Non publié |
| ESP32-H21 | 19 | Non publié | Non publié | Non publié | Non publié | Non publié | 0 | Non publié | Non publié | Non publié | Non publié |
| ESP32-P4 | 55 | 2 (+ 1 LP-I2C) | 2 utilisables à usage général (+ flash dédié/PSRAM) | 5 (+ 1 LP-UART) | 3 | 8 ch | 0 | L’ADC SAR est présent | Capteur tactile du domaine LP | 0 | USB 2.0 OTG haute vitesse |
| ESP32-E22 | 41 (M.2 expose 20) | Non publié | Non publié | Non publié | Non publié | Non publié | Non publié | Non publié | Non publié | Non publié | Non publié |
Quelques broches sur chaque puce sont également des broches de cerclage (elles définissent le mode de démarrage à la mise sous tension). Ceux-ci peuvent ensuite être utilisés comme des GPIO normaux, mais il est préférable de vérifier la fiche technique de votre puce avant de les piloter à un niveau bas/haut au démarrage.
Quelle puce ESP32 devriez-vous choisir ?
Dans l’ensemble, si vous n’avez pas besoin de quelque chose de spécifique comme Zigbee ou Thread, ou d’une très faible consommation (mois sur batterie), l’ESP32-S3 est le meilleur choix de toutes les puces actuellement disponibles.
Il s’agit de la puce la plus équilibrée de la famille : le plus grand écosystème de cartes modernes, un port USB natif, de la place pour un écran et une caméra et une prise en charge stable du micrologiciel.
Avantages ESP32-S3 :
- Meilleur équilibre global entre calcul, mémoire et GPIO de la famille avec double cœur, 240 MHz, jusqu’à 45 GPIO.
- USB OTG natif. Pas besoin de puce de pont USB-série séparée.
- Jusqu’à 16 Mo de PSRAM octale intégrée au package, ce qui signifie de la place pour les tampons, les écrans et les modèles ML.
- Le plus grand écosystème de conseils d’administration moderne. Environ 70 cartes disponibles, à partir de 5 $ de répartitions jusqu’aux cartes caméra/affichage.
- Prise en charge du firmware le plus mature : stable sur Arduino IDE, ESP-IDF, MicroPython, CircuitPython, Tasmota, ESPHome et Zephyr.
Inconvénients de l’ESP32-S3 :
- Pas de radio 802.15.4 : pas de Zigbee, Thread ou Matter-over-Thread.
- Wi-Fi 4 uniquement, 2,4 GHz. C’est une génération derrière le Wi-Fi 6 des C5/C6/C61/S31.
- Pas de DAC. La véritable sortie audio analogique nécessite une puce externe.
- Consommation de courant en veille profonde plus élevée (7uA) que les puces RISC-V (C2/C3 : 5uA). Ce n’est pas le meilleur choix pour un capteur alimenté par batterie.
- Coûte et consomme plus que ce dont un projet a besoin pour la plupart des applications simples. Par exemple, un commutateur Wi-Fi de base est moins cher construit sur un C3.
La meilleure puce ESP32 pour différentes applications
Pour vous aider à choisir la meilleure puce pour votre projet, nous avons dressé le tableau suivant. Notre « choix » fait référence à la puce nue. Nous allons créer un nouveau tutoriel faisant référence aux cartes de développement construites autour de ces puces.
| Vous avez besoin… | Prendre | Pourquoi |
|---|---|---|
| Je veux la meilleure option globale pour mes projets IoT | ESP32-S3 | La puce la plus équilibrée de la famille ESP32 pour la plupart des projets IoT. |
| J’ai juste besoin du Wi-Fi et du Bluetooth à moindre coût | ESP32-C3 | Cartes modernes les moins chères, câble USB-C unique, large prise en charge du micrologiciel. |
| J’ai besoin de Wi-Fi 6/Matter/Zigbee pour un produit pour maison intelligente | ESP32-C6 | La seule puce grand public combinant Wi-Fi 6, BLE et 802.15.4 (Zigbee/Thread). |
| Je fais du travail caméra / IA / voix | ESP32-S3 | Il possède des interfaces caméra/affichage, la plupart des options PSRAM et le plus grand écosystème moderne. |
| Je veux un appareil multimédia à affichage lourd | Combinaison ESP32-P4 + ESP32-C6 | P4 apporte MIPI-DSI/CSI, H.264 et le calcul le plus brut ; C6 fournit le sans fil qui manque au P4. |
| J’ai seulement besoin de Zigbee/Thread, pas du Wi-Fi | ESP32-H2 | Puce de périphérique Thread/Zigbee spécialement conçue, coût et puissance les plus bas pour ce travail. |
| Je veux le plus grand écosystème, Bluetooth Classic, ou le dual-core le moins cher | ESP32 (d’origine) | 147 cartes suivies, la seule puce ici avec BT Classic (A2DP/SPP), ~ 5 $ de cartes dual-core. |
| Je conçois un PCB de produit sensible aux coûts | ESP32-C2 (ESP8684) | Le plus petit package et le coût le plus bas de toutes les puces Wi-Fi/BLE ici ; pas destiné aux cartes de développement. |
| J’ai besoin du Wi-Fi 6 avec la bande 5 GHz | ESP32-C5 | La seule puce de la famille avec Wi-Fi 6 bi-bande (2,4 + 5 GHz). |
| Je veux des économies d’énergie Wi-Fi 6 sans payer pour une radio Zigbee/Thread | ESP32-C61 | Un C6 à coût réduit avec le même Wi-Fi 6/BLE, pas de 802.15.4. |
| Je veux tester la nouvelle puce d’Espressif | ESP32-S31 | Je viens d’entrer en production de masse (juillet 2026) ; Wi-Fi 6 + BLE Classic + Thread + Gigabit Ethernet, mais logiciel de prévisualisation uniquement. |
Conclusion
Dans ce guide, nous avons examiné les puces ESP32 disponibles. Actuellement, il existe 14 puces ESP32 différentes. Ils peuvent différer en termes de spécifications clés, de protocoles sans fil pris en charge, de GPIO, de consommation d’énergie, etc.
Dans l’ensemble, si vous débutez ou débutez avec l’ESP32, nous vous recommandons la puce ESP32 d’origine de l’ESP32-S3. Si vous avez un projet spécifique en tête, d’autres puces ESP32 pourraient être mieux adaptées.
Dans cet article, nous faisons référence aux puces nues ESP32. Nous créerons un guide similaire pour les cartes de développement ESP32 les plus populaires.
Nous espérons que ce guide vous sera utile.
Pour en savoir plus sur l’ESP32, consultez nos ressources :
Cette vidéo vous emmène dans l’histoire de Raspberry Pi :

-
ESP32-C6 Carte de développement à écran tactile AMOLED de 2,16", écran couleur intégré de 480 × 480 pixels, écran couleur de 16,7 m, 6 axes, deux microphones, etc. Prend en charge Wi-Fi 6, BLE 5
-
Ulegqin ESP32 Écran ESP32 Ecran Tactile Board avec WiFi Bluetooth 2,8" 240 x 320 Éc-ran ESP-32 Intelligent Module EC-ran TFT ESP-32 Tactile Connectivité IoT Haut débit Compatible avec Arduino/LVGL
