Exemple de joystick Bluetooth Arduino Nano ESP32 - Contrôle directionnel 2D via tutoriel BLE
Vue d'ensemble
Cet exemple implémente un contrôle joystick 2D interactif sur l'Arduino Nano ESP32 en utilisant le BLE (Bluetooth Low Energy) via l'application DIYables Bluetooth STEM. Recevez des coordonnées X/Y en temps réel (de -100 à +100) pour le contrôle directionnel. Convient à la navigation de robots, servos pan-tilt, contrôle de moteurs et manettes de jeu.
Remarque : L'Arduino Nano ESP32 prend en charge le BLE uniquement — le Bluetooth Classique n'est pas pris en charge. L'application Bluetooth DIYables fonctionne sur Android et iOS avec le BLE.

Fonctionnalités
- Contrôle 2D : Axes X et Y avec plage de −100 à +100
- Sensibilité configurable : Seuil de mouvement minimum avant de déclencher les mises à jour
- Option de retour automatique : Le joystick peut se recentrer automatiquement lors du relâchement
- Valeurs en temps réel : Mises à jour continues de la position pendant le déplacement
- Support Android et iOS : Le BLE est compatible avec les deux plateformes
- Pas de couplage requis : Le BLE se connecte sans couplage manuel
- Faible consommation : Le BLE consomme moins d'énergie que le Bluetooth Classique
Matériel nécessaire
Ou vous pouvez acheter les kits suivants:
| 1 | × | Kit de Capteurs DIYables (18 capteurs/écrans) |
Code Arduino Nano ESP32
Étapes rapides
- Nouveau sur l'Arduino Nano ESP32 ? Commencez par le Installation du logiciel Arduino Nano ESP32..
- Connectez l'Arduino Nano ESP32 à votre ordinateur via USB.
- Ouvrez l'Arduino IDE.
- Sélectionnez la carte Arduino Nano ESP32 et le port COM correct.
- Cliquez sur l'icône Bibliothèques dans la barre latérale gauche.
- Recherchez "DIYables Bluetooth" et sélectionnez la bibliothèque Bluetooth DIYables par DIYables.
- Cliquez sur Installer.

- Lorsqu'on vous demande d'installer les dépendances, cliquez sur Tout installer.

Code BLE
- Dans l'Arduino IDE, ouvrez Fichier Exemples DIYables Bluetooth ArduinoBLE_Joystick, ou collez le code dans l'éditeur.
- Cliquez sur Téléverser pour flasher le sketch sur la carte.
- Ouvrez le Moniteur Série.
- La sortie du Moniteur Série devrait ressembler à :
Application mobile
Remarque : L'application Bluetooth DIYables fonctionne sur Android et iOS avec le BLE. Aucun couplage manuel n'est requis.
- Lancez l'application Bluetooth DIYables.
- Au premier lancement, accordez les autorisations suivantes :
- Appareils à proximité (Android 12+) / Bluetooth (iOS) — requis pour scanner et se connecter aux appareils Bluetooth
- Localisation (Android 11 et versions antérieures uniquement) — requis par les anciennes versions Android pour scanner le BLE
- Assurez-vous que le Bluetooth est activé sur votre appareil.
- Appuyez sur Connecter sur l'écran d'accueil. L'application va scanner les appareils BLE.

- Appuyez sur "Arduino_Joystick" dans les résultats du scan.
- Après la connexion, revenez à l'écran d'accueil et ouvrez l'application Joystick.

Appuyez sur l'icône des paramètres sur l'écran d'accueil pour afficher ou masquer les applications. Consultez le Manuel utilisateur de l'application Bluetooth DIYables pour plus de détails.
- Faites glisser le joystick dans n'importe quelle direction.

Regardez maintenant le Moniteur Série dans l'Arduino IDE. Vous verrez :
Personnalisation créative - Adaptez le code à votre projet
Gérer les valeurs du joystick
Configurer les paramètres du joystick
Gérer la requête de configuration
Exemples de programmation
Robot à entraînement différentiel
Servo pan-tilt
Direction avec zone morte
Dépannage
Problèmes courants
1. L'appareil n'est pas visible dans l'application
- Confirmez que la carte est alimentée et que le sketch est téléversé
- Vérifiez que le Bluetooth est activé sur votre téléphone
- Sur Android 11 et versions antérieures, activez également les services de localisation
2. Le joystick ne répond pas
- Vérifiez l'état de la connexion Bluetooth dans l'application
- Confirmez que le callback onJoystickValue est correctement enregistré
- Vérifiez le Moniteur Série pour les messages de connexion
3. Le mouvement semble lent
- Diminuez la valeur de sensibilité pour des mises à jour plus fréquentes
- Assurez-vous que bluetoothServer.loop() s'exécute sans longs délais
4. Les valeurs sautent ou sont incohérentes
- Ajoutez un filtre de zone morte pour les petits mouvements
- Vérifiez le paramètre de sensibilité
5. La connexion se coupe fréquemment
- Réduisez la distance à l'Arduino
- Assurez une alimentation USB stable
6. Le téléversement échoue ou la carte n'est pas reconnue
- Installez le dernier paquet de carte Arduino Nano ESP32 via le Gestionnaire de cartes
- Essayez un câble USB ou un port différent
Idées de projets
- Contrôleur de robot sans fil
- Support pan-tilt de caméra
- Contrôle 2 axes de bras robotique
- Contrôleur de position pour matrice LED
- Manette de jeu pour jeux Arduino
Prochaines étapes
Après avoir terminé l'exemple de joystick Bluetooth, explorez :
- Curseur Bluetooth — Contrôle de valeur linéaire
- Rotateur Bluetooth — Contrôle angulaire
- Moniteur Bluetooth — Retour de statut
- Applications Bluetooth multiples — Combinez le joystick avec d'autres contrôles
Support
Pour une aide supplémentaire :
- Consultez la documentation de référence API
- Visitez les tutoriels DIYables
- Les forums de la communauté Arduino