3.2 KiB
Bluetooth
MESH networking
De base, le bluetooth comprend un "master" qui se connecte avec des périphériques comme des montres, des écouteurs... Mais le MESH networking consiste à ce que le "master" puisse être en même temps un périphérique d'un autre "master". On peut le comparer à un réseau IP.
[!info] Nordic a implémenté cette fonctionnalité sur leurs puces pour qu'elles puissent fonctionner simultanément des deux manières.
Adressage
L'adresse se fait sur 6 bytes :
- Les 2 premiers sont utilisés pour faire la séquence de hopping (NAP)
- Le byte suivant : upper address part (UAP),
- Les 3 derniers sont utiliés pour identifier le vendeur : Lower Address Part (LAP)
[!warning] Les appareils de nos jours n'utilisent pas cette adresse pour s'identifier pour des raisons de sécurités
Mode bluetooth
Connection
Un élément central peut parler simultanément avec 7 périphériques.
La communication fonctionne de la manière suivante :
L'élément central va envoyer un paquet à un certain intervalle de connexion paramétrable. Si le périphérique ne répond
pas la connexion n'est plus valide. S'il n'y a rien à transmettre, des paquet vides sont envoyés.
Broadcast
Un périphérique peut envoyer de l'information à un nombre illimité d'éléments centraux.
Transmission de data
Si le nombre de données oblige l'élément central à dépasser l'intervalle de connexion, il termine sa réponse, puis il reprend les paquets à chaque intervalle.
Client - Serveur
L'interaction client-serveur permet au client de faire une requête et au serveur de répondre, ou bien au serveur de transmettre périodiquement des données au client.
Database
La base de données Bluetooth joue un rôle essentiel dans l'organisation et l'accès aux informations. Elle peut adopter différentes formes :
- Publique : Accessible à tous les appareils, permettant une lecture générale des données.
- Privée : Réservée au constructeur, offrant une confidentialité accrue pour certaines données.
Cette structuration permet de définir comment les informations sont exposées, lues, et partagées entre les dispositifs Bluetooth, garantissant une flexibilité adaptée aux divers besoins des applications.
GATT / ATT
GATT (Generic ATTribute profile) est le profil général d'attribut et ATT (ATTribute protocole) est le protocol utilisé par l'attribut. C'est une manière d'organiser la database de manière à avoir un service qui pointe sur une caractéristique possédant une valeur :
[!info] Le
CCCD(Client Characteristic Configuration Descriptor) permet une configuration du client. Il permet de dire au serveur de notifier le client lorsqu'il y a un changement de valeur dans la caractéristique
La stack
Pour tous les appareils Bluetooth, l'organisation de la stack est la même.



