Bonsoir Marceau69,
Merci beaucoup pour ce retour très positif.
Avant de répondre à tes questions, juste une précision : le module BLE et la manette communiquent sans aucun lien avec un smartphone. C'est l'ESP32 qui se connecte au PAD en fonction des services proposés par celui-ci.
Le Bluetooth low energy (BLE) n'est pas compatible avec le Bluetooth standard et consomme très peu de courant.
Pour faire simple, en Bluetooth standard, c'est une connexion permanente (écoute de musique par exemple) alors qu'en BLE, tant que la manette n'est pas manipulée, il n'y a pratiquement aucune consommation de courant.
Le code source utilise la librairie ArduinoBLE qui facilite énormément les accès à cette technologie et contient toutes les fonctions nécessaires. La complexité réside dans la connaissance du principe de fonctionnement du BLE ainsi que les différents codes envoyés par les appareils utilisant cette technologie :
Le protocole BLE est une sorte de mécanisme client/serveur, où l'objet BLE joue le rôle d'un serveur qui propose ses services à l'ESP32 qui viendra se connecter dessus en client.
Pour que le client puisse découvrir le serveur, c'est-à-dire pour qu'il puisse "voir" l'objet BLE, le protocole prévoit que le serveur envoie périodiquement une trame pour signaler sa présence.
Plus simplement l'objet broadcaste à intervalle régulier un message qui dit "je suis à côté de vous, je propose tel service, et j'ai telle adresse Bluetooth si vous voulez me joindre".
Au final, l'appariement est entièrement automatique et aucun paramétrage n'est nécessaire pour connecter une manette à son module.
Question consommation, j'utilise la manette tous les jours (et même les nuits) depuis plusieurs semaines et ne l'ai rechargé qu'une seule fois...
Le programme en est à sa quatrième évolution et toute la gestion a été réalisée en pointeurs. C'est un peu plus compliqué à comprendre, mais sans aucune commune mesure à l'utilisation. Le programme est très fluide (le microcontrôleur y est aussi pour beaucoup) et l'affichage ne souffre d'aucun ralentissement.
J'espère que ces quelques explications suffiront.
Bien à toi,
NitraThor.