Aller au contenu

Travailler avec le Bluetooth

Travailler avec le Bluetooth

VRMaze propose un module d'acquisition de données via le protocole Bluetooth Low Energy. Ce protocole permet l'acquisition de données en provenance de capteurs spécifiques tels que les capteur de respiration ou de rythme cardiaque.

Acquisition Bluetooth

L'acquisition via le bluetooth se fait selon la norme Bluetooth Low Energy.

Support du protocole Bluetooth

Dans la version 2023 de VRmaze, seul les capteurs cardiaques de norme 0x180d sont pris en charge.

Connexion aux périphériques

Il est nécessaire d'appairer le périphérique à l'ordinateur avant de pouvoir l'utiliser dans VRmaze. VRmaze ne fait pas de reconnaissance de périphérique non pairés.

Pour permettre la connexion à un périphérique Bluetooth, il convient de connaitre 3 de ses paramètres :

  • Son nom
  • Le service à utiliser
  • La caractéristique du service à laquelle souscrire.

VRmaze propose une entité de gestion Bluetooth générique pour laquelle ces 3 paramètres sont requis.

!

Les paramètres de gestion d'un périphérique Bluetooth.

En plus de ces 3 paramètres, un quatrième permet d'affecter un identifiant sous forme d'un nombre entier à l'entité en question.

Identification de périphérique dans VRMaze

Dans VRmaze, chaque périphérique se voit associé à un identifiant sous forme de nombre entier. Le but de cet identifiant est de permettre la référence du périphérique sépcifique dans les entités d'enregistrement.

Comment obtenir les informations d'un périphérique ?

Le nom du périphérique est noté dans la liste des périphériques Bluetooth de Windows.

!

Les paramètres Windows affichant le nom des périphériques.

Les deux autres paramètres sont plus complexes à obtenir et necessite l'utilisation d'outils spécifiques. InMind-VR propose un outil basé sur la librairie BleWinrtDll, qui permet de scanner les périphériques, leur services et les caractéristiques des services.

Cet outil est disponible ici

!

L'outil de gestion des services et caractéristiques.

Cet outil permet donc de connaitre les identifiants des services et caractéristiques en vu de les intégrer dans VRmaze. Il faut noter que seuls quelques services sont utilisables dans VRmaze, et ces services sont conformes à la norme Bluetooth Low Energy. Ces identifiants sont aussi normés (par exemple, un capteur cardiaque aura toujours un identifiant commençant par 0000180d, autrement dit 0x180d).

Identifiant de Service et de Caractéristique

Les identifiants saisis en paramètres dans VRmaze n'ont pas besoin d'être les identifiants exacts. Pour un capteur cardiaque, l'identifiant de service 180d suffit a trouver le service dont l'identifiant complet comporte cette chaine de caractères.

Caractéristique de service Bluetooth

Bien souvent un service supporté par VRmaze ne dispose que d'une ou deux caractéristiques.

Instruction spéciale pour le Bluetooth

VRmaze propose une instruction spéciale pour permettre au gestionnaire Bluetooth de se connecter à tous les périphériques nécessaire à l'experimentation. En effet, il peut être demander jusqu'a 10 secondes pour se connecter à un ensemble de périphériques. CEtte instruction est utile pour ne pas commencer un essai avant d'être assuré que les périphériques soient tous connectés.

Instruction de connexion Bluetooth

L'instruction de connexion Bluetooth se terminera automatiquement lorsque tous les périphériques seront connectés. Le temps maximal associé par défaut à l'instruction n'est pas pris en compte.

Instruction de connexion Bluetooth

L'instruction de connexion Bluetooth est une simple instruction textuelle qui dispose de son comportement propre.

!

L'instruction Bluetooth.

Les entités d'enregistrement de données Bluetooth

Un gestionnaire de périphérique Bluetooth ne permet pas, à lui seul, le stockage des données reçues. Pour ce faire, comme pour tous les autres périphériques, des entités d'enregistrement doivent être intégrées à chaque essai.

Enregistrement Bluetooth

La version 2023 de VRmaze ne permet que l'enregistrement des services de capteur cardiaque a la norme 0x180d. Il existe 2 entités, l'une pour sauvegarder le HR et la seconde pour enregistrer le RR.

Chaque entité d'enregistrement dispose d'un identifiant de périphérique. Cet identifiant doit correspondre à un identifiant de l'un des gestionnaire de périphérique Bluetooth du protocole.

!

L'enregistreur HR du Bluetooth.