Sélectionner une page

Quelles sont les différences entre les ESP32 et les ESP8266 ?

Voyons quelle est la différence entre les puces ESP32 et ESP8266, qui sont toutes deux des SOC (Systems on Chip) basés sur le WiFi. Tous deux ont un processeur 32 bits, le ESP32 est un processeur double cœur de 80 MHz à 240 MHz et le ESP8266 est un processeur simple cœur de 160 MHz. Comparons-les en détail ci-dessous.

Comparaison en fonction des caractéristiques

Dossier ESP32 ESP8266
Module
CPU Xtensa Dual-Core 32-bit LX6 avec 600 DMIPS Xtensa Single-core 32-bit L106
Vitesse du WiFi 802.11n jusqu’à 150 Mbps Jusqu’à 72,2 Mbps
Protocole WiFi 802.11 b/g/n (2.4 Ghz) 802.11 b/g/n (2.4 Ghz)
GPIO 36 17
Bluetooth OUI PAS
CAD Deux canaux DAC 8 bits PAS
ADC RAS 12 bits RAS 10 bits
Canaux ADC 8 canaux Canal unique
Référence ADC V 1100mV 1100mV
SPI/I2C/I2S/UART 4/2/2/3 2/1/2/2
Modes WiFi Station/SoftAP/SoftAP+Station/P2P Station/SoftAP/SoftAP+Station/P2P
Capteur tactile OUI (8-Channel) PAS
Capteur de température OUI PAS
Capteur à effet Hall OUI PAS
SRAM 520 kB (8 kB de SRAM dans RTC) Taille de la RAM < 50 kB
FLASH (externe) 4Mbytes (également disponible plus haut) 4Mbytes
ROM 448 kB ROM pour le démarrage et les fonctions de base Pas de ROM programmable
Protocoles de réseau IPv4, IPv6, SSL, TCP/UDP/HTTP/FTP/MQTT IPv4, TCP/UDP/HTTP/MQTT
Interface périphérique UART/SDIO/SPI/I2C/I2S/IR TélécommandeGPIO/ADC/DAC/Touch/PWM/LED UART/SDIO/SPI/I2C/I2S/IR TélécommandeGPIO/ADC/PWM/LED
Plage de température de fonctionnement -40°C ~ +85°C -40°C ~ 125°C
Tension de fonctionnement 2,5V ~ 3,6V 2,5V ~ 3,6V
Courant de fonctionnement Moyenne : 80 mA Valeur moyenne : 80 mA
Prix 4 € – 10 € €3 – €6

Qu’est-ce que le module ESP32 ?

L’ESP32 est hautement intégré avec des commutateurs d’antenne intégrés, un balun RF, un amplificateur de puissance, un amplificateur de réception à faible bruit, des filtres et des modules de gestion de la puissance. L’ESP32 ajoute une fonctionnalité et une polyvalence inestimables à vos applications avec un minimum d’exigences en matière de circuits imprimés (PCB).

ESP32 diferencias

ESP32-WROOM-32 est un puissant module MCU générique Wi-Fi+BT+BLE qui s’adresse à une grande variété d’applications, allant des réseaux de capteurs à faible puissance aux tâches les plus exigeantes telles que le codage de la voix, le streaming musical et le décodage MP3.

Au cœur de ce module se trouve la puce ESP32-D0WDQ6*. La puce intégrée est conçue pour être évolutive et adaptable. Il y a deux cœurs de CPU qui peuvent être contrôlés individuellement, et la fréquence d’horloge du CPU est réglable de 80 MHz à 240 MHz. L’utilisateur peut également éteindre l’unité centrale et utiliser le coprocesseur à faible puissance pour surveiller en permanence les périphériques afin de détecter les changements ou les dépassements de seuil. L’ESP32 intègre un riche ensemble de périphériques, allant des capteurs tactiles capacitifs aux capteurs à effet Hall, en passant par l’interface de carte SD, l’Ethernet, le SPI haute vitesse, l’UART, l’I2S et l’I2C.

L’intégration de Bluetooth, Bluetooth LE et Wi-Fi permet de cibler un large éventail d’applications et de pérenniser le module : l’utilisation du Wi-Fi permet une longue portée physique et une connexion directe à Internet via un routeur Wi-Fi, tandis que l’utilisation de Bluetooth permet à l’utilisateur de se connecter facilement au téléphone ou d’émettre des balises à faible énergie pour la détection. Le courant de veille de la puce ESP32 est inférieur à 5 μA, ce qui la rend adaptée aux applications de batteries électroniques et de vêtements.

L’ESP32 supporte un débit de données allant jusqu’à 150 Mbps, et une puissance de sortie de 20,5 dBm à l’antenne pour assurer la plus grande portée physique. En tant que telle, la puce offre des spécifications de pointe et les meilleures performances en matière d’intégration électronique, de portée, de consommation d’énergie et de connectivité. Le système d’exploitation choisi pour l’ESP32 est freeRTOS avec LwIP ; TLS 1.2 avec accélération matérielle est également intégré. La mise à jour sécurisée (cryptée) en direct (OTA) est également prise en charge, de sorte que les développeurs peuvent continuellement mettre à jour leurs produits, même après le lancement.

Qu’est-ce que le tableau ESP32 devKit ?

Le DOIT Esp32 DevKit v1 est l’une des cartes de développement créées par DOIT pour évaluer le module ESP-WROOM-32. Il est basé sur le microcontrôleur ESP32 qui intègre le Wifi, le Bluetooth, l’Ethernet et la prise en charge de la faible consommation d’énergie, le tout sur une seule puce. Le DevKit ESP32 contient l’ESP32-WROOM, l’alimentation 3,3V nécessaire à l’ESP32 et un convertisseur USB-série pour faciliter la programmation. Avec cette carte et un câble USB, vous pouvez commencer à développer l’ESP32.

ESP32 DevKit

Qu’est-ce que le module ESP8266 ?

L’ESP8266EX d’Espressif offre une solution SoC Wi-Fi hautement intégrée pour répondre aux exigences constantes des utilisateurs en matière d’efficacité énergétique, de conception compacte et de performances fiables dans le secteur de l’Internet des objets.

modulo ESP8266

Grâce à ses capacités de réseautage Wi-Fi complet et autonome, l’ESP8266EX peut fonctionner comme une application autonome ou comme un esclave d’une MCU hôte. Lorsque l’ESP8266EX héberge l’application, celle-ci est rapidement lancée à partir du flash. Le cache à haute vitesse intégré permet d’augmenter les performances du système et d’optimiser la mémoire système. En outre, l’ESP8266EX peut être appliqué à n’importe quelle conception de microcontrôleur comme adaptateur Wi-Fi via les interfaces SPI/SDIO ou UART.

Le ESP8266EX intègre des commutateurs d’antenne, un balun RF, un amplificateur de puissance, un amplificateur de réception à faible bruit, des filtres et des modules de gestion de la puissance. La conception compacte minimise la taille du circuit imprimé et ne nécessite qu’un minimum de circuits externes.

En plus des capacités Wi-Fi, l’ESP8266EX intègre également une version améliorée du processeur 32 bits L106 Diamond Series de Tensilica et de la SRAM sur puce. Il peut être interfacé avec des capteurs externes et d’autres dispositifs via les GPIO. Le kit de développement logiciel (SDK) fournit des exemples de code pour diverses applications.

La plate-forme de connectivité intelligente (ESCP) d’Espressif Systems permet de mettre en place des fonctionnalités sophistiquées, notamment

  • Passage rapide entre les modes veille et sommeil à des fins d’efficacité énergétique ;
  • Adaptive radio bias for low power operation
  • Traitement avancé des signaux
  • Mécanismes d’annulation des stimuli et coexistence des radiofréquences pour le téléphone portable commun, Bluetooth,
  • Atténuation des interférences DDR, LVDS, LCD

Qu’est-ce que le kit ESP8266 NodeMCU ?

Le kit de développement basé sur la norme ESP8266 intègre les technologies GPIO, PWM, IIC, 1-Wire et ADC, le tout dans une seule carte. Propulsez votre développement le plus rapidement possible en le combinant avec le micrologiciel de NodeMCU.

NodeMCU version 2

NodeMCU est essentiellement une carte de développement pour l’ESP8266, elle contient une alimentation de 3,3V nécessaire à l’ESP8266 et un convertisseur USB-série pour une programmation facile. Avec cette carte et un câble USB, vous pouvez commencer le développement de la ESP8266.

Plus de GPIO sur l’ESP32

ESP32 a plus de GPIO que ESP8266, et vous pouvez décider quels pins sont UART, I2C, SPI – il suffit de mettre cela dans le code. Cela est possible grâce à la fonction de multiplexage de la puce ESP32 qui permet d’attribuer plusieurs fonctions à la même broche.

ESP32 Pinout

Si vous ne les définissez pas dans le code, ils seront aux broches par défaut comme le montre la figure ci-dessous (ceci est un exemple pour la carte ESP32 DEVKIT V1 DOIT – l’emplacement des broches peut changer selon le fabricant).

À titre de comparaison, voici le schéma de connexion du kit NœudMCU ESP8266 ESP-12E.

 

nodemcu pinout

PWM, ADC et plus encore

Vous pouvez configurer les signaux PWM sur n’importe quel GPIO avec des fréquences configurables et le cycle d’utilisation défini dans le code.

En ce qui concerne les broches analogiques, elles sont statiques, mais l’ESP32 prend en charge des mesures sur 18 canaux (broches compatibles avec l’analogique) par rapport à une seule broche ADC de 10 bits sur l’ESP8266. L’ESP32 prend également en charge deux canaux DAC 8 bits.

En outre, l’ESP32 contient 10 GPIO de détection capacitive, qui détectent le toucher et peuvent être utilisés pour déclencher des événements, ou réveiller l’ESP32 du sommeil profond, par exemple.

Arduino IDE – ESP32 vs ESP8266

Il existe de nombreuses façons de programmer les cartes ESP32 et ESP8266. Actuellement, les deux cartes peuvent être programmées en utilisant l’environnement de programmation IDE d’Arduino.

C’est une bonne chose, surtout pour ceux qui sont habitués à programmer Arduino et qui connaissent le « langage de programmation » Arduino.

Il est très facile de commencer à utiliser l’ESP32 ou l’ESP8266 avec l’IDE Arduino et de mettre en place votre premier projet.

Bien que vous puissiez programmer les deux cartes en utilisant l’EDI Arduino, elles peuvent ne pas supporter les mêmes bibliothèques et fonctions. Certaines bibliothèques ne sont compatibles qu’avec l’un des conseils. Cela signifie que, la plupart du temps, votre code ESP8266 ne sera pas compatible avec ESP32, mais que vous n’aurez généralement qu’à y apporter quelques modifications.

Nous avons une liste dédiée de tutoriels et de projets gratuits pour les cartes ESP32 et ESP8266 qui utilisent l’EDI Arduino qui pourrait vous être utile :

MicroPython Firwmare – ESP32 vs ESP8266

Une autre façon courante de programmer les cartes ESP32 et ESP8266 consiste à utiliser le micrologiciel MicroPython.

MicroPython est une réimplémentation de Python 3 destinée aux microcontrôleurs et aux systèmes embarqués. Le micro python est très semblable au python normal. Donc, si vous savez déjà programmer en Python, vous savez aussi programmer en MicroPython.

En MicroPython, la plupart des scripts Python sont compatibles avec les deux cartes (contrairement à l’IDE Arduino). Cela signifie que la plupart du temps, vous pouvez utiliser le même script pour ESP32 et ESP8266.

ESP32 ou ESP8266 ?

À ce stade, vous vous demandez peut-être : dois-je utiliser une ESP8266 ou une ESP32 ?

Cela dépend vraiment de ce que vous voulez faire. Il y a de la place pour les deux, et les deux ont des avantages et des inconvénients.

La ESP8266 est moins chère que la ESP32. Bien qu’il n’ait pas autant de fonctionnalités, il fonctionne bien pour la plupart des projets simples. Toutefois, il présente certaines limites en ce qui concerne la cartographie GPIO, et il se peut que vous n’ayez pas assez d’épingles pour ce que vous avez l’intention de faire. Si c’est le cas, vous devez utiliser une ESP32.

L’ESP32 est beaucoup plus puissant que l’ESP8266, est doté de plus de GPIO multifonctions, d’un Wi-Fi plus rapide et prend également en charge le Bluetooth. Beaucoup de gens pensent que la ESP32 est plus difficile à gérer que la ESP8266 parce qu’elle est plus complexe. À notre avis, il est aussi facile de programmer l’ESP32 que l’ESP8266, surtout si vous voulez programmer avec le « langage Arduino » ou le MicroPython.

L’ESP32 présente également quelques inconvénients. La ESP32 est plus chère que la ESP8266. Donc, si vous construisez un simple projet d’OI, la ESP8266 pourrait valoir un prix inférieur. De plus, comme la ESP8266 est « plus ancienne » que la ESP32, certaines bibliothèques et fonctionnalités sont mieux développées pour la ESP8266 et vous trouverez plus de ressources (forums, personnes ayant les mêmes problèmes et comment les résoudre, etc.) Cependant, avec le temps, la ESP32 est largement adoptée, et ces différences en termes de développement et de bibliothèques ne seront pas perceptibles.

En 2020, nous utiliserons l’ESP32 presque exclusivement pour les projets IdO. Il est plus polyvalent et offre de nombreuses autres fonctionnalités telles que le Bluetooth, différentes sources d’alarme, de nombreux périphériques, et bien plus encore. En outre, la différence de prix n’est pas un gros problème, à notre avis. Nous pensons qu’une fois que vous serez passé à la ESP32, vous ne voudrez plus revenir à la ESP8266.