Trois solutions : bouton BOOT, réduction vitesse upload, condensateur EN/GND. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
4.9 KiB
Annexe — Installation de l'environnement de développement (Windows 10)
1. Arduino IDE
Télécharger et installer la dernière version depuis le site officiel : 👉 https://www.arduino.cc/en/software
Choisir Windows Win 10 and newer, 64 bits (installeur .exe).
2. Pilote CP2102 (USB → UART)
Le DevKit V1 utilise une puce Silicon Labs CP2102 pour la communication USB/série. Windows 10 ne l'installe pas toujours automatiquement.
Vérification : brancher l'ESP32 en USB → ouvrir le Gestionnaire de périphériques → si le port COM n'apparaît pas (ou apparaît avec un !), le pilote est absent.
Installation :
- Télécharger le pilote sur le site Silicon Labs : https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
- Choisir CP210x Windows Drivers
- Décompresser et lancer
CP210xVCPInstaller_x64.exe - Débrancher / rebrancher l'ESP32 → un port COMx apparaît dans le Gestionnaire de périphériques
3. Support ESP32 dans Arduino IDE
Le support ESP32 ne fait pas partie d'Arduino IDE par défaut — il faut ajouter le gestionnaire de cartes Espressif.
3a. Ajouter l'URL du gestionnaire de cartes
- Dans Arduino IDE : Fichier → Préférences
- Dans le champ URL de gestionnaire de cartes supplémentaires, ajouter :
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json - Valider avec OK
3b. Installer le paquet ESP32
- Outils → Type de carte → Gestionnaire de cartes
- Rechercher
esp32 - Sélectionner esp32 by Espressif Systems → Installer
- Attendre la fin du téléchargement (~200 Mo)
3c. Sélectionner la carte
- Outils → Type de carte → esp32 → ESP32 Dev Module
- Outils → Port → sélectionner le port COMx du DevKit
4. Vérification
Ouvrir Fichier → Exemples → WiFi → WiFiScan, téléverser. Si la compilation et le téléversement réussissent sans erreur, l'environnement est opérationnel.
4b. Erreur d'upload — Wrong boot mode detected
Symptôme
A fatal error occurred: Wrong boot mode detected (0x...) !
The chip needs to be in download mode.
Cause
L'ESP32 DevKit V1 n'entre pas automatiquement en mode bootloader. Le circuit d'auto-reset (RTS/DTR → EN/IO0) ne fonctionne pas toujours correctement.
Solution 1 — Bouton BOOT (la plus courante)
- Cliquer sur Téléverser dans l'IDE
- Attendre que la console affiche
Connecting........ - Appuyer et maintenir le bouton BOOT (marqué IO0 sur la carte)
- Relâcher dès que la barre de progression démarre
Solution 2 — Réduire la vitesse d'upload
Outils → Upload Speed → 115200
Relancer l'upload (avec ou sans bouton BOOT selon le résultat).
Solution 3 — Condensateur sur EN (permanent)
Souder un condensateur 10 µF entre la broche EN et GND de la carte. Cela améliore le circuit d'auto-reset et évite d'avoir à appuyer sur BOOT à chaque upload.
5. Bibliothèques du projet
À installer via Outils → Gérer les bibliothèques :
| Nom dans le gestionnaire | Auteur | Usage |
|---|---|---|
| HX711 | bogde | Lecture du capteur |
| ESPAsyncWebServer | Mathieu Carbou | Serveur web asynchrone |
| ESP32AsyncTCP | Mathieu Carbou | Dépendance d'AsyncWebServer |
⚠️ Ne pas installer la version de
me-no-dev— elle n'est plus maintenue et provoque une erreur de compilation avec le SDK ESP32 v3.x (voir ci-dessous).
6. Erreur de compilation — ESPAsyncWebServer incompatible
Symptôme
WebAuthentication.cpp: error: 'mbedtls_md5_starts_ret' was not declared in this scope
Cause
Le SDK ESP32 v3.x a supprimé les fonctions mbedTLS suffixées _ret
(mbedtls_md5_starts_ret, mbedtls_md5_update_ret, mbedtls_md5_finish_ret).
La bibliothèque ESPAsyncWebServer de me-no-dev utilise ces fonctions obsolètes et n'est plus maintenue.
Solution
Désinstaller la version me-no-dev et installer le fork maintenu via ZIP (ces bibliothèques ne sont pas toujours disponibles dans le gestionnaire Arduino) :
Étape 1 — Désinstaller l'ancienne version (si présente)
- Outils → Gérer les bibliothèques
- Rechercher
ESPAsyncWebServer→ si la versionme-no-devest installée, cliquer Désinstaller - Faire de même pour
AsyncTCPdeme-no-dev
Étape 2 — Installer depuis le gestionnaire Arduino
- Outils → Gérer les bibliothèques
- Rechercher
ESP32AsyncTCP→ installer ESP32AsyncTCP by Mathieu Carbou - Rechercher
ESPAsyncWebServer→ installer ESPAsyncWebServer by Mathieu Carbou
Étape 3 — Relancer la compilation
Le fork de Mathieu Carbou est compatible SDK ESP32 v3.x et maintenu activement.