update bluetooth
This commit is contained in:
1 parent
95a5a19943
commit
33c1ffb7d2
1 file changed
+28
-10
+28
-10
@@ -3,40 +3,58 @@ Bluetooth
|
||||
</h1></header>
|
||||
|
||||
# MESH networking
|
||||
#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.
|
||||
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.
|
||||
|
||||
>[!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 être 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.
|
||||
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 envoie tout, puis il reprend les paquets à chaque intervalle.
|
||||
|
||||
## Client - Serveur
|
||||

|
||||
|
||||

|
||||
|
||||
On peut faire que le client fasse une requête et le serveur donne la valeur, ou bien que le serveur transmette à chaque intervalle de connexion.
|
||||
|
||||
# Database
|
||||
Elle peut avoir différentes organisations de donnée :
|
||||
- public, elle permet à n'importe qui de la lire
|
||||
- privée, elle est propre au constructeur
|
||||
|
||||
# GATT / ATT
|
||||
GATT est le profil général d'attribut et ATT est le protocol utilisé par l'attribut.
|
||||
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` permet une configuration du client personalisée.
|
||||

|
||||
|
||||

|
||||
|
||||
>[!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.
|
||||

|
||||

|
||||
Reference in new issue
Block a user