Allumer le module LED RGB connecté à la carte ESP32 via Bluetooth

Bluetooth 07-11-23
394 0

Plan du tutoriel

1- La carte ESP32 et le Bluetooth

2- Pourquoi on utilise App Inventor pour créer une application mobile capable de communiquer le smartphone avec la carte ESP32 ?

3- Les composants nécessaires pour contrôler le module LED RGB par la carte ESP32

4- Montage de la carte ESP32 avec le module LED RGB

5- Allumer le module LED RGB connecté à la carte ESP32 par un smartphone via Bluetooth

 

 

La carte ESP32 et le Bluetooth

L'ESP32 est un microcontrôleur Wi-Fi et Bluetooth développé par Espressif Systems. Il est largement utilisé dans le domaine de l'Internet des objets (IoT) en raison de ses capacités de connectivité sans fil. L'une des fonctionnalités clés de l'ESP32 est son support intégré pour le Bluetooth, notamment le Bluetooth Classic et le Bluetooth Low Energy (BLE).

Voici quelques points importants à savoir sur l'ESP32 et le Bluetooth :

Bluetooth Classic : L'ESP32 prend en charge le Bluetooth Classic, ce qui signifie qu'il peut être utilisé pour établir des connexions Bluetooth traditionnelles avec d'autres appareils, comme des écouteurs, des claviers, des souris, etc.

Bluetooth Low Energy (BLE) : L'ESP32 prend également en charge le Bluetooth Low Energy (BLE), qui est idéal pour les applications d'IoT, car il permet de consommer très peu d'énergie tout en maintenant une connectivité sans fil. Vous pouvez créer des périphériques BLE tels que des capteurs, des beacons, des télécommandes, etc.

API Bluetooth : L'ESP32 offre une API Bluetooth dans son environnement de développement (ESP-IDF), qui permet aux développeurs de créer des applications Bluetooth personnalisées pour leurs projets. Vous pouvez utiliser des bibliothèques et des outils fournis par Espressif pour simplifier le développement.

Profils Bluetooth : L'ESP32 prend en charge un certain nombre de profils Bluetooth, notamment les profils GATT (Generic Attribute Profile) pour BLE, ce qui facilite la création d'appareils compatibles avec des applications mobiles.

Compatibilité : L'ESP32 est compatible avec diverses piles Bluetooth, notamment la stack Bluetooth Classic Bluedroid et la stack BLE NimBLE. Vous pouvez choisir la pile qui convient le mieux à votre projet.

Configuration : Vous pouvez configurer les paramètres Bluetooth de l'ESP32, tels que le nom de l'appareil, le mode de visibilité, les services disponibles, etc.

En résumé, l'ESP32 est un microcontrôleur puissant qui offre une connectivité Bluetooth intégrée, ce qui en fait un choix populaire pour de nombreux projets IoT. Il peut être programmé pour interagir avec d'autres appareils via Bluetooth Classic ou BLE, selon les besoins de votre application.

Pourquoi on utilise MIT App Inventor pour créer une application mobile capable de communiquer le smartphone avec la carte ESP32 ?

MIT App Inventor est une plateforme de développement d'applications mobiles visuelle qui permet de créer des applications pour Android sans nécessiter une expertise en programmation avancée. Il est couramment utilisé pour développer des applications mobiles capables de communiquer avec des cartes ESP32 ou d'autres dispositifs IoT pour plusieurs raisons :

Facilité d'utilisation : MIT App Inventor est conçu pour être convivial et intuitif, ce qui le rend accessible même aux personnes n'ayant pas d'expérience en programmation. Il utilise une approche de programmation par glisser-déposer pour créer des applications, ce qui réduit la courbe d'apprentissage.

Rapidité de développement : MIT App Inventor permet de créer des applications mobiles rapidement. Cela est particulièrement important dans le domaine de l'IoT, où les projets peuvent évoluer rapidement. Vous pouvez rapidement concevoir et tester des applications pour interagir avec votre ESP32.

Prise en charge de la connectivité : MIT App Inventor offre des composants et des bibliothèques prédéfinis pour la communication sans fil, notamment la communication Bluetooth. Cela facilite la création d'applications qui peuvent se connecter et interagir avec des cartes ESP32 via Bluetooth.

Plateforme multiplateforme : Les applications créées avec MIT App Inventor sont destinées à Android, mais elles peuvent être utilisées sur divers appareils Android, ce qui en fait une solution polyvalente pour communiquer avec des ESP32 qui prennent en charge la communication Bluetooth.

Personnalisation : Bien que MIT App Inventor soit axé sur la simplicité, il offre tout de même un certain degré de personnalisation. Vous pouvez personnaliser l'apparence et le comportement de votre application en utilisant les composants et les blocs de programmation disponibles.

Communauté et ressources : Il existe une communauté active autour de MIT App Inventor, avec de nombreuses ressources, tutoriels et exemples disponibles en ligne. Cela facilite l'apprentissage et le dépannage.

Les composants nécessaires pour contrôler le module LED RGB par la carte ESP32

Pour contrôler le module LED RGB par les boutons poussoirs vous aurez besoin des composants suivants :

1- Carte ESP32 :

Carte ESP32

La carte ESP32 est un microcontrôleur basé sur le système sur puce (SoC) ESP32, développé par Espressif Systems. L'ESP32 est une plate-forme matérielle populaire pour le développement de projets IoT (Internet des objets) en raison de sa puissance de traitement, de sa connectivité sans fil intégrée et de sa polyvalence.

2- Module LED RGB

Vous aurez besoin d'un module LED RGB. Ces modules sont généralement composés de plusieurs LED (une rouge, une verte et une bleue) intégrées dans un seul boîtier.

3- Breadboard (Plaque d'essai) :

plaque d'essai

Une breadboard est utile pour créer un circuit temporaire et connecter facilement les composants entre eux.

4- Fils de connexion :

Fils de connexion

Des fils de connexion sont nécessaires pour relier les différents composants ensemble, tels que la connexion entre la carte ESP32 et le module LED RGB.

Montage de la carte ESP32 avec le module LED RGB

Le montage de la carte ESP32 avec un module LED RGB est assez simple et nécessite quelques composants de base. Voici comment vous pouvez connecter un module LED RGB à une carte ESP32 :

Étapes du montage :

1- Connectez la carte ESP32 à votre ordinateur à l'aide du câble USB.

2- Prenez le module LED RGB. Il a quatre broches : une pour la masse et trois pour les couleurs rouge, verte et bleue. Les broches peuvent être étiquetées comme R, G, B, et GND . Utilisez les fils de raccordement pour connecter le module LED RGB à la carte ESP32 :

- Connectez la broche R (rouge) du module LED RGB à la broche GPIO23 de la carte ESP32.

- Connectez la broche G (verte) du module LED RGB à la broche GPIO22 de la carte ESP32.

- Connectez la broche B (bleue) du module LED RGB à la broche GPIO21 de la carte ESP32.

- Connectez la broche GND du module LED RGB à la broche GND de la carte ESP32.

Montage de la carte ESP32 avec le module LED RGB

Montage de la carte ESP32 avec le module LED RGB

Allumer le module LED RGB connecté à la carte ESP32 par un smartphone via Bluetooth

I- Côté ESP32 (MicroPython) :

1- Flasher le MicroPython sur l'ESP32 : Assurez-vous que vous avez installé MicroPython sur votre ESP32. Vous pouvez utiliser l'outil "esptool" pour flasher le firmware MicroPython sur la carte.

2- Établir la connexion Bluetooth : Utilisez les bibliothèques MicroPython pour activer le Bluetooth et le configurer pour qu'il agisse en tant que périphérique BLE (Bluetooth Low Energy). Configurez un service et une caractéristique personnalisés pour contrôler les trois LEDs.

3- Gérer les commandes Bluetooth : Écoutez les commandes Bluetooth provenant de l'application mobile. Lorsque vous recevez une commande pour allumer ou éteindre le module LED RGB, contrôlez la broche du module LED RGB en conséquence.

Voici un exemple minimaliste de code MicroPython pour ce scénario (assurez-vous d'adapter cela à votre environnement) :

Il faut importer ces bibliothèques :ble_uart_peripheral.py et ble_advertising.py.

il faut utiliser le Firmware suivant : esp32-20210902-v1.17.bin.

II- Côté App Inventor (pour l'application mobile du Smartphone):

Pour allumer le module LED RGB  connecté à une carte ESP32 à l'aide d'un smartphone via Bluetooth en utilisant MIT App Inventor, suivez ces étapes générales :

1- Créer l'application mobile avec MIT App Inventor :

a- Créez une nouvelle application sur MIT App Inventor.

b- Utilisez les composants Bluetooth du designer pour configurer la communication avec l'ESP32.

extensions_bluetooth

- L'extension "BluetoothLE1" fait en effet référence à une extension spécifique pour MIT App Inventor qui permet de gérer la communication Bluetooth Low Energy (BLE) dans vos applications mobiles. Cette extension facilite l'interaction entre votre application App Inventor et les périphériques BLE, tels que les capteurs, les appareils de suivi, les dispositifs portables, etc.

- L'extension "BluetoothClient1" dans MIT App Inventor vous permet de créer des applications mobiles qui peuvent se connecter à des dispositifs Bluetooth, comme des modules Bluetooth série (par exemple, HC-06) connectés à des microcontrôleurs, des appareils Bluetooth audio, etc. Cette extension facilite la communication avec ces dispositifs en utilisant des connexions Bluetooth série.

À partir d'Android 12, les autorisations Bluetooth ont été renforcées pour améliorer la sécurité et la protection des données des utilisateurs. C'est pour cela on doit déclarer les autorisations dont votre application a besoin dans le fichier AndroidManifest.xml. Pour Bluetooth, vous devrez inclure les autorisations ACCESS_FINE_LOCATION, BLUETOOTH_SCAN, et éventuellement BLUETOOTH_CONNECT, en fonction des fonctionnalités que vous utilisez.

c- Utilisez ces blocs de programmation pour connecter le smartphone à la carte ESP32 via Bluetooth

d- Ajoutez quatre boutons à l'écran pour contrôler l'allumage du module LED RGB :

- un sélectionneur de liste (scanner) pour apparier la carte ESP32 avec le smartphone

- un bouton pour allumer ou éteindre la couleur rouge du module LED RGB

- un bouton pour allumer ou éteindre la couleur verte du module LED RGB

- un bouton pour allumer ou éteindre la couleur bleue du module LED RGB

e- Utilisez les blocs de programmation pour envoyer des commandes Bluetooth à l'ESP32 lorsque le bouton est cliqué.

Voici un exemple complet de ce à quoi cela pourrait ressembler dans App Inventor :

Partie designer de l'application mobile

Partie programme de l'application mobile

Télécharger le projet aiaTélécharger le fichier apk

Assurez-vous d'utiliser les UUID appropriés pour les services et les caractéristiques Bluetooth, ainsi que de gérer les commandes et les réponses en conséquence dans votre code MicroPython et dans App Inventor.

3- Test du système :

Assurez-vous que la carte ESP32 est apparié avec votre smartphone. Démarrez l'application et établissez la connexion Bluetooth avec la carte ESP32. Ensuite, envoyez les commandes (comme green_on  et red_on) pour allumer le module LED RGB en différentes couleurs et les commandes (comme green_off  et red_off) pour les éteindre.

0 commentaire

laisser un commentaire

Veuillez noter s'il vous plaît*

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Passion de robotique

Atelier robotique

Construction des robots

Bras robotique

Maison intelligente

But de ce site web

La robotique éducative joue un rôle important dans l'éducation des enfants et des jeunes en les aidant à acquérir des compétences en science et technologie.
Dans ce cadre notre site web représente une excellente ressource pour les parents, les enseignants et les enfants qui souhaitent découvrir la robotique.

Coordonnées

Zaouiet Kontech-Jemmel-Monastir-Tunisie

+216 92 886 231

medaliprof@gmail.com

Photos des articles

Site robotique réalisé par Mohamed Ali-Prof Info