Guides · 15 min de lecture

Cours ESP32 première séance : préparation et déroulé de 40 min

Cours ESP32 : à la première séance, chaque groupe téléverse du code et allume une LED. Check-list, matériel pour 24, déroulé de 40 min, code et 8 pannes.

Quand tu prépares un cours ESP32, réduis la première séance à un seul objectif : à la fin, chaque groupe a téléversé du code sur son propre ESP32 et allumé une LED. Le Wi-Fi, les capteurs et le pilotage depuis le téléphone viendront plus tard. Que 40 minutes suffisent dépend moins de ce que tu fais pendant le cours que de ce que tu fais avant : le pilote USB-série est-il installé, le paquet de cartes ESP32 est-il dans l'Arduino IDE, le câble sur la table transporte-t-il vraiment des données ? Si ces trois points sont réglés, le premier téléversement prend cinq minutes ; sinon, la moitié de la séance passe en "je ne vois pas le port".

Tu trouveras ici un kit à emporter en classe dès demain : une check-list copiable pour une semaine avant, la veille et le matin du cours, un tableau du matériel, un déroulé de 40 minutes minute par minute, deux programmes qui compilent, cinq différences entre l'ESP32 et l'Arduino Uno, des solutions d'une minute aux huit pannes les plus fréquentes et des questions de sortie. Disons que tu as une classe de 24 élèves répartis en 8 groupes de trois ; tous les chiffres partent de là. Si ta séance dure 50 ou 55 minutes, le reste te sert de marge. Si l'ESP32 est encore nouveau pour toi, lis d'abord qu'est-ce que l'ESP32.

Carte ESP32 DevKit 30 broches : port Micro-USB, boutons BOOT et EN, module ESP32-WROOM-32 et deux rangées de broches
La carte de la première séance : un ESP32 DevKit 30 broches. Avant de commencer, repérez ensemble sur la carte le port USB, les boutons BOOT et EN et les broches D5, GND et 3V3.

Objectif de la première séance : pourquoi une seule LED ?

Pour une première séance ESP32, deux options s'offrent à toi : montrer un projet Wi-Fi impressionnant, ou faire fonctionner quelque chose de petit à chacun, de ses propres mains. La seconde apprend bien davantage. Pour allumer une LED, l'élève doit parcourir une fois toute la chaîne du début à la fin : ouvrir le code, choisir la carte et le port, compiler, téléverser, câbler, voir le résultat, puis modifier une valeur et téléverser à nouveau. Une fois que cette chaîne fonctionne, les séances suivantes ne font qu'ajouter de nouveaux composants. Si tu passes au Wi-Fi avant, mot de passe réseau, pilote et câble s'empilent, et savoir d'où vient l'erreur devient presque impossible. C'est pourquoi ce plan n'utilise aucun réseau à la première séance : d'abord la LED interne de la carte, puis une seule LED externe sur la plaque d'essai et, pour les groupes rapides, les deux en alternance.

Check-list de préparation avant le cours

Découpe la préparation en trois moments. Tu peux copier la liste, l'imprimer ou la transmettre au référent informatique de l'établissement ; les tâches qui demandent des droits administrateur, comme l'installation de pilotes et de logiciels, passent par lui dans la plupart des établissements. Une semaine avant :

  • Compte les cartes et vérifie le modèle. Ce plan est écrit pour l'ESP32 DevKit 30 broches (module ESP32-WROOM-32) ; sur les cartes 38 broches le code est le même, seul l'ordre des broches change.
  • Lis la petite puce à côté du port USB de la carte : CP2102, CH340 ou CH9102 ? C'est elle qui détermine le pilote nécessaire.
  • Fais installer Arduino IDE 2 sur les ordinateurs de la salle. Sur les postes de l'établissement, l'installation demande souvent des droits administrateur : prends rendez-vous avec l'informatique.
  • Dans l'Arduino IDE, installe le paquet esp32 by Espressif Systems depuis le gestionnaire de cartes. Il télécharge plusieurs centaines de mégaoctets ; sur le réseau de l'établissement, 40 minutes risquent de ne pas suffire si tu le fais en cours.
  • Installe le pilote USB-série, branche une carte et vérifie qu'un nouveau port apparaît dans Outils > Port.
  • Teste tes câbles : téléverse une fois sur une carte avec chacun d'eux, écarte les câbles de charge et marque les câbles de données avec du ruban de couleur.
  • Enfiche un ESP32 sur une plaque d'essai et regarde s'il reste des trous libres des deux côtés. Sinon, chaque groupe aura deux plaques.
  • Renseigne-toi sur les limites du réseau de l'établissement : l'ESP32 ne se connecte qu'au Wi-Fi 2,4 GHz, et les réseaux d'entreprise avec identifiant et mot de passe posent problème. Tu n'utiliseras pas le Wi-Fi à la première séance, mais tu as besoin de cette information dès maintenant pour la suite.
Le piège du câble de charge : une partie des câbles Micro-USB et USB-C du tiroir ne sert qu'à charger et n'a pas de fils de données. Avec un tel câble, la LED d'alimentation de la carte s'allume, l'élève croit que tout fonctionne, mais aucun port n'apparaît jamais dans l'Arduino IDE. La première chose à faire pour un groupe qui dit "pas de port" est de changer de câble. Marque les câbles de données testés et n'utilise pas les câbles apportés de la maison à la première séance.

La veille, chaque ordinateur doit être prêt ; le but est qu'aucune étape d'installation ne se fasse pour la première fois en cours. Garde aussi dix minutes pour le matin du cours. Les deux listes sont réunies ici :

  • La veille : Fais un téléversement de test sur chaque ordinateur. Branche la carte, choisis ESP32 Dev Module et le port, téléverse le programme de la LED interne et vérifie qu'elle clignote. La première compilation peut dépasser une minute ; ce test accélère aussi les suivantes.
  • La veille : Sous Windows, colle sur le côté de l'ordinateur une étiquette avec le numéro de port (COM3, COM5…). La même carte sur la même prise USB reçoit en général le même numéro.
  • La veille : Prépare les boîtes de groupe : carte, câble, plaque d'essai, deux LED, deux résistances de 220 Ω, quatre fils de liaison. Garde le kit de secours sur le bureau.
  • La veille : Enregistre les deux programmes sur le bureau de chaque ordinateur ; si internet ralentit, les élèves ouvrent le code depuis là.
  • La veille : Vérifie que le projet Clignotement de la LED interne de l'ESP32 s'ouvre dans BlueGrays sur le vidéoprojecteur.
  • Le matin : Allume les ordinateurs, ouvre l'Arduino IDE et vérifie que la carte est toujours réglée sur ESP32 Dev Module.
  • Le matin : Dessine au tableau un schéma simple de la carte : port USB, BOOT, EN, GND, 3V3 et GPIO5 (marqué D5 sur la carte).
  • Le matin : Écris une ligne dans un coin du tableau : "Bloqué sur Connecting... ? Maintiens BOOT."
  • Le matin : Compte une dernière fois les LED et les résistances dans les boîtes et pose les câbles dessus.

Pilote, paquet de cartes et BOOT : les détails à connaître

Dans le gestionnaire de cartes de l'Arduino IDE, tu peux voir deux paquets ESP32. Pour les cartes de la classe, le bon est le paquet esp32 d'Espressif ; celui nommé "Arduino ESP32 Boards" est destiné à la Nano ESP32 d'Arduino. Après l'installation, choisis ESP32 Dev Module dans Outils > Carte > esp32. Si le paquet n'apparaît pas dans la liste, il faut ajouter l'adresse du paquet d'Espressif dans les URL de gestionnaire de cartes supplémentaires, dans les Préférences ; les étapes sont dans qu'est-ce que l'ESP32. Les programmes ESP32 compilent plus lentement que ceux de l'Uno ; même pour une LED clignotante, la première compilation peut dépasser une minute. Préviens les élèves dès le départ, sinon ils cliqueront encore et encore sur Téléverser pendant que la barre semble figée. La puce USB-série de la carte décide du pilote à installer :

Puce USB-sérieComment la reconnaître sur la carteNom du port sous WindowsRemarque
CP2102 / CP2104Petite puce carrée à côté du port USB, marquée CP2102 ou SiLabsSilicon Labs CP210x USB to UART Bridge (COMx)Windows installe souvent le pilote seul ; sinon, il faut le pilote CP210x de Silicon Labs
CH340 (CH340C, CH340G)Puce rectangulaire marquée CH340USB-SERIAL CH340 (COMx)Nécessite le pilote CH340 de WCH ; Windows Update l'installe parfois automatiquement
CH9102Petite puce carrée sur les cartes récentes, marquée CH9102USB-Enhanced-SERIAL CH9102 (COMx)Nécessite le pilote CH9102/CH343 de WCH ; le pilote CH340 ne reconnaît pas cette puce

Le bouton BOOT est relié à la broche GPIO0 de l'ESP32. Au début d'un téléversement, la carte doit passer en mode programmation ; la plupart des DevKit le font seuls grâce à deux signaux de la puce USB-série. Avec certaines combinaisons de carte et de câble, ce passage automatique échoue : les points de "Connecting..." s'allongent et l'erreur "Failed to connect to ESP32" finit par apparaître. La solution : maintenir BOOT dès que "Connecting..." s'affiche, puis relâcher quand les lignes de progression commençant par "Writing at" défilent. Le bouton EN redémarre la carte ; si le téléversement est terminé mais que le code ne semble pas tourner, une pression sur EN suffit. Si le problème revient toujours sur la même carte, baisser Upload Speed dans le menu Outils de 921600 à 115200 règle souvent l'affaire. Sous macOS, le nom du port commence généralement par cu.usbserial ou cu.SLAB_USBtoUART.

N'utilise pas le Wi-Fi à la première séance. L'ESP32 ne se connecte qu'aux réseaux 2,4 GHz ; les réseaux scolaires demandent souvent un identifiant et un mot de passe ou ouvrent une page de connexion dans le navigateur, et l'ESP32 ne sait pas passer ces pages. Le jour de la séance Wi-Fi, le plus pratique est un point d'accès personnel sur le téléphone de l'enseignant, réglé sur la bande 2,4 GHz. Teste-le aussi la veille avec ta propre carte.

Liste du matériel : par groupe et pour une classe de 24

En répartissant 24 élèves par groupes de trois, tu obtiens 8 groupes ; avec un kit de secours, tu prépares 9 kits. Si tu préfères des binômes, il faut 12 groupes plus un secours, soit 13 kits, et davantage d'ordinateurs. Aucun composant ne demande de soudure. Deux LED et deux résistances par groupe, pour une raison simple : une LED montée à l'envers ou une patte cassée arrive très souvent à la première séance, et aucun groupe ne doit attendre.

MatérielPar groupePour la classe (8 groupes + 1 secours)Remarque
ESP32 DevKit (30 broches, ESP32-WROOM-32)19Un seul modèle ; des modèles mélangés brouillent l'ordre des broches
Câble USB de données (Micro-USB ou USB-C selon la carte)1112 câbles de secours ; tous testés et marqués
Plaque d'essai (830 points)192 par groupe si la carte ne tient pas (18 pour la classe)
LED rouge 5 mm220Une LED rouge s'allume bien en 3,3 V
Résistance 220 Ω220Anneaux de couleur : rouge-rouge-marron
Fil de liaison mâle-mâle4environ 40Toujours du noir pour GND
Ordinateur avec Arduino IDE et paquet ESP3218 + l'ordinateur de l'enseignantÉtiqueté avec le numéro de port
Téléphone ou tablette avec BlueGrays ouvert1 (facultatif)8Pour lire le schéma et le code ; le vidéoprojecteur suffit aussi
Boîte ou sachet de composants19À la fin, tout récupérer en comptant
Un ESP32 DevKit 30 broches couvre presque toute une plaque d'essai standard et ne laisse qu'une rangée de trous d'un côté. Enfiche la carte de sorte que le côté des broches D5 et GND ait des trous libres, et monte la LED et la résistance de ce côté. Sur cette carte, D5, GND et 3V3 sont sur la même rangée : le circuit de la première séance tient d'un seul côté. Si la place manque encore, mets deux plaques côte à côte et place chaque rangée de broches de la carte sur l'une d'elles. Pour retirer la carte, soulève les deux extrémités en même temps afin de ne pas tordre les broches.

Le déroulé de la séance de 40 minutes

Le déroulé s'appuie sur deux projets BlueGrays gratuits : d'abord Clignotement de la LED interne de l'ESP32 (pas de circuit, juste la carte et le câble), puis Clignotement LED avec ESP32 (GPIO5, une résistance de 220 Ω et une LED). Pour les deux projets, la liste des composants, le schéma, le code, les blocs et Comprendre le code sont ouverts gratuitement. Distribue trois rôles par groupe et fais-les tourner à chaque étape : un au clavier, un au câblage, un qui lit le schéma et le code sur le téléphone ou au vidéoprojecteur. Ainsi, personne ne passe 40 minutes à simplement regarder.

MinuteÉtapeEnseignantÉlèves
0–4Accroche et objectifMontre la carte et annonce l'unique objectif : "Avant la sonnerie, chaque groupe téléverse son propre code et allume une LED." Signale que la carte a le Wi-Fi comme un téléphone, mais qu'on ne s'en servira pas aujourd'hui.Se répartissent les rôles, ouvrent la boîte, comptent les composants.
4–9Découvrir la carteAvec le schéma au tableau, montre le port USB, les boutons BOOT et EN et les broches GND, 3V3 et GPIO5 ; donne l'avertissement sur les 3,3 V.Repèrent ces points sur leur carte et cherchent la LED interne.
9–17Premier téléversement : LED interneOuvre au vidéoprojecteur le projet Clignotement de la LED interne de l'ESP32, montre une fois le choix de la carte et du port, rappelle la consigne BOOT.Ouvrent ou copient le code, choisissent ESP32 Dev Module et le port, téléversent ; la LED clignote une fois par seconde.
17–21Changer une valeurDemande : "Que se passe-t-il si vous écrivez 200 au lieu de 1000 ?" et fait d'abord prédire.Donnent leur prédiction, modifient les deux valeurs de delay(), téléversent à nouveau et comparent avec la prédiction.
21–31Circuit avec LED externeProjette le schéma de Clignotement LED avec ESP32, montre la patte longue de la LED et la place de la résistance, passe dans les groupes et vérifie chaque circuit USB débranché.Débranchent l'USB, câblent GPIO5 → 220 Ω → patte longue de la LED, patte courte → GND, puis téléversent après le feu vert de l'enseignant.
31–35Mini-défiDonne aux groupes rapides une tâche en plus : faire clignoter la LED interne et la LED externe en alternance. Avec un groupe bloqué, vérifie d'abord le câble et le sens de la LED.Mettent les deux broches en sortie, éteignent l'une pendant que l'autre est allumée ; les groupes qui ont fini passent à la tâche À toi de jouer de Comprendre le code.
35–38RangementFait débrancher les USB et compter les composants.Démontent le circuit et rangent les composants en les comptant.
38–40Questions de sortieÉcrit les quatre questions au tableau ou les pose à l'oral.Répondent brièvement sur un papier qu'ils remettent en sortant.
Blocs en français du projet Clignotement de la LED interne de l'ESP32 : définition BUILTIN_LED_PIN = 2, broche en sortie dans l'initialisation, écriture de HIGH et LOW dans la boucle et attente de 1000 ms
Les blocs du premier téléversement. Projetée à côté du code, cette image montre tout de suite que le bloc de définition correspond à la ligne int, le bloc d'initialisation à setup() et le bloc de répétition à loop().

Le code : LED interne et LED externe

Les deux programmes ci-dessous utilisent les mêmes broches et les mêmes durées que les projets de l'application et compilent directement dans l'Arduino IDE avec ESP32 Dev Module sélectionné. Le premier fait clignoter la LED de la carte une fois par seconde. Sur la plupart des cartes ESP32 DevKit, cette LED bleue est reliée à GPIO2. Sur l'Arduino Uno, la LED interne était sur la broche 13 ; les élèves qui ont déjà utilisé un Uno taperont peut-être 13 par habitude, alors signale la différence tôt.

C++ (Arduino IDE)
1// ESP32 Dahili LED Yakma / ESP32 built-in LED blink
2// Çoğu ESP32 DevKit kartında dahili LED GPIO2'dedir / On most ESP32 DevKit boards the built-in LED is on GPIO2
3int BUILTIN_LED_PIN = 2;   // Kartına göre değişebilir / May differ on your board
4
5void setup() {
6  pinMode(BUILTIN_LED_PIN, OUTPUT);   // Pini çıkış yap / Set the pin as output
7}
8
9void loop() {
10  digitalWrite(BUILTIN_LED_PIN, HIGH);   // LED'i yak / Turn the LED on
11  delay(1000);                           // 1 saniye bekle / Wait 1 second
12  digitalWrite(BUILTIN_LED_PIN, LOW);    // LED'i söndür / Turn the LED off
13  delay(1000);                           // 1 saniye bekle / Wait 1 second
14}
15

Le circuit du second programme : de GPIO5 vers une extrémité de la résistance de 220 Ω, de l'autre extrémité de la résistance vers la patte longue de la LED (anode), et de la patte courte (cathode) vers GND. La broche de l'ESP32 fournit 3,3 V ; une LED rouge en consomme environ 2 V, et les 1,3 V restants à travers 220 Ω font passer environ 6 mA. C'est assez pour une LED bien visible et cela ne force pas la broche. Avec une autre couleur, vérifie la résistance avec le calculateur de résistance pour LED. Dans le mini-défi, les groupes rapides combinent les deux programmes : dans setup(), les deux broches passent en sortie, et dans loop(), l'une est à HIGH pendant que l'autre est à LOW.

C++ (Arduino IDE)
1// ESP32 ile LED Yakma: harici LED / ESP32 external LED blink
2// Bağlantı: GPIO5 -> 220 Ω direnç -> LED uzun bacak (+), kısa bacak (-) -> GND
3// Wiring: GPIO5 -> 220 ohm resistor -> LED long leg (+), short leg (-) -> GND
4const int LED_PIN = 5;   // Harici LED pini (kartta D5) / External LED pin (D5 on the board)
5
6void setup() {
7  pinMode(LED_PIN, OUTPUT);   // Pini çıkış yap / Set the pin as output
8}
9
10void loop() {
11  digitalWrite(LED_PIN, HIGH);   // Pin 3,3 V verir, LED yanar / Pin outputs 3.3 V, LED on
12  delay(500);                    // Yarım saniye bekle / Wait half a second
13  digitalWrite(LED_PIN, LOW);    // Pin 0 V verir, LED söner / Pin outputs 0 V, LED off
14  delay(500);                    // Yarım saniye bekle / Wait half a second
15}
16
La LED interne n'est pas sur GPIO2 sur toutes les cartes. Certaines, comme la DevKitC d'Espressif elle-même, n'ont qu'une LED rouge d'alimentation et aucune LED programmable ; sur d'autres, la LED est reliée à une autre broche. Si la LED ne clignote pas lors du test, regarde le brochage de ta carte ; s'il n'y a pas de LED interne, ce groupe passe directement à l'étape de la LED externe. Un seul modèle pour tout le kit de classe évite ces surprises dès le départ.

5 différences entre l'ESP32 et l'Arduino Uno

Une partie de tes élèves a peut-être déjà utilisé un Arduino Uno. Le code s'écrit dans le même langage Arduino et setup() et loop() sont toujours là, mais le matériel est différent, et la plupart des erreurs de la première séance viennent de ces différences. Tu peux présenter ces cinq points en quelques minutes pendant la découverte de la carte. Pour une comparaison plus détaillée, consulte Arduino ou ESP32.

SujetArduino UnoESP32 DevKitCe que cela veut dire en cours
Tension logique5 V3,3 V ; les broches ne tolèrent pas le 5 VNe jamais mettre 5 V sur un GPIO ; avant de brancher un module 5 V, vérifier sa tension de sortie
Numéros de brochesD0–D13 et A0–A5On utilise le numéro GPIO ; la broche marquée D5 sur la carte est 5 dans le codeLe nombre dans le code est le GPIO de la carte, pas la position comptée depuis le bord
Broches en entrée seuleAucune ; toutes les broches numériques peuvent être des sortiesGPIO34, 35, 36 (VP) et 39 (VN) sont en entrée seule et n'ont pas de résistances de pull-up internes ; GPIO6–11 sont reliées à la mémoire flashUne LED sur 34 ne s'allumera jamais ; à la première séance, rester sur GPIO2 et GPIO5
Boutons BOOT et ENUn seul bouton reset ; le téléversement démarre tout seulBOOT (GPIO0) pour le mode programmation, EN pour redémarrerSi "Connecting..." traîne, on maintient BOOT ; si le code ne semble pas tourner, on appuie sur EN
Sans filAucunWi-Fi 2,4 GHz et Bluetooth (Classic et BLE) intégrésPas utilisé à la première séance ; testé plus tard avec un point d'accès sur téléphone, selon le réseau de l'établissement

Les 8 pannes les plus fréquentes en cours et leur solution en une minute

SymptômeCause probableSolution en une minute
Le menu Outils > Port est vide ou griséCâble de charge ou pilote manquantEssayer un câble de données marqué ; si le port manque toujours, chercher le nom de la puce dans le Gestionnaire de périphériques et tester la carte sur l'ordinateur de l'enseignant
"Connecting..." s'éternise, puis "Failed to connect to ESP32"La carte n'est pas passée seule en mode programmationRelancer le téléversement, maintenir BOOT quand "Connecting..." apparaît, relâcher quand les lignes "Writing at" commencent
Erreurs avrdude dans la sortieL'Arduino Uno est encore sélectionné comme carteChoisir Outils > Carte > esp32 > ESP32 Dev Module et téléverser à nouveau
Téléversement réussi, mais rien ne change sur la LEDMauvais port (plusieurs cartes branchées)Débrancher la carte, voir quel port disparaît du menu, la rebrancher et choisir ce port ; comparer avec l'étiquette de l'ordinateur
La LED externe ne s'allume jamaisLED à l'envers, ou résistance et LED pas sur la même rangée de la plaqueRetourner la LED : patte longue côté résistance, patte courte vers GND ; vérifier que les liaisons partagent la même rangée
Le circuit semble juste mais la LED reste éteinteLe fil est sur une autre broche (D4 ou D34 par exemple)Lire l'étiquette de la broche où se trouve le fil et la comparer au nombre du code ; éviter les broches 34 à 39
Code téléversé mais la LED interne ne clignote pasLa carte n'a pas de LED programmable ou elle est sur une autre brocheRegarder le brochage de la carte ; passer sans attendre à l'étape de la LED externe
La LED reste allumée ou la carte chauffeLED reliée à 5V/VIN ou 3V3, ou court-circuit entre 3V3 et GNDDébrancher l'USB immédiatement ; déplacer la LED sur GPIO5, trouver le fil en court-circuit, puis rebrancher
La règle des trois minutes : si un groupe bute sur le même problème plus de trois minutes, remplace sa carte et son câble par le kit de secours et examine toi-même la pièce défectueuse après le cours. Qu'un groupe rate toute la séance à cause d'un mauvais câble coûte plus cher que de trouver la cause sur le moment. Même si la barre de progression semble figée, ne les laisse pas cliquer une deuxième fois sur Téléverser ; la première compilation prend du temps. Pour aller plus loin sur les problèmes de port et de pilote, les étapes de le code Arduino ne se téléverse pas valent aussi pour l'ESP32.

Questions de sortie et aperçu de la deuxième séance

  1. À quelle broche de la carte correspond le nombre 5 dans le code ? Pourquoi la carte indique-t-elle peut-être "D5" à côté de cette broche ?
  2. Qu'est-ce qui a changé sur la LED quand vous avez écrit delay(200) au lieu de delay(1000) ? Combien de fois par seconde clignote-t-elle maintenant ?
  3. Pourquoi la LED ne s'est-elle pas allumée quand elle était à l'envers ? Quelle patte de la LED va du côté de la résistance ?
  4. Quelle tension fournissent les broches de l'ESP32 ? Pourquoi ne faut-il pas brancher une LED ou un module directement sur la broche 5V ?

Les réponses t'indiquent quelle notion revoir à la deuxième séance ; un élève qui répond 2,5 à la deuxième question a compris la temporisation. À la deuxième séance, on ajoute un bouton au même circuit : dans le projet ESP32 Contrôle de LED avec bouton poussoir (Push), la LED reste allumée tant que tu maintiens le bouton, et dans ESP32 Contrôle de LED avec bouton (Toggle), chaque appui inverse son état. Les deux sont gratuits et ont des blocs ; les élèves lisent une entrée pour la première fois et décident avec if. À la troisième ou quatrième séance, tu peux passer au Wi-Fi ; pour cette séance, garde sous la main le tableau des codes d'état de l'ESP32 ne se connecte pas au Wi-Fi. Les projets ESP32 avec Wi-Fi sont Premium dans BlueGrays ; si tu veux que tes élèves continuent avec eux, nous expliquons dans des codes Premium pour la classe comment donner à chacun un code issu d'un paquet éducateur plutôt que des abonnements séparés.

Comment utiliser BlueGrays en cours ?

  • Trouver le projet : Dans Découvrir › Projets, utilise Filtrer pour choisir la plateforme ESP32 et, dans Tarification, l'option gratuit. Les projets ESP32 adaptés aux premières séances, comme LED, bouton, feu de circulation, capteur de lumière et capteur de distance, sont entièrement ouverts.
  • Composants requis et Schéma de circuit : La liste des composants est prête avec les quantités. Tu peux agrandir le schéma et le projeter, ou l'enregistrer avec Enregistrer dans la galerie et l'imprimer.
  • Code Source : Copier place le code dans le presse-papiers. Si un élève a ouvert le projet sur son téléphone, Copier le lien lui donne un lien pour ouvrir le code sur l'ordinateur, sans avoir à le retaper.
  • Comprendre le code : D'abord le résumé Que fait ce code ?, puis l'explication Étape par étape, la section Si tu bloques et la tâche À toi de jouer. Une étape suivante toute prête pour les groupes qui terminent tôt le mini-défi.
  • Voir en blocs : Tous les projets ESP32 gratuits ont une vue en blocs. Quand tu actives l'interrupteur, le code est remplacé par les blocs du même programme et l'onglet devient Comprendre les blocs. Les blocs servent à lire ; ils ne se modifient pas dans l'application et ne se téléversent pas sur la carte, c'est toujours le vrai code qui y va.
  • Construisons-le ensemble : Un mode guidé qui avance par étapes : prépare les composants, monte le circuit, téléverse le code, lance et teste. L'écran reste allumé, le groupe suit donc les étapes avec le téléphone posé sur la table ; à la fin, Je l'ai fait marque le projet comme terminé.

La première séance a l'air de se limiter à une LED, mais en 40 minutes les élèves vivent une fois la compilation, le téléversement, les numéros de broches, la limite de 3,3 V et le débogage, et chaque séance ESP32 suivante repose sur cette base. Nous détaillons toutes les sections de la page d'un projet dans le guide de la page projet. Si tu veux réaliser toi-même les deux projets une fois avant le cours, ouvre Clignotement de la LED interne de l'ESP32 dans l'application BlueGrays ; schéma, code, blocs et Comprendre le code sont prêts, et ta répétition ne dépassera pas dix minutes.

Questions fréquentes

Que faire lors d'une première séance avec l'ESP32 ?

L'objectif de la première séance est que chaque groupe téléverse du code sur son ESP32 et allume une LED : d'abord la LED interne de la carte, puis une LED externe avec une résistance de 220 Ω sur une plaque d'essai. Le Wi-Fi et les capteurs viennent ensuite. Les élèves parcourent ainsi une fois, sans accroc, la chaîne compilation, téléversement et numéro de broche.

Quelle carte choisir pour l'ESP32 dans l'Arduino IDE ?

Pour les cartes génériques comme l'ESP32 DevKit, installe le paquet esp32 d'Espressif et choisis ESP32 Dev Module dans Outils > Carte > esp32. Le paquet Arduino ESP32 Boards est destiné à l'Arduino Nano ESP32. Si la carte reste réglée sur Arduino Uno, le téléversement s'arrête sur une erreur avrdude.

Pourquoi mon ESP32 n'est-il pas reconnu par l'ordinateur ?

Change d'abord de câble ; beaucoup de câbles USB ne servent qu'à charger et ne transportent pas de données. Lis ensuite la puce USB-série de la carte (CP2102, CH340 ou CH9102) et installe le pilote correspondant. Sous Windows, un nouveau port COM doit apparaître dans la rubrique Ports du Gestionnaire de périphériques.

Faut-il appuyer sur BOOT pour téléverser sur un ESP32 ?

La plupart des DevKit passent seuls en mode programmation, BOOT n'est donc pas nécessaire. Si "Connecting..." traîne et que "Failed to connect to ESP32" apparaît, relance le téléversement, maintiens BOOT à l'apparition de "Connecting..." et relâche dès que l'écriture commence. Si cela se répète, baisse la vitesse de téléversement à 115200.

Sur quelle broche se trouve la LED interne de l'ESP32 ?

Sur les cartes ESP32 DevKit 30 broches les plus courantes, la LED bleue interne est reliée à GPIO2. Cela dépend toutefois de la carte : la DevKitC d'Espressif n'a qu'une LED d'alimentation, et sur certaines cartes la LED est sur une autre broche. En cas de doute, consulte le brochage de la carte ou utilise une LED externe sur une plaque d'essai.

Peut-on commencer au collège ou au lycée avec l'ESP32 plutôt que l'Arduino Uno ?

Oui ; le code s'écrit dans le même langage Arduino et la première séance LED est presque identique. Les différences sont la logique en 3,3 V, la numérotation GPIO, les broches en entrée seule et le bouton BOOT, et quelques minutes de la première séance suffisent pour les présenter. La préparation est un peu plus longue qu'avec un Uno, mais en échange le Wi-Fi et le Bluetooth sont prêts pour les séances suivantes.

Voir tous les projets
Clignotement de la LED interne de l'ESP32
#106Débutant

Clignotement de la LED interne de l'ESP32

Faire clignoter la LED bleue intégrée à l'ESP32 DevKit V1. Aucun composant externe n'est nécessaire ! Le premier projet que vous devriez essayer lorsque vous achetez un ESP32. Le GPIO 2 est connecté à la LED interne.

4.8(29)
53
Clignotement LED avec ESP32
#103Débutant

Clignotement LED avec ESP32

Enseigne l'utilisation de base des sorties GPIO avec l'ESP32. Nous obtenons un effet de clignotement en allumant et éteignant une LED à partir de la broche numérique. Version ESP32 du projet blink classique sur Arduino UNO ; les commandes de base de blink dans l'environnement Arduino restent les mêmes, mais le brochage et les niveaux GPIO de 3,3 V de l'ESP32 diffèrent de ceux de l'Arduino UNO.

4.7(37)
99
ESP32 Contrôle de LED avec bouton poussoir (Push)
#104Débutant

ESP32 Contrôle de LED avec bouton poussoir (Push)

La LED s'allume lorsque le bouton est enfoncé et s'éteint lorsqu'il est relâché. Montre comment la broche d'entrée numérique de l'ESP32 et la résistance pull-up interne sont utilisées. Grâce au mode INPUT_PULLUP, aucune résistance externe n'est nécessaire.

4.6(36)
55
ESP32 Contrôle de LED avec bouton (Toggle)
#105Débutant

ESP32 Contrôle de LED avec bouton (Toggle)

Chaque fois que l'on appuie sur le bouton, la LED change d'état : si elle est allumée, elle s'éteint, si elle est éteinte, elle s'allume. Modèle classique de basculement. Avec le debounce, nous nettoyons le bruit mécanique du bouton-poussoir pour garantir un seul basculement avec une seule pression.

4.6(39)
57
Feu de circulation ESP32
#107Débutant

Feu de circulation ESP32

Simulation d'un vrai feu de circulation avec 3 LED rouge-jaune-vert. Les temps sont proches de la logique du trafic réel : rouge long, jaune court, vert long. Exemple classique de contrôle séquentiel GPIO.

4.4(21)
44
Mesure de l'intensité lumineuse avec le module LDR ESP32
#113Débutant

Mesure de l'intensité lumineuse avec le module LDR ESP32

Suivi en temps réel sur le moniteur série de la valeur brute de l'ADC du module LDR et du pourcentage relatif de luminosité calculé à partir de références dans l'obscurité et à la lumière. Ce pourcentage n'est pas une mesure en lux. Permet de comprendre le principe de calibrage du module. Il est préférable de réaliser cet exercice avant le projet 10, car il sert à déterminer la valeur seuil.

4.6(36)
55
ESP32 HC-SR04 Télémètre à ultrasons
#116Intermédiaire

ESP32 HC-SR04 Télémètre à ultrasons

Le capteur à ultrasons HC-SR04 calcule la distance en mesurant le temps de vol (Time of Flight) de l'onde sonore qu'il émet lorsqu'elle rebondit sur un objet. Dans ce projet, nous enverrons une impulsion de 10 microsecondes depuis l'ESP32 vers la broche TRIG du capteur et nous lirons la durée de l'écho provenant de la broche ECHO à l'aide de la fonction pulseIn(). Nous afficherons la distance calculée en cm sur un écran LCD I2C 16x2. Le capteur HC-SR04 fonctionnant en 5 V, un diviseur de ten

4.9(28)
45
ESP32 DHT22 Température et humidité (avec écran LCD)
#117Intermédiaire

ESP32 DHT22 Température et humidité (avec écran LCD)

Il s'agit d'un projet permettant de mesurer la température ambiante et le taux d'humidité à l'aide d'un capteur DHT22 et d'afficher ces données en temps réel sur un écran LCD I2C 16x2. Les données du capteur sont lues à l'aide du protocole one-wire grâce à la bibliothèque Adafruit DHT. Ce projet constitue la base des stations météo IoT, de la domotique ou des systèmes de surveillance de l'environnement dans les serres.

4.8(38)
56