Contrôler facilement un Arduino Uno via le module WiFi ESP8266 et l'application Blynk
Composants et fournitures
- 1 × Arduino UNO
- 1 × Module ESP8266 ESP-01 (Espressif)
- 1 × Convertisseur USB/Série FT232RL (SparkFun)
- 1 × Régulateur linéaire LDO (3,3 V)
- 1 × Interrupteur à glissière
- 1 × Bouton poussoir 12 mm (SparkFun)
- 1 × Fils de connexion (générique)
- 1 × Plaque d'essai (breadboard)
Applications et services en ligne
- Arduino IDE
- Application Blynk (iOS/Android)
- Outil de flash ESP8266 (ESP Flasher)
À propos de ce projet
Introduction
Ce projet vous permet de contrôler les broches d'un Arduino Uno via le module WiFi ESP8266-01 et l'application Blynk. Blynk est une plateforme idéale pour débuter dans l'IoT grâce à son interface intuitive par glisser-déposer.
Étape 1 : Rassembler le matériel
Préparez les éléments suivants dans un dossier dédié :
- Arduino IDE : Télécharger
- Bibliothèques Blynk (dernière version) : GitHub
- Outil de flash ESP8266 : Télécharger
Étape 2 : Installer l'IDE Arduino et les bibliothèques
- Installez la dernière version de l'Arduino IDE.
- Ouvrez l'IDE, allez dans Fichier → Préférences et ajoutez l'URL suivante dans « URLs de gestionnaire de cartes supplémentaires » :
https://arduino.esp8266.com/stable/package_esp8266com_index.json - Allez dans Outils → Type de carte → Gestionnaire de cartes, recherchez « esp8266 » et installez le paquet (optionnel pour ce projet).
- Décompressez l'archive de la bibliothèque Blynk et copiez le contenu du dossier
librariesdans :Documents/Arduino/libraries
Étape 3 : Flasher le firmware de l'ESP8266
Pour flasher le firmware, vous devez réaliser le montage ci-dessous. Note importante : Bien que certains forums suggèrent d'utiliser l'Arduino Uno comme programmateur, l'expérience montre qu'un convertisseur FTDI USB/TTL dédié est plus fiable (problèmes d'alimentation fréquents avec l'Arduino).


- Décompressez
esp_flasher.zipet lancezXTCOM_UTIL.exe. - Connectez l'ESP8266-01 via le montage. Repérez le port COM dans le Gestionnaire de périphériques (Ports COM et LPT).
- Dans XTCOM_UTIL : Outils → Config Device, sélectionnez le bon port COM et réglez le baud rate sur 9600. Cliquez sur Open, puis Connect.
- Le fichier
readme.txtdans l'archive indique les adresses de flash pour chaque fichier.bin. Exemple :boot_v1.1.bin → 0x00000. - Allez dans API Test → Flash Image Download, sélectionnez le fichier
.bin, entrez l'adresse correspondante et cliquez sur Download. - Après chaque flash réussi : fermez XTCOM_UTIL, débranchez l'ESP8266, rebranchez-le, rouvrez l'outil et répétez pour les 4 fichiers
.bin. Maintenez GPIO0 à la masse (GND) pendant tout le processus.
Guide détaillé : Mise à jour du firmware ESP8266
Étape 4 : Commandes AT
Avec l'ESP8266 toujours connecté, ouvrez le Moniteur série de l'Arduino IDE (baud rate 115200, NL & CR).
- Envoyez
AT→ Réponse attendue :OK - Passez en mode Station :
AT+CWMODE=1
Étape 5 : Configuration de l'application Blynk
- Installez Blynk (Play Store / App Store) et créez un compte.
- Créez un Nouveau Projet (+), nommez-le, choisissez Arduino UNO et WiFi comme type de connexion.
- Un Auth Token est envoyé par e-mail (accessible aussi via l'icône écrou → Devices).
- Ajoutez un Button (+ → Button), nommez-le, réglez la broche sur D13 (LED intégrée), mode SWITCH.
- Pour d'autres broches, modifiez le widget et sélectionnez D3, D4, etc.
Étape 6 : Programme Arduino
Sélectionnez la carte Arduino Uno et le bon port. Copiez le code ci-dessous :
/*************************************************************
* Téléchargez la dernière bibliothèque Blynk : https://github.com/blynkkk/blynk-library/releases/latest
* Blynk permet de contrôler Arduino, Raspberry Pi, etc. via Internet.
* Créez des interfaces graphiques par glisser-déposer.
* Docs, tutoriels : https://www.blynk.cc
* Générateur de sketch : https://examples.blynk.cc
* Communauté : https://community.blynk.cc
* Licence MIT
*************************************************************
* Exemple : ESP8266 Shield (commandes AT) + Blynk
* ATTENTION : Configuration délicate. Lisez : https://help.blynk.cc/hardware-and-libraries/arduino/esp8266-with-at-firmware
* Remplacez WiFi ssid, pass, et Blynk auth token.
*************************************************************/
#define BLYNK_PRINT Serial
#include <ESP8266_Lib.h>
#include <BlynkSimpleShieldEsp8266.h>
// Auth Token depuis l'application Blynk (Projet → Écrou)
char auth[] = "yourAUTH";
// Identifiants WiFi
char ssid[] = "yourSSID";
char pass[] = "yourpassword";
// Utilisation du port série matériel (Uno) – SoftwareSerial commenté car instable
// #include <SoftwareSerial.h>
// SoftwareSerial EspSerial(2, 3); // RX, TX
#define ESP8266_BAUD 115200
ESP8266 wifi(&Serial); // Port série matériel
void setup() {
Serial.begin(9600);
delay(10);
Serial.begin(ESP8266_BAUD); // Réinitialise à 115200 pour l'ESP
delay(10);
Blynk.begin(auth, wifi, ssid, pass);
}
void loop() {
Blynk.run();
}
Modifications apportées à l'exemple original :
- Remplacez
yourAUTH,yourSSID,yourpasswordpar vos valeurs. - La partie
SoftwareSerialest commentée (instable sur Uno). - L'objet
ESP8266 wifiutilise&Serial(port matériel) au lieu de&EspSerial. Serial.begin(ESP8266_BAUD)remplacé pour correspondre au baud rate de l'ESP.
Téléversez le sketch, puis débranchez l'Arduino.
Étape 7 : Montage final
Connectez l'ESP8266 à l'Arduino Uno comme suit :
| ESP8266 | Arduino Uno |
|---|---|
| TX | RX (broche 0) |
| RX | TX (broche 1) |
| GND | GND |
| VCC | 3.3V |
| CH_PD | 3.3V |

- Rebranchez l'Arduino à l'ordinateur.
- Ouvrez le Moniteur série (baud 115200) : vous verrez la connexion au WiFi et au serveur Blynk.
- Dans l'application Blynk, appuyez sur Play (triangle).
- Actionnez le bouton : la LED intégrée (D13) s'allume/s'éteint.
Le projet est terminé ! Amusez-vous à étendre le contrôle à d'autres broches. Questions ou suggestions ? Laissez un commentaire.
Processus de fabrication
- Construire une télécommande Android universelle avec Arduino, 1Sheeld et contrôle IR
- Construire un Voltmètre Intelligent avec Arduino et Smartphone – Projet DIY Facile
- Contrôle IoT à Distance d'un Bras Robotique Personnalisé avec Arduino MKR1000
- Bocal Intelligent IoT avec ESP8266, Arduino et Capteur Ultrasonique – Surveillance Temps Réel
- Mesure Précise de Fréquence et Rapport Cyclique avec Arduino UNO
- Serveur Web Arduino Uno WiFi : Commander une LED via Navigateur
- Contrôlez un rover Arduino avec Firmata et une manette Xbox One
- Contrôle fluide de la luminosité LED avec Bolt IoT et Arduino UNO
- Serrure connectée WiFi avec Arduino et ESP8266 – Déverrouillage par smartphone