TP Protocoles et Réseaux de Communication Pr.
Abdelaaziz El Ansari
BACHELOR : Génie Electrique et Systèmes Embarqués (GESE)
TP2 : Réalisation d’une communication Bluetooth sur
ESP32 pour le pilotage d’un système embarqué
[Link] et préparation de la manipulation
1.1 But :
Les objectifs principaux de cette manipulation sont :
• Programmer la carte ESP32 en utilisant le langage Arduino.
• Comprendre le principe du Bluetooth à courte portée ainsi que l’architecture Bluetooth
de l’ESP32
• Différencier et comparer le Bluetooth Classique et le Bluetooth Low Energy (BLE), et
savoir les mettre en œuvre sur l’ESP32
• Configurer le Bluetooth de l’ESP32 afin d’établir une communication sans fil entre
l’ESP32 et un smartphone
• Transmettre et recevoir des données simples, et piloter des actionneurs (LED,
servomoteur, etc.) via Bluetooth
• Contrôler un système embarqué à distance via Bluetooth et smartphone.
1.2 Matériel nécessaire :
ESP32, câbles des connexion, alimentation 5V, LEDs ( verte et rouge.. ), résistances 220 Ω,
Câbles Dupont (M/F et M/M) , PC + logiciel.
1.3 Préparation de la manipulation
1- Donner un diagramme chronologique de l’évolution des versions du Bluetooth (de
1.0 à la version actuelle). ?
2- quel est la différence entre le Bluetooth Classique et le Bluetooth Low Energy (BLE)
? Donner un tableau comparatif entre le Bluetooth Classique et le BLE selon leurs domaines
d’utilisation et leurs performances.
3-Rappeler les bandes de fréquences de fonctionnement du Bluetooth Classique et du
Bluetooth Low Energy (BLE).
4-Quelle est la portée typique du Bluetooth Classique et le BLE ?
5 Pourquoi BLE est-il plus adapté à l’IoT ?
TP Protocoles et Réseaux de Communication Pr. Abdelaaziz El Ansari
BACHELOR : Génie Electrique et Systèmes Embarqués (GESE)
2. Installation des outils
2.1. Installation de la carte Esp32 dans l’IDE arduino
1. Pour Installer la carte ESP32 dans l’environnement de développement Arduino IDE.
Vous devez suivre les étapes suivantes :
a. Allez au menu File → Preferences
b. Entrez le lien suivant [Link] dans le
champ : « Additional Board Manager URLs », puis cliquez sur OK ;
c. Allez au menu Tools → Board → Boards Manager
d. Faites défiler vers le bas, sélectionnez la carte esp32 et installez « esp32 by
Espressif Systems »
2. Installer le Driver CP210x USB to UART Bridge VCP Driver
a. Allez vers le lien : [Link]
b. Allez à la Rubrique : Downloads, puis téléchargez l’archive : CP210x VCP Windows.
c. Décompressez l’archive téléchargé, puis installez le fichier :
CP210xVCPInstaller_x64.exe
2.2. Installation de l’application « Bluetooth Terminal »
Recherchez l’application Serial Bluetooth Terminal sur le Play Store de votre smartphone,
puis procédez à son installation.
2.3. Manipulation 1 : Teste de fonctionnement de l’ESP 32
1-Réaliser le câblage de trois LEDs (rouge, jaune et verte) avec un ESP32, en plaçant une
résistance de 200 Ω en série avec chaque LED pour les protéger. Un schéma de ce montage
TP Protocoles et Réseaux de Communication Pr. Abdelaaziz El Ansari
BACHELOR : Génie Electrique et Systèmes Embarqués (GESE)
devra être inclus dans le compte rendu, en indiquant clairement les noms des broches de
l’ESP32 connectées à chaque LED.
2-Écrire un programme embarqué permettant d’allumer successivement : la LED rouge pendant 3
secondes, la LED jaune pendant 1 seconde, puis la LED verte pendant 3 secondes. Fournir également
une explication du programme en incluant des commentaires détaillés dans le code.
3- Téléverser le programme dans la carte ESP32 et tester le fonctionnement de l’ESP32.
4- Que faut-il ajouter dans le programme pour que l’exécution soit infinie et que l’allumage
des LEDs ne s’arrête jamais ? Tester ce programme.
3. Mise en œuvre d’une communication Bluetooth classique à
l’aide de l’ESP32
3.1 Utilisation du module Bluetooth afin d’envoyer et de recevoir des messages ou
des fichiers
L’objectif de cette partie est d’utiliser le module Bluetooth afin d’envoyer et de recevoir des
messages des fichiers entre la carte ESP32 et un smartphone Android/Iphone.
Pour se faire vous devez utiliser :
- Utiliser la bibliothèque « BluetoothSerial.h »
- Utiliser la classe BluetoothSerial
➔Programmation et Manipulation 2:
1-Écrire un programme embarqué permettant l’échange de messages de test entre l’ESP32 et le
smartphone.
2-Téléverser le programme dans la carte ESP32.
3-Activer le Bluetooth du smartphone et établir la liaison avec l’ESP32.
4- Lancer l’application Serial Bluetooth Terminal et tester l’envoi et la réception de messages
entre l’ESP32 et le smartphone.
TP Protocoles et Réseaux de Communication Pr. Abdelaaziz El Ansari
BACHELOR : Génie Electrique et Systèmes Embarqués (GESE)
5-Tester la portée maximale du Bluetooth classique en éloignant progressivement le
smartphone de 5 m, puis 10 m, puis 15 m, et ainsi de suite, jusqu’à ce que la réception du
message ne soit plus possible.
6-Développer le programme afin de permettre l’envoi de fichiers de plus grande taille
(images, fichiers PDF, vidéos…). Effectuer des tests d’envoi et tester le débit maximal de
Bluetooth.
3.2 Utilisation du protocole Bluetooth pour contrôler des
LED
a-Câblage :
Réaliser le de câblage suivant et donner un schéma dans le compte rendu :
• LED verte → GPIO 18
• LED rouge → GPIO 19
• Résistances en série avec chaque LED
• GND commun
b- Programmation et Manipulation 3:
1-Écrire un programme embarqué permettant de contrôler deux LEDs (verte et rouge) via Bluetooth.
Le contrôle se fait par l’envoi de messages depuis un smartphone, selon les commandes suivantes :
• V → LED verte allumée
• R → LED rouge allumée
• 1 → Les deux LEDs allumées
• 0 → Les deux LEDs éteintes
2-Téléverser le programme dans la carte ESP32.
3-Activer le Bluetooth du smartphone et établir la liaison avec l’ESP32.
4- Lancer l’application Serial Bluetooth Terminal, puis tester l’envoi des messages V, R, 1
et 0 depuis votre smartphone afin de vérifier le bon fonctionnement du système.
3.3 Utilisation du protocole Bluetooth pour contrôler un servo moteur
➔Programmation et Manipulation 4:
a-Teste de servo moteur
TP Protocoles et Réseaux de Communication Pr. Abdelaaziz El Ansari
BACHELOR : Génie Electrique et Systèmes Embarqués (GESE)
1-Réaliser le câblage d’un servomoteur avec un ESP32. Un schéma de ce montage devra être
inclus dans le compte rendu, en indiquant clairement les noms des broches de l’ESP32
connectées au servomoteur.
2-Écrire un programme embarqué permettant de contrôler la rotation d’un servomoteur de 0°
à 90°, puis de revenir de 90° à 0°. Fournir également une explication du programme en
incluant des commentaires détaillés dans le code.
3- Téléverser le programme dans la carte ESP32 et tester le fonctionnement de servomoteur.
b- contrôler un servo moteur par smartphone
1-Écrire un programme embarqué permettant de contrôler un servo moteur via Bluetooth.
Le contrôle se fait par l’envoi de messages depuis un smartphone, selon les commandes suivantes :
• 1 → rotation de 0° à 90°
• 0 → 90° à 0°
2-Téléverser le programme dans la carte ESP32.
3-Activer le Bluetooth du smartphone et établir la liaison avec l’ESP32.
4- Lancer l’application Serial Bluetooth Terminal, puis tester l’envoi des messages 1 et 0
depuis votre smartphone afin de vérifier le bon fonctionnement du système.
4. Contrôle d’un système RFID via Bluetooth
Le but de cette partie est de permettre l’accès à un badge RFID non identifié via Bluetooth à
l’aide d’un smartphone.
4.1Réalisation d’un système RFID avec ESP32
a-Câblage du module RFID avec ESP32
1-Réaliser un câblage de l’ESP32 avec le module RFID RC522 afin de permettre la lecture de
l’identifiant (UID) d’un badge RFID.
2-Inclure un schéma de ce montage dans le compte rendu, en indiquant clairement les broches
de l’ESP32 connectées au module RC522.
TP Protocoles et Réseaux de Communication Pr. Abdelaaziz El Ansari
BACHELOR : Génie Electrique et Systèmes Embarqués (GESE)
b-Programmation pour la lecture RFID
1-Écrire un programme embarqué permettant de lire l’UID d’un badge RFID par ESP32.
2-Téléverser ce programme sur l’ESP32.
3-Approcher un badge RFID du lecteur et relever l’UID affiché.
4-Ajouter au montage précédent un servomoteur et deux LEDs (verte et rouge).
5-Modifier le programme précédent pour gérer l’accès au badge identifié précédemment.
6-Tester le système en approchant un badge autorisé et un badge non autorisé pour vérifier le
comportement des LEDs et du servomoteur.
4.2 Contrôle d’un système RFID embarqué par smartphone
1-Conserver le montage précédent et développer le programme précédent afin de contrôler le
servomoteur via Bluetooth depuis un smartphone. Les commandes à envoyer depuis le
smartphone sont :
1 → rotation de 0° à 90°
0 → rotation de 90° à 0°
2-Téléverser le programme modifié sur l’ESP32.
3-Activer le Bluetooth du smartphone et établir la liaison avec l’ESP32.
4-Lancer l’application Serial Bluetooth Terminal et tester l’envoi des messages 1 et 0 depuis
le smartphone pour vérifier le bon fonctionnement du système.
5- Tester le système en approchant un badge autorisé et un badge non autorisé.
6- Accorder l’autorisation au badge non identifié en envoyant la commande 1 depuis le
smartphone, afin de vérifier le bon fonctionnement du système.