ESP32

série de SoC comprenant microcontrôleur, Wi-Fi, Bluetooth et DSP De Wikipédia, l'encyclopédie libre

ESP32

ESP32 est une série de microcontrôleurs de type système sur une puce (SoC) d'Espressif Systems, basé sur l'architecture Xtensa LX6 de Tensilica (en), intégrant la gestion du Wi-Fi et du Bluetooth (jusqu'à LE 5.0 et 5.1[1]) en mode double, et un DSP. C'est une évolution d'ESP8266. Le principal outil de développement est ESP-IDF, logiciel libre développé par Espressif, écrit en C et utilisant le système temps réel FreeRTOS. Il intègre un nombre important de bibliothèques et on retrouve dans son écosystème des bibliothèques tierce libres pour différents types de périphériques liés à l'embarqué et au temps réel.

Faits en bref Développeur, Fabricant ...
ESP32
Développeur
Fabricant
Date de sortie
Fonctions
Type
Caractéristiques
Alimentation
3.3 V CC
Processeur
Tensilica Xtensa LX6
Mémoire
520 ko
Fermer

Le ESP32-C3, WiFi, BLE, Bluetooth, est une variante, annoncée et sorti en novembre 2020, compatible broche à broche avec l'ESP8266, mais utilisant l'architecture RISC-V 32 bits plutôt que Xtensa[2]. Le support du développement via la plateforme et l'IDE d'Arduino est disponible depuis la bibliothèque ESP32 2.0.0[3]. Plus généralement, La série ESP32-C est basée sur RISC-V et la série ESP32-S sur Xtensa LX6.

Son support Wi-Fi et Bluetooth, en fait un système apprécié dans le domaine de l'internet des objets.

Ce SoC rencontre un certain succès depuis quelques années à la fois pour son coût, ses capacités et son intégration dans un nombre croissant de systèmes.

Caractéristiques techniques

Résumé
Contexte
Schéma fonctionnel de l'ESP32

Les ESP32 comprennent notamment les caractéristiques techniques suivantes[4] :

Stockage intégré

L'ESP32 comprend la mémoire intégrée suivante[5] :

Davantage d’informations Taille, mémoire ...
Taille mémoire
SRAM 520 Kibits
Mémoire flash 448 Kibits
NVRAM 16 Kibits
Fermer

Variantes améliorées

Résumé
Contexte

Base Xtensa

ESP32-S2

  • Comporte un processeur Xtensa LX7 pouvant monter jusqu'à 240 MHz
  • Un coprocesseur RISC-V est introduit pour le mode ULP.
  • Accélération matérielle du chiffrement
  • Il n'y a pas de fonctions Bluetooth[6]
  • WiFi 2.4 Ghz (IEEE 802.11b/g/n)[6]
  • FPU

ESP32-S3

  • Comporte deux processeur Xtensa LX7 pouvant monter jusqu'à 240 MHz
  • Accélération matérielle du chiffrement
  • Wifi 802.11 b/g/n, Bluetooth 5.0 LE
  • Un coprocesseur RISC-V est toujours présent pour le mode ULP[7].

ESP32-PICO-D4

Il s'agit d'un System in package (système dans un paquet) et non d'un SoC[8].

  • Deux processeurs Xtensa LX6
  • 4MB SPI flash
  • WiFi 802.11 b/g/n/e/i, BT
  • consommation moyenne de 80 mA.

Base RISC-V

Thumb
Carte NodeMCU équipé d'un ESP32-C3-32S

ESP32-C2 (ESP8684)

Cœur d'architecture RISC-V 272 ko de SRAM intégré (16 ko de cache).

  • 1 cœur RISC-V 32 bits basse consommation à 120 MHz
  • Accélération matériel du chiffrement
  • 576 ko de ROM
  • 1 ko eFuse
  • WiFi 4.0 b/g/n 2.4 GHz largeur de bande 20 MHz (72.2 Mb/s max)
  • Bluetooth 5.0 LE
  • Extensions de chiffrement AES

ESP32-C3 (ESP8686)

Contrairement à ses prédécesseurs, le microcontrôleur principal est un unique cœur d'architecture RISC-V RV32IMC 400 ko de SRAM intégré (16 ko de cache). Il permet l'utilisation de ESP-IDF, basé sur FreeRTOS[9], à une fréquence maximum de 160 MHz[10]., il apporte cependant de meilleur performances qu'un seul cœur LX7 à 160 MHz[11].

  • 1 cœur RISC-V 32 bits jusqu'à 160 MHz
  • Accélération du chiffrement
  • 384 ko de ROM
  • WiFi 4.0 b/g/n 2.4 GHz largeur de bande 20 MHz, 40 MHz en 802.11n (150 Mb/s max)
  • Bluetooth 5.0 LE
  • Extensions de chiffrement AES

ESP32-C5

Basé sur un cœur RISC-V pouvant monter jusqu'à 240 Mhz, ce module n'a pas d'unité d'accélération de chiffrement, mais gère par contre le WiFi 6.0 en double bande. Il permet l'utilisation de ESP-IDF, basé sur FreeRTOS[12].

  • 1 cœur RISC-V 32 bits jusqu'à 240 MHz
  • dual-band WiFi 6.0 802.11ax (largeur de bande 20MHz) en 2.4 GHz et 5.0 GHz, WiFi 4.0 802.11b/g/n (largeur 20MHz et 40MHZ)
  • Bluetooth 5.0 LE
  • Sur circuit intégré : 400 ko RAM, 384 ko ROM
  • Capteur de température et système d'horloge temps-réel (RTC).

ESP32-C6

Thumb
Carte utilisant un ESP32-C6

Comme le C3, il se base sur un processeur d'architecture RISC-V[13],[14].

  • 1 cœur RISC-V 32 bits jusqu'à 160 MHz
  • Extension d'accélération du chiffrement AES
  • IEEE 802.11ax (Wi-Fi 6) à 2.4 GHz, supportant une bande passante de 20 MHz dans le mode 11ax et 20 or 40 MHz de bande passante dans les modes 802.11b/g/n
  • Bluetooth 5.0 LE (2 Mbps)

ESP32-C61

Comme le C6, il se base sur un processeur d'architecture RISC-V[15],[16].

  • 1 cœur RISC-V 32 bits jusqu'à 160 MHz
  • Extension d'accélération du chiffrement AES, ECDSA-based Digital Signature (DS) peripheral, Trusted Execution Environment (TTE)
  • IEEE 802.11ax (Wi-Fi 6) à 2.4 GHz, supportant une bande passante de 20 MHz dans le mode 11ax et 20 ou 40 MHz de bande passante dans les modes 802.11b/g/n
  • Bluetooth 5.0 LE (2 Mbps) et BLE Mesh 1.1
  • Quad SPI PSRAM jusqu'à 120 MHz
  • module Event Task Matrix (ETM) module pour l'automatisation par déclencheur des tâches.

ESP32-P4

L'ESP32-P4 est une version comportant deux contrôleurs RISC-V à 400Mhz et un contrôleur RISC-V basse consommation à 40 Mhz, pour le mode veille[17],[18] :

  • 2 cœurs RISC-V 32 bits jusqu'à 400 MHz
  • 1 cœur RISC-V 32 bits jusqu'à 40 MHz
  • Un NPU, un décodeur H264 et JPEG, ainsi qu'un processeur géométrique 2D.
  • Accélération du chiffrement AES jusqu'à ECDSA.
  • Supporte ethernet, mais pas de réseau sans-fil.
  • Compatible MIPI I3C


Série ESP32-H

Tous les SoC de la série ESP32-H utilisent le jeu d'instruction RISC-V.

ESP32-H2

Également basé sur un cœur RISC-V 32 bits, orienté basse consommation et sécurité(en) « ESP32-H2 », sur Espressif.

  • IEEE 802.15.4
  • Thread, Zigbee, Bluetooth 5 (LE)

Outils de développement et systèmes

Il est notamment supporté par les outils de programmation suivants :

  • ESP-IDF (développement en C, avec outils en Python, se base sur FreeRTOS, c'est le système de développement de base ;
  • Apache NuttX, système compatible POSIX, porté sur ESP32-C3 (RISC-V) uniquement.
  • Arduino IDE avec le module ESP32 Arduino Core[19], interface en Java, développement en C++ ;
  • Espruino (en) ;
  • ESPHome, spécialisé domotique, comportant une interface web pour l'interaction ;
  • FAUST, langage de programmation de traitement de données audio, utilisant son DSP[20] ;
  • Lua RTOS pour ESP32 ;
  • MicroPython, une variante pour l'embarqué du langage Python ;
  • mruby (en), une variante pour l'embarqué du langage Ruby ;
  • NodeMCU ;
  • MicroEJ[21] ;
  • ESP32forth, programmation en Forth 32 bits pour ESP32[22]

Systèmes électroniques l'utilisant

IoT

  • Les Cartes IoT NodeMCU les plus récents utilisent ESP32-S à la place de ESP8266.
  • Le kit de développement modulaire M5Stack.
  • Les cartes IoT TTGO
  • Les cartes ESP32 d'uPesy[23]
  • Différents modules réseau sans fil, supportant LoRa, WiFi et Bluetooth, autonomes ou intégrés dans d'autres cartes de développement, telles que les cartes de Sipeed basés sur des processeurs RISC-V.

Synthétiseurs

L'ESP32 est adapté à la création des Synthétiseurs avancés, dont des synthétiseurs analogiques. Le langage FAUST ou la bibliothèque ESP32soundsynth permettent de faciliter le développement de synthétiseurs basés sur cette architecture[24]. L'échantillonnage utilisant l'ADC intégré peut être effectué via la plateforme de développement Arduino[25].

Il est notamment adapté à des synthétiseurs au format Eurorack, comme le CTAG-Strämpler[26],[27],[28].

Qun-synthesizer est un synthétiseur analogique portable, basé sur la carte ESP32-LyraT, fonctionnant avec la carte mère Nunomo[29].

Console de jeu portable

  • Hardkernel, a créé en 2018 Odroid-Go, une console de jeu portable à très bas prix basée sur cette puce.

Annexes

Wikiwand - on

Seamless Wikipedia browsing. On steroids.