Table des matières

ESP32

Un site de simulation de l'ESP32 ( entre autre…) https://wokwi.com/projects/new?lang=fr

ESP32 ---Arduino

Historique ESP32

Voici un tableau récapitulatif des principales différences techniques entre un ESP8266, un ESP32 , et un ESP32-C3 :

ESP8266 ESP32 ESP32-C3
MCU Xtensa Single-core 32-bit Xtensa Dual-Core 32-bit RISC-V 32-bits Single-Core
Wi-Fi HT20 (802.11 b/g/n) HT40 (802.11 b/g/n) 802.11.b b/g/n 2.4GHz
Bluetooth Non Oui (4.2 et BLE) BLE 5.0
Frequence 80Mhz 160 a 240 Mhz 160 Mhz
SRAM 64kB 520kB + 10 pour RTC 400kB
DRAM/ROM 96kB - 328kB - - 384kB
Flash 4mB 4mB – 16 mB 4mB
GPIO 17 36 22
Analog GPIO 1 18 2

Comparaison ESP32 et STM32

ESP 01

ESP01

ESP8266

ESP32-C3 RISC-V

le successeur de l'ESP8266

L'ESP32-C3 est un SoC à microcontrôleur Wi-Fi et Bluetooth 5 (LE) monocœur, basé sur l'architecture RISC-V open source. Il trouve le bon équilibre entre puissance, capacités d'E/S et sécurité, offrant ainsi la solution optimale et rentable pour les appareils connectés. La disponibilité de la connectivité Wi-Fi et Bluetooth 5 (LE) facilite non seulement la configuration de l'appareil, mais facilite également une variété de cas d'utilisation basés sur la double connectivité.

Les fonctionnalités incluent les suivantes :

Divers périphériques :

  1. -CAN 12 bits avec jusqu'à 18 canaux
  2. -TWAI compatible avec le bus CAN 2.0
  3. -Capteur de température
  4. -4x SPI
  5. -2x I2S
  6. -2x I2C
  7. -3x UART
  8. -Accélération matérielle cryptographique (RNG, ECC, RSA, SHA-2, AES)

ESP32 S3 EYES

L'ESP32-S3-EYE est une carte de développement d'IA de petite taille produite par Espressif. Il est basé sur le SoC ESP32-S3 et ESP-WHO, le framework de développement IA d'Espressif. Il dispose d'un appareil photo de 2 mégapixels, d'un écran LCD et d'un microphone, utilisés pour la reconnaissance d'images et le traitement audio. L'ESP32-S3-EYE offre beaucoup de stockage, avec une PSRAM octale de 8 Mo et une mémoire flash de 8 Mo. Il prend également en charge la transmission d'images via Wi-Fi et le débogage via un port Micro-USB. Avec ESP-WHO, vous pouvez développer une variété d'applications AIoT, telles que la sonnette intelligente, les systèmes de surveillance, l'horloge à reconnaissance faciale, etc.

ESP32 EYES Guide github EN

ESP32 S3 Eyes FR Article Elektor 12/2023

ESP32 -S3 CircuitPython EN

esp32 eyes

La carte ESP32-S3-EYE se compose de deux parties : la carte principale (ESP32-S3-EYE-MB) qui intègre le module ESP32-S3-WROOM-1, la caméra, l'emplacement pour carte SD, le microphone numérique, le port USB et la fonction boutons; et la sous-carte (ESP32-S3-EYE-SUB) qui contient un écran LCD. La carte principale et la sous-carte sont connectées via des embases à broches.

Le schéma fonctionnel ci-dessous présente les principaux composants de la carte principale ESP32-S3-EYE-MB (à gauche) et de la sous-carte ESP32-S3-EYE-SUB (à droite), ainsi que les interconnexions entre les composants.

Schema ESP32-S3-EYES pdf EN

ESP32

GPIO

Interruptions sur ESP32

Guide GPIO ESP32

L’I2C sur l’ESP32

L’ESP32 possède 2 bus I2C :

I2C.ino
    #include <Wire.h>
 
    TwoWire I2C1 = TwoWire(1);
 
    void setup() {
      I2C1.begin(14,12,400000); // SDA pin 14, SCL pin 12, 400kHz frequency
    }
 
    void loop() {
      I2C1.beginTransmission(0x42);
      I2C1.write(140);
      I2C1.endTransmission();
      delay(100);
    }

Esp32 LoraWan

Esp32 LoraWan

Effacer un esp32 avec esptool en python

Installer python 3.7.xx sous Windows10/11.pdf

Effacer un esp32 avec esptool sous linux.pdf

La procedure est la même sous linux ou windows 10/11 pour installer esptool et l'utiliser

Liens

Videos

Installation sur IDE Arduino

ESP8266

Une fois l'IDE installé, ouvrez le et rendez-vous dans les préférences. Dans la case “Additional Boards Manager URLs”, entrez l'adresse suivante :

http://arduino.esp8266.com/staging/package_esp8266com_index.json

ESP32

copier ce lien dans les préférences de l'IDE Arduino :

https://dl.espressif.com/dl/package_esp32_index.json

ESP32 et IDE Arduino

ESP32 ARDUINO

Resolution probleme sur Linux "import serial"

Processeurs:

  Processeur principal: microprocesseur LX6 32 bits Tensilica Xtensa
      Noyaux: 2 ou 1 (selon la variation)
      Toutes les puces de la série ESP32 sont à double cœur, à l’exception de ESP32-S0WD, à cœur unique.
      Fréquence d'horloge: jusqu'à 240 MHz
      Performance: jusqu'à 600 DMIPS 
  Co-processeur à très faible consommation: permet d'effectuer des conversions, des calculs et des seuils de niveau ADC en sommeil profond. 

Connectivité sans fil:

  Wi-Fi: 802.11 b / g / n / e / i (802.11n @ 2,4 GHz jusqu'à 150 Mbit / s)
  Bluetooth: v4.2 BR / EDR et Bluetooth Low Energy (BLE) 
  

Reconnecter ESP32 au WIFI après une connexion perdue

Reconnexion WIFI sur ESP32

Mémoire:

  Mémoire interne:
      ROM: 448 KiB
      Pour le démarrage et les fonctions de base.
      SRAM: 520 KiB
      Pour les données et les instructions.
      RTC rapide SRAM: 8 KiB
      Pour le stockage de données et le processeur principal lors du démarrage RTC à partir du mode veille profonde.
      RTC lente SRAM: 8 Ko
      Pour co-processeur accédant en mode veille profonde.
      eFuse: 1 Kibit
      Dont 256 bits sont utilisés pour le système (adresse MAC et configuration de la puce) et les 768 bits restants sont réservés aux applications client, y compris Flash-Encryption et Chip-ID.
      Flash intégré:
      Flash connecté en interne via IO16, IO17, SD_CMD, SD_CLK, SD_DATA_0 et SD_DATA_1 sur ESP32-D2WD et ESP32-PICO-D4.
          0 Mio (puces ESP32-D0WDQ6, ESP32-D0WD et ESP32-S0WD)
          2 Mio (puce ESP32-D2WD)
          4 Mio (module ESP32-PICO-D4 SiP) 
  Flash externe et SRAM: ESP32 prend en charge jusqu'à quatre flashs QSPI externes de 16 Mio et des SRAM avec chiffrement matériel basé sur AES pour protéger les programmes et les données des développeurs. L'ESP32 peut accéder à la mémoire flash QSPI externe et à la mémoire SRAM via des caches à grande vitesse.
      Jusqu'à 16 Mo de mémoire flash externe sont mappés en mémoire sur l'espace de code du processeur, prenant en charge l'accès 8 bits, 16 bits et 32 ​​bits. L'exécution du code est prise en charge.
      Jusqu'à 8 Mo de mémoire flash / SRAM externe sont mappés sur l'espace de données du processeur, prenant en charge l'accès 8 bits, 16 bits et 32 ​​bits. La lecture de données est prise en charge sur le flash et la SRAM. L'écriture de données est prise en charge sur la mémoire SRAM. 
  Les puces ESP32 avec flash intégré ne prennent pas en charge le mappage d'adresses entre les flashs externes et les périphériques. 
  

EEPROM et ESP32

C'est un peu différent de la classe EEPROM standard. Vous devez appeler EEPROM.begin(size)avant de commencer à lire ou à écrire, la taille étant le nombre d'octets que vous souhaitez utiliser. La taille peut être comprise entre 4 et 4 096 octets.

EEPROM.writen'écrit pas immédiatement dans la mémoire flash, mais vous devez appeler EEPROM.commit()chaque fois que vous souhaitez enregistrer les modifications dans la mémoire flash. EEPROM.end()s'engagera également et libérera la copie RAM du contenu de l'EEPROM.

La bibliothèque EEPROM utilise un secteur de flash situé juste après le système de fichiers intégré.

Trois exemples inclus.

Notez que le secteur doit être re-flashé chaque fois que les données EEPROM modifiées doivent être sauvegardées, donc épuisera la mémoire flash très rapidement même si de petites quantités de données sont écrites.

https://www.aranacorp.com/fr/utilisation-de-leeprom-avec-lesp32/

https://projetsdiy.fr/esp8266-comment-lire-ecrire-effacer-eeprom/

Enregistrer les données et les paramètres ESP32 en permanence

Entrée / sortie périphérique:

  1. Interface périphérique riche avec DMA qui inclut la technologie capacitive tactile,
  2. CAN (convertisseur analogique-numérique),
  3. DAC (convertisseur numérique-analogique),
  4. I²C (circuit inter-intégré),
  5. UART (récepteur / émetteur asynchrone universel ),
  6. CAN 2.0 (Controller Area Network),
  7. SPI (interface périphérique série),
  8. I²S (son inter-CI intégré),
  9. RMII (interface indépendante du support réduite),
  10. PWM (modulation de largeur d'impulsion),
  11. etc.

Sécurité:

Bibliotheques pour ESP32

Librairies pour ESP 32

Sur Github : les librairies ESP32

Une librairie ESP32 à étudier

Enregistrer les données et les paramètres ESP32 en permanence

Alimentation ESP32

Pour alimenter votre kit de développement ESP32, vous avez trois options:

  1. -Via le port USB.
  2. -Utilisation d'une tension non régulée entre 5V et 12V, connectée aux broches 5V et GND. Cette tension est régulée à bord.
  3. -Utilisation d'une tension régulée de 3,3 V, connectée aux broches 3,3 V et GND. Soyez très prudent avec cela: ne dépassez pas la limite de 3,3V, ou votre module ESP32 sera endommagé.

Attention : soyez très, très prudent de n'utiliser qu'une seule de ces options à la fois.

Par exemple, n'alimentez pas votre kit de développement ESP32 via la broche 5V en utilisant une entrée 10V alors qu'en même temps vous avez le module connecté à votre ordinateur via USB. Cela endommagera sûrement votre module, et peut-être même votre ordinateur.

Alimentation autonome pour ESP32

ESP32 ou esp8266 en mode autonome

esp32-alimente-par-batterie

Meilleur batterie pour ESP32

ESP 32 Alimentation autonome

Mode Veille profond sur ESP32

Guide pour réduire la consommation d'énergie de l'ESP32 de 95%

Les sleep modes de l’ESP32 et Programmation d’un ESP32 Basic Over The Air (OTA) avec l’IDE arduino

Mode deep sleep (Sommeil profond) sur ESP32

Produits à tester

Regulateur 3.3v à partir de batteries 1.2V

Réaliser un chargeur solaire

alimentation-autonome-de-petits-projets-electroniques

Chargeur batterie Lithium

Tutoriel ESP32 Deep Sleep

PCF8574 Multiplexeur IO

PCF8574

ESP NOW

ESP NOW

RIOT : OS pour l'internet des objets

RIOT

MQTT Protocole Iot

MQTT

MQTT et ESP32

FREERTOS : OS pour ESP32

FREERTOS

Objets connectes

Debuter projet Objets connecté

Interface Web pour ESP32

Les_reseaux_informatiques_par_la_pratique_ed1_v1.pdf Demande au Castellab pour l'emprunter

Station Météo ESP32

Station météo bricolage avec ESP32

Construire-un-pluviometre-usb

ESP32 arrosage automatique

arrossage_automatique

Tasmota

Tasmota

Projets en cours sur ESP32/ESP8266

ESP32/ESP8266 projets en cours

Esp32 cam

Camera de surveillance ESP32

Esp32 cam avec envoi SMS

esp32-cam-avec-arduino

5 astuces pour ESP32-CAM

ESP32 cam

ESP32-CAM: gestion à distance de la carte SD Programme .ino : esp32cam SD

Caméra de surveillance avec MAIL avec l’Esp32cam

Esp32 cam Github

ESP32 et telegram

Esp32 et Telegram

Propositon formation ESP32

Cours ESP 32

M5stack

M5stack

Iot-Cricket

Iot-Cricket

Protocole Iot : MQTT

MQTT

Micropython pour ESP32

micropython pour ESP32 FR

Doc FR en PDF MicroPython et ESP32

ESP32 SmartHome

Esp32 SmartHome

ESP32 Travaux pratiques

* TP ESP32 Tasmota MQTT Nodered