7367802e63
Trois solutions : bouton BOOT, réduction vitesse upload, condensateur EN/GND. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
142 lines
4.9 KiB
Markdown
142 lines
4.9 KiB
Markdown
# 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 :**
|
|
1. Télécharger le pilote sur le site Silicon Labs : https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
|
|
2. Choisir **CP210x Windows Drivers**
|
|
3. Décompresser et lancer `CP210xVCPInstaller_x64.exe`
|
|
4. 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
|
|
|
|
1. Dans Arduino IDE : **Fichier → Préférences**
|
|
2. Dans le champ **URL de gestionnaire de cartes supplémentaires**, ajouter :
|
|
```
|
|
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
|
|
```
|
|
3. Valider avec OK
|
|
|
|
### 3b. Installer le paquet ESP32
|
|
|
|
1. **Outils → Type de carte → Gestionnaire de cartes**
|
|
2. Rechercher `esp32`
|
|
3. Sélectionner **esp32 by Espressif Systems** → **Installer**
|
|
4. Attendre la fin du téléchargement (~200 Mo)
|
|
|
|
### 3c. Sélectionner la carte
|
|
|
|
1. **Outils → Type de carte → esp32 → ESP32 Dev Module**
|
|
2. **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)
|
|
|
|
1. Cliquer sur **Téléverser** dans l'IDE
|
|
2. Attendre que la console affiche `Connecting........`
|
|
3. **Appuyer et maintenir le bouton BOOT** (marqué IO0 sur la carte)
|
|
4. 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)**
|
|
|
|
1. **Outils → Gérer les bibliothèques**
|
|
2. Rechercher `ESPAsyncWebServer` → si la version `me-no-dev` est installée, cliquer **Désinstaller**
|
|
3. Faire de même pour `AsyncTCP` de `me-no-dev`
|
|
|
|
**Étape 2 — Installer depuis le gestionnaire Arduino**
|
|
|
|
1. **Outils → Gérer les bibliothèques**
|
|
2. Rechercher `ESP32AsyncTCP` → installer **ESP32AsyncTCP by Mathieu Carbou**
|
|
3. 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.
|