====== ESP ======
{{ ::electronique:esp32.png?75x75|ESP}}

Les **ESP** (Espressif Systems Processor) sont des microcontrôleurs avec un module **Wi-Fi intégré**, conçus pour le développement **IoT** (Internet of Things). Ils sont souvent utilisés pour la conception de produits intelligents pour la maison, la vie personnelle et l'industrie. Les **ESP** peuvent être programmés à l'aide d'un environnement de développement intégré (IDE) similaire à celui d'**Arduino**, ce qui en fait un choix populaire pour les développeurs débutants et expérimentés. Il existe plusieurs familles d'**ESP**, chacune avec ses propres caractéristiques et fonctionnalités uniques, telles que la mémoire flash, la RAM, les ports GPIO, etc. Les produits les plus populaires de la famille **ESP** incluent l'**ESP8266** et l'**ESP32**.



===== Comparaison des differéntes familles =====

^                         ^ ESP8266                    ^ ESP32                      ^ ESP32-C3                                                                            ^
^ Date de sortie          | 2014                       | 2016                       | 2020                                                                                |
^ MCU                     | Xtensa Single-Core 32-bit  | Xtensa Dual-Core 32-bit    | RISC-V 32-bit Single-Core                                                           |
^ Fréquence               | 80 MHz                     | 160 à 240 MHz              | 160 MHz                                                                             |
^ RAM / SRAM              | 160 Ko                     | 520 Ko                     | 400 Ko                                                                              |
^ Wifi                    | 802.11b/g/n (max 65Mbps)   | 802.11b/g/n                | 802.11b/g/n                                                                         |
^ Bluetooth               | non                        | 4.2 et BLE                 | 5.0 et BLE                                                                          |
^ ESP Mesh                | oui                        | oui                        | oui                                                                                 |
^ Capteur T° integré      | non                        | oui                        | oui                                                                                 |
^ Capteur Effet Hall      | non                        | oui                        | non                                                                                 |
^ GPIO                    | 17                         | 36                         | 22                                                                                  |
^ Crypto Support          | non                        | AES, SHA-2, RSA, ECC, RNG  | AES-128/256, RSA Accelerator, SHA Accelerator, Random Number Generator (RNG), HMAC  |
^ Consommation en veille  | 20 µA                      | 5 µA                       | 5 µA\\ 1 µA en mode arrêt                                                           |




===== Table des matières =====

  * [[.:|Introduction]]
--


** ESP8266 ** : un microcontrôleur Wi-Fi à faible coût utilisé pour construire des projets IoT (Internet des objets) et domotiques.

  * [[.:programmer-esp-avec-arduino-ide]]
  * [[.:specifications-ESP-8266]]

  * [[https://arduino-esp8266.readthedocs.io/en/latest/|ESP8266 Arduino Core’s documentation]]
  * [[https://github.com/esp8266/Arduino|Arduino core for the ESP8266]]

  * **ESP-01**
  * [[.:specifications-ESP-01]]
  * [[.:premier-programme-esp01]]

  * ** ESP-12F **
  * [[.:doiting-esp-12f:]]


**ESP32** : un autre microcontrôleur Wi-Fi et Bluetooth doté de plus de mémoire et de puissance de traitement que l'ESP8266.


  * ** Infos concernant la Famille des ESP32 **
  * [[.:programmer-esp32-avec-arduino-ide]]
  * [[https://github.com/espressif/arduino-esp32|Arduino core for the ESP32]]
  * [[https://docs.espressif.com/projects/esp-idf/en/latest/esp32/index.html|ESP32 Programming Guide]]

  * ** Infos concernant la Famille des ESP32-S **
  * [[.:programmer-esp32-avec-arduino-ide]]
  * [[https://docs.espressif.com/projects/esp-idf/en/latest/esp32s2/index.html|ESP32-S2 Programming Guide]]
  * [[https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/index.html|ESP32-S3 Programming Guide]]

  * ** Infos concernant la Famille des ESP32-C **
  * [[.:programmer-esp32-avec-arduino-ide]]
  * [[.:specifications-ESP32-C3]]
  * [[https://docs.espressif.com/projects/esp-idf/en/latest/esp32c3/index.html|ESP32-C3 Programming Guide]]

  * **ESP32-H2**
  * [[.:specifications-ESP32-H2]]

**Adaptateurs USB vers ESP** : des dispositifs permettant de connecter des ESP à un ordinateur via USB pour la programmation et le débogage.

  * [[.:adapteur-usb-esp01]]

**Programmation de l'ESP** : comment écrire et charger du code sur l'ESP pour contrôler les périphériques connectés.

  * [[.:installer-logiciel-arduino-ide]]

**Communiquer avec l'ESP**

  * [[.:communiquer-avec-un-ESP-32]]
  * [[.:se-connecter-a-un-reseau-wifi]]
  * [[.:creer-un-point-d-acces]]
  * [[.:wifi-manager]]

Les commandes AT
  * [[.:esp8266-commandes-at]]
  * [[.:esp8266ex-restore-commandes-at]]

SPIFFS
  * [[electronique:esp:telechargement-de-donnees-esp32-spiffs]]

Mise à jour OTA
  * [[electronique:esp:mises-a-jour-ota-over-the-air-de-l-esp32]]

IRemote
  * [[electronique:esp:iremote]]

Serveur NTP
  * [[electronique:esp:serveur-ntp]]

**Interaction de l'ESP avec d'autres périphériques** : comment utiliser l'ESP pour contrôler des appareils tels que des moteurs, des capteurs et des écrans.



**Sécurité de l'ESP** : comment protéger les projets IoT contre les attaques en ligne en utilisant des techniques telles que le cryptage et l'authentification.




--

** [[Références et bibliographies Arduino et ESP]] **

--