111 projets en blocs · Arduino · ESP32 · Pico
Programmation par blocs avec Arduino, ESP32 et Pico
Au lieu de lire le code ligne par ligne, suivez des blocs colorés. 111 projets BlueGrays existent déjà en version blocs, et chaque bloc correspond à une ligne du vrai code qui tourne sur la carte.
Qu'est-ce que la programmation par blocs ?
Programmer par blocs, c'est assembler un programme avec des pièces qui s'emboîtent comme un puzzle au lieu de le taper. « Régler la broche en sortie », « allumer la LED », « attendre 1 seconde » : chaque instruction est un bloc, et en les empilant on obtient le programme. Pas de points-virgules, pas de parenthèses, pas de fautes de frappe : on se concentre sur la logique.
BlueGrays utilise son propre jeu de blocs, affiché dans votre langue : si l'appli est en français, les blocs le sont aussi. Dans les projets Arduino et ESP32, les blocs correspondent à du code C++ ; dans les projets Raspberry Pi Pico, à du MicroPython.
Le but n'est pas de rester aux blocs, mais de comprendre le code. Avec les blocs et le code d'un projet côte à côte, on voit à quoi sert chaque ligne. Au bout de quelques projets, on lit le code sans les blocs.
Comment fonctionne la programmation par blocs dans BlueGrays
Dans l'appli, les blocs se trouvent dans la partie code de chaque projet qui en a. En quatre étapes :
- 01
Choisir un projet en blocs
Les projets marqués du badge blocs ont une version en blocs. Vous pouvez aussi filtrer la liste pour n'afficher qu'eux.
- 02
Activer « Voir en blocs »
Un interrupteur dans la partie code transforme le code en blocs. Touchez l'image pour l'ouvrir en plein écran et zoomer.
- 03
Comprendre les blocs
L'onglet « Comprendre les blocs » explique le programme étape par étape, avec à chaque fois uniquement les blocs concernés et leur rôle.
- 04
Passer au vrai code
Désactivez l'interrupteur et le même programme s'affiche en code. Copiez-le dans l'IDE Arduino (dans Thonny pour la Pico) et téléversez-le sur la carte.
Un même programme : blocs et code
À gauche, les blocs du projet ; à droite, le code qui tourne sur la carte. Chaque bloc a sa ligne de code.
Blocs

Code
1// ─────────────────────────────────────────
2// BlueGrays · bluegrays.com
3// Clignotement d'une LED
4// ─────────────────────────────────────────
5// Fait clignoter une seule LED toutes les 100 ms. Montre l'usage de base
6// des fonctions digitalWrite et delay.
7//
8// Broches :
9// D9 -> LED (avec une résistance de 220 ohm)
10
11void setup() {
12 pinMode(9,OUTPUT); // Broche de la LED en sortie
13}
14
15void loop() {
16 digitalWrite(9,HIGH); // Allumer la LED
17 delay(100); // Attendre 100 ms (1000 ms = 1 s)
18 digitalWrite(9,LOW); // Éteindre la LED
19 delay(100);
20}
21Projets en blocs
Tous les projets qui ont une version en blocs, par plateforme. Les projets gratuits d'abord : pour 31 d'entre eux, blocs et code sont entièrement gratuits.
Projets Arduino76 projets en blocs

Clignotement d'une LED
Le tout premier bonjour de l'électronique : allumer et éteindre une seule LED. L'Arduino allume et éteint la LED à intervalles très courts, la lumière clignote donc rapidement. Tu vois de la façon la

Deux LED clignotant en alternance
Deux LED clignotent vite à tour de rôle : quand l'une s'allume, l'autre s'éteint, comme si elles se renvoyaient une balle. L'Arduino garde chaque lumière allumée un cinquième de seconde puis passe à l

Feu de circulation
Une copie miniature du feu tricolore que tu vois chaque jour dans la rue. Le rouge reste allumé deux secondes, l'orange brille un court instant, le vert reste deux secondes, puis on revient au rouge e

Gyrophare de police à LED
Comme le gyrophare d'une voiture de police : la LED rouge flashe trois fois très vite, puis la bleue flashe trois fois à son tour, et la séquence se répète sans fin. Il te suffit de deux LED et de deu

Chenillard à LED
Des lumières qui s'allument l'une après l'autre, comme si elles couraient. L'Arduino allume six LED une par une ; chacune brille un court instant puis s'éteint, et la lumière parcourt la rangée du déb

Chenillard K2000 à LED
Le fameux balayage lumineux : un point de lumière glisse d'un bout à l'autre de six LED, puis revient. L'Arduino allume chaque LED un dixième de seconde avant de passer à la suivante, fait demi-tour à

Chenillard à LED à vitesse réglable
Six LED s'allument l'une après l'autre et la lumière semble courir d'un bout à l'autre. Quand tu tournes le bouton du potentiomètre, la vitesse de cette course change aussitôt : dans un sens la lumièr

Chenillard K2000 à vitesse réglable
Une lumière court d'un bout à l'autre de six LED, fait demi-tour et repart. En tournant le bouton du potentiomètre, tu changes aussitôt la vitesse de sa course : bouton d'un côté, la lumière file pres
Projets Arduino : tous les projets en blocs
- #9Allumer une LED avec un bouton-poussoir (Push)Gratuit
- #10Allumer et éteindre une LED avec un boutonGratuit
- #11Mesurer l'intensité lumineuse avec une LDRGratuit
- #12Veilleuse avec LDRGratuit
- #13Utilisation du buzzerGratuit
- #14Réglage de la fréquence avec buzzerGratuit
- #27HC-SR04 Mesure de la distance (affichage en série)Gratuit
- #55Température et humidité avec DHT11Gratuit
- #16Lire les codes d'une télécommande IR
- #17Allumer et éteindre des LED avec un récepteur IR et une télécommande
- #19Ampoule 220V avec bouton poussoir (Push)
- #20Allumer et éteindre une ampoule 220 V avec un bouton
- #21Allumer une ampoule 220 V avec une télécommande
- #22Système d'alerte laser
- #23Système de sécurité laser
- #24Détecteur de mouvement avec capteur de mouvement
- #25Sonnette et lumière avec détecteur de mouvement
- #26Piano simple avec buzzer et bouton
- #28Capteur de stationnement avec HC-SR04
- #29Afficher un message sur un écran LCD 2x16
- #30Texte qui rebondit de gauche à droite sur un écran LCD
- #31Mesure de la distance à l'aide d'un écran LCD
- #32Utilisation de l'écran LCD avec I2C
- #33Projet de mesure de la taille
- #34Contrôler une LED depuis un téléphone via Bluetooth
- #35Utilisation du servomoteur
- #36Utilisation d'un servomoteur avec un potentiomètre
- #37Lecture d'un interrupteur reed
- #38Capteur de porte avec interrupteur reed
- #39Utilisation d'une LED RVB
- #40Transition douce des couleurs avec une LED RVB
- #42Afficher les nombres de 0 à 99 sur un afficheur 7 segments
- #43Compteur avec afficheur 7 segments et boutons
- #44Mesure de la température avec NTC et écran LCD 2x16
- #45Configuration du module horloge RTC DS1302
- #46Horloge RTC DS1302 avec écran LCD
- #47Afficher 0-9999 sur un afficheur 7 segments à 4 chiffres
- #48Horloge numérique avec afficheur 7 segments à 4 chiffres
- #49Animation de bombe avec afficheur 7 segments à 4 chiffres
- #50Utilisation du détecteur de flamme
- #51Utilisation des capteurs de gaz
- #52Alarme du capteur de flamme et de gaz
- #53Lecture des valeurs RFID
- #54Authentification par RFID
- #56Voltmètre numérique avec écran LCD
- #58Communication bidirectionnelle entre 2 Arduino
- #59Contrôle de LED avec un joystick
- #60Servocommande avec joystick
- #61Fonctionnement du clavier 3x4
- #62Contrôle de LED avec un clavier 3x4
- #63Fonctionnement du clavier 4x4
- #64Serrure à code avec clavier 4x4 et écran LCD
- #67Utilisation du moteur pas à pas
- #68Construction d'un servomoteur à 360 degrés à partir d'un moteur pas à pas
- #69Utilisation du ruban LED WS2812B
- #70Gyrophare de police avec WS2812B
- #71Chenillard WS2812B
- #72Chenillard WS2812B (remplissage)
- #73Chenillard K2000 avec WS2812B
- #74WS2812B Black Thunder 3 pièces
- #75WS2812B Animation 1
- #77Lecture de réflexion (proximité) avec TCRT5000
- #78TCRT5000 Détection de surface noire et blanche
- #82Éclairage intelligent des escaliers et des couloirs
- #83Station d'irrigation intelligente
- #96Roulette Arduino
- #97Test de réaction avec signal sonore Arduino
- #99Contrôle de l'angle d'un servo SG90 avec potentiomètre
Projets ESP3225 projets en blocs

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.

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.

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.

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.

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.

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.

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

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.
Projets ESP32 : tous les projets en blocs
- #122Alarme de détection de gaz/fumée ESP32 MQ-2Gratuit
- #123Lecteur de cartes RFID RC522 pour ESP32 (avec LCD)Gratuit
- #108LED Chenillard ESP32 (Knight Rider)
- #109ESP32 Effet de Gyrophare de Police
- #110ESP32 LED Fade avec PWM
- #111Contrôle d'une LED RVB avec ESP32
- #112Veilleuse ESP32 avec LDR
- #114ESP32 Lecture de mélodies avec buzzer
- #115Luminosité d'une LED avec un Potentiomètre sur ESP32 (Analogique → PWM)
- #118Servomoteur ESP32 (commande par potentiomètre)
- #119Écran LCD I2C ESP32 (16x2)
- #120Horloge numérique avec ESP32 et RTC DS1307 (I2C + LCD)
- #121Éclairage automatique avec le capteur de mouvement PIR ESP32
- #125ESP32 TM1637 Affichage à 7 segments à 4 chiffres
- #126Contrôle d'une bande NeoPixel WS2812B avec l'ESP32
- #139Système d'arrosage intelligent ESP 32
- #140Alarme de détection de mouvement ESP32
Projets Raspberry Pi Pico10 projets en blocs

Clignotement LED Intégrée Raspberry Pi Pico (GP25 LED Onboard)
Le projet d'ouverture de la série Raspberry Pi Pico ! Nous faisons clignoter la LED intégrée (LED verte connectée à GP25) pour vérifier que la carte fonctionne — une première expérience classique "Hello World". AUCUN composant externe, juste Pico et câble USB. Le code est écrit en **MicroPython** (le langage officiellement soutenu par la Raspberry Pi Foundation). Apprends la classe `machine.Pin`, le mode `Pin.OUT`, les méthodes `led.on()/off()` et `time.sleep()` dans Thonny IDE. Suis chaque basc

Allumage d'une LED externe sur le Raspberry Pi Pico (GP14 + plaque d'essai)
Après la LED intégrée du Pico : connecter une LED externe à la maquette et la contrôler via la broche GP14. Ce projet vous permet d’apprendre comment utiliser n’importe quelle broche GPIO à usage général du Pico en sortie, de comprendre la polarité de la LED (grande patte = anode/+, petite patte = cathode/–) et de découvrir pourquoi une résistance de limitation de courant (220 Ω) est indispensable. Si vous n'installez pas cette résistance, un courant excessif traversera la LED et celle-ci risque

Raspberry Pi Pico Deux LEDs alternées (Flip-Flop, GP14 + GP13)
L'étape suivante après la LED unique sur le Pico : deux LEDs clignotent alternativement dans un motif flip-flop classique. Deux LEDs de couleurs différentes (rouge sur GP14, verte sur GP13) échangent leur état toutes les 500ms. `Pin.toggle()` de MicroPython rend le code court. Base des feux de circulation, gyrophares.

Simulateur de Feu de Circulation Raspberry Pi Pico (3 LEDs séquentielles, GP11/GP12/GP13)
Nous simulons un vrai feu de circulation avec des LEDs rouge, jaune et verte. Vert 4 sec "passez", jaune 1,5 sec "préparez", rouge 3 sec "arrêtez" et rouge+jaune 1 sec "départ" (motif européen). Apprends la définition de fonction, la logique de machine à états et la synchronisation multi-GPIO. Circuit simple : 3 LEDs sur GP11/GP12/GP13, chacune avec 220Ω.

Raspberry Pi Pico Effet Gyrophare Police (Rouge + Bleu Stroboscope, GP11 + GP12)
Nous simulons la rampe lumineuse d'une voiture de police avec un Raspberry Pi Pico, dans sa version la plus simple ! 🚨 Les LED rouge et bleue s'allument à tour de rôle (flip-flop) : quand la rouge est allumée, la bleue est éteinte, et elles s'échangent toutes les 0,3 seconde, sans fin. Le code écrit les deux étapes directement dans une seule boucle `while True` ; la vitesse se règle avec la constante `WAIT_MS`.

Raspberry Pi Pico Flip-Flop Gyrophare 3 Burst (2 LED GP11 + GP12)
Variation rythmique du projet gyrophare police — flip-flop 3 burst ! 🚨 Même circuit 2 LEDs que #151, mais motif différent : LED rouge clignote 3 fois rapidement, puis bleu 3 fois, à l'infini.

Raspberry Pi Pico LED Contrôlée par Bouton (Push, GP14 + GP2)
Premier projet **entrée** avec Pico — lecture bouton ! 🔘 LED s'allume tant que le bouton est pressé. Apprends `Pin.IN`, `Pin.PULL_UP` et `button.value()`. GP14 LED, GP2 bouton avec PULL_UP interne. Pressé = 0, relâché = 1 — standard.

Raspberry Pi Pico Bouton Toggle LED (GP14 + GP2)
Bouton + LED — niveau supérieur ! 🔁 Contrairement à #155, pas besoin de maintenir le bouton. Appuie et relâche → LED allumée. Réappuie → LED éteinte (toggle). Même circuit que #155, mais grande différence de code. Apprends edge detection, state tracking et debounce.
Projets Raspberry Pi Pico : tous les projets en blocs
Pour qui ?
Enfants et parents
Le code pour enfants marque bien plus quand il se termine par une LED qui s'allume sur la table. Les blocs rendent le programme lisible, et le montage se fait ensemble.
Enseignants et clubs
En cours de technologie ou de robotique, vous présentez un projet d'abord en blocs, puis vous passez au code. Chaque projet a sa liste de composants et son schéma.
Débutants
Les blocs sont le moyen le plus rapide de comprendre la logique de vos premiers projets Arduino. Commencez par les blocs et passez au code quand vous vous sentez prêt.
Questions fréquentes
Qu'est-ce que la programmation par blocs ?
C'est une façon de programmer où les instructions ne sont pas tapées mais représentées par des blocs qui s'emboîtent comme des pièces de puzzle. Comme les fautes de frappe sont impossibles, débutants et enfants comprennent plus facilement la logique d'un programme.
Combien de projets BlueGrays existent en blocs ?
Actuellement 111 : 76 projets Arduino, 25 ESP32 et 10 Raspberry Pi Pico. La liste s'allonge au fil des conversions.
La programmation par blocs est-elle gratuite ?
L'appli est gratuite. Les blocs et le code de 31 projets sont accessibles à tous. Pour les autres, les blocs se débloquent avec Premium, comme le code.
Peut-on téléverser les blocs directement sur la carte ?
Non. Les blocs servent à lire et à comprendre le programme ; ce qui va sur la carte, c'est toujours le vrai code du projet. Vous le copiez dans l'IDE Arduino, ou dans Thonny pour la Pico, puis vous le téléversez.
Peut-on créer ses propres programmes avec les blocs ?
Pas encore. Nous préparons les blocs de chaque projet et les faisons correspondre ligne à ligne avec le code : derrière chaque bloc, il y a un programme testé qui fonctionne.
Quelle différence avec Scratch ou mBlock ?
Avec Scratch et mBlock, on fait glisser des blocs sur l'ordinateur pour écrire son propre programme. Avec BlueGrays, chaque projet en blocs est livré avec son schéma, sa liste de composants et son vrai code, et les blocs en sont la version lisible. Les deux se complètent.
Est-ce adapté aux enfants ? À partir de quel âge ?
Les enfants de 9 ou 10 ans qui lisent sans difficulté peuvent commencer avec un adulte. Les premiers projets se font sans soudure, sur une breadboard, avec des LED, des boutons et un buzzer.
Dans quelles langues sont les blocs ?
En français, anglais, turc, allemand, espagnol et italien. Les blocs s'affichent dans la langue de l'appli.
L'appli BlueGrays
Commencez la programmation par blocs sur votre téléphone
Blocs, schéma, liste de composants et vrai code sur un seul écran. Gratuit sur iOS et Android.
Scannez avec votre téléphone
Pointez l'appareil photo vers le code : la boutique d'applis de votre téléphone s'ouvre.

