BLUETOOH - Kasimashi/Systemes-embarques GitHub Wiki
Bluetooth est une technologie de réseau personnel sans fils (noté WPAN pour Wireless Personal Area Network), c'est-à-dire une technologie de réseaux sans fils d'une faible portée permettant de relier des appareils entre eux sans liaison filaire. Contrairement à la technologie IrDa (liaison infrarouge), les appareils Bluetooth ne nécessitent pas d'une ligne de vue directe pour communiquer, ce qui rend plus souple son utilisation et permet notamment une communication d'une pièce à une autre, sur de petits espaces.
L'objectif de Bluetooth est de permettre de transmettre des données ou de la voix entre des équipements possédant un circuit radio de faible coût, sur un rayon de l'ordre d'une dizaine de mètres à un peu moins d'une centaine de mètres et avec une faible consommation électrique.
Ainsi, la technologie Bluetooth est principalement prévue pour relier entre-eux des périphériques (imprimantes, téléphones portables, appareils domestiques, oreillettes sans fils, souris, clavier, etc.), des ordinateurs ou des assistants personnels (PDA), sans utiliser de liaison filaire. La technologie Bluetooth est également de plus en plus utilisée dans les téléphones portables, afin de leur permettre de communiquer avec des ordinateurs ou des assistants personnels et surtout avec des dispositifs mains-libres tels que des oreillettes bluetooth. Les oreillettes Bluetooth permettent de faire office de casque audio perfectionné intégrant des fonctionnalités de commande à distance.
La technologie Bluetooth a été originairement mise au point par Ericsson en 1994. En février 1998 un groupe d'intérêt baptisé Bluetooth Special Interest Group (Bluetooth SIG), réunissant plus de 2000 entreprises dont Agere, Ericsson, IBM, Intel, Microsoft, Motorola, Nokia et Toshiba, a été formé afin de produire les spécifications Bluetooth 1.0, qui furent publiées en juillet 1999.
Le nom « Bluetooth » (littéralement « dent bleue ») se rapporte au nom du roi danois Harald II (910-986), surnommé Harald II Blåtand (« à la dent bleue »), à qui on attribue l'unification de la Suède et de la Norvège ainsi que l'introduction du christianisme dans les pays scandinaves.
Le logo est inspiré des initiales runiques du roi Harald Blåtand : Hagall (ᚼ) Bjarkan (ᛒ).
Le Bluetooth permet d'obtenir des débits de l'ordre de 1 Mbps, correspondant à 1600 échanges par seconde en full-duplex, avec une portée d'une dizaine de mètres environ avec un émetteur de classe II et d'un peu moins d'une centaine de mètres avec un émetteur de classe I.
Le standard Bluetooth définit en effet 3 classes d'émetteurs proposant des portées différentes en fonction de leur puissance d'émission :
Classe | Puissance (affaiblissement) | Portée |
---|---|---|
I | 100 mW (20 dBm) | 100 mètres |
II | 2,5 mW (4 dBm) | 15-20 mètres |
III | 1 mW (0 dBm) | 10 mètres |
Contrairement à la technologie IrDA, principale technologie concurrente utilisant des rayons lumineux pour les transmissions de données, la technologie Bluetooth utilise les ondes radio (bande de fréquence des 2.4 GHz en modulation GFSK) pour communiquer, si bien que les périphériques ne doivent pas nécessairement être en liaison visuelle pour communiquer. Ainsi deux périphériques peuvent communiquer en étant situés de part et d'autre d'une cloison et, cerise sur le gâteau, les périphériques Bluetooth sont capables de se détecter sans intervention de la part de l'utilisateur pour peu qu'ils soient à portée l'un de l'autre.
Le standard Bluetooth se décompose en différentes normes :
- IEEE 802.15.1 définit le standard Bluetooth 1.x permettant d'obtenir un débit de 1 Mbit/sec ;
- IEEE 802.15.2 propose des recommandations pour l'utilisation de la bande de fréquence 2.4 GHz (fréquence utilisée également par le WiFi). Ce standard n'est toutefois pas encore validé ;
- IEEE 802.15.3 est un standard en cours de développement visant à proposer du haut débit (20 Mbit/s) avec la technologie Bluetooth ;
- IEEE 802.15.4 est un standard en cours de développement pour des applications Bluetooth à bas débit.
Le standard Bluetooth, à la manière du WiFi (Frequency Hopping Spread Spectrum, en français étalement de spectre par saut de fréquence ou étalement de spectre par évasion de fréquence), consistant à découper la bande de fréquence (2.402 - 2.480 GHz) en 79 canaux (appelés hops ou sauts) d'une largeur de 1MHz, puis de transmettre en utilisant une combinaison de canaux connue des stations de la cellule.
Ainsi, en changeant de canal jusqu'à 1600 fois par seconde, le standard Bluetooth permet d'éviter les interférences avec les signaux d'autres modules radio.
Le standard Bluetooth est basé sur un mode de fonctionnement maître/esclave. Ainsi, on appelle « picoréseau » (en anglais piconet) le réseau formé par un périphérique et tous les périphériques présents dans son rayon de portée. Il peut coexister jusqu'à 10 picoréseaux dans une même zone de couverture. Un maître peut être connecté simultanément à un maximum de 7 périphériques esclaves actifs (255 en mode parked). En effet, les périphériques d'un picoréseau possèdent une adresse logique de 3 bits, ce qui permet un maximum de 8 appareils. Les appareils dits en mode parked sont synchronisés mais ne possèdent pas d'adresse physique dans le picoréseau.
En réalité, à un instant donné, le périphérique maître ne peut se connecter qu'à un seul esclave à la fois. Il commute donc très rapidement d'un esclave à un autre afin de donner l'illusion d'une connexion simultanée à l'ensemble des périphériques esclaves.
Le standard Bluetooth prévoit la possibilité de relier deux piconets entre eux afin de former un réseau élargi, appelé « réseau chaîné » (en anglais scatternet), grâce à certains périphériques faisant office de pont entre les deux piconets.
L'établissement d'une connexion entre deux périphériques Bluetooth suit une procédure relativement compliquée permettant d'assurer un certain niveau de sécurité, selon le déroulé suivant :
- Mode passif
- Phase d'inquisition : découverte des points d’accès
- Synchronisation avec le point d’accès (paging)
- Découverte des services du point d’accès
- Création d’un canal avec le point d’accès
- Pairage à l’aide d’un code PIN (sécurité)
- Utilisation du réseau
En utilisation normale un périphérique fonctionne en « mode passif », c'est-à-dire qu'il est à l'écoute du réseau.
L'établissement de la connexion commence par une phase appelée « phase d'inquisition » (en anglais « inquiry »), pendant laquelle le périphérique maître envoie une requête d'inquisition à tous les périphériques présents dans la zone de portée, appelés points d'accès. Tous les périphériques recevant la requête répondent avec leur adresse.
Le périphérique maître choisit une adresse et se synchronise avec le point d'accès selon une technique, appelée paging, consistant notamment à synchroniser son horloge et sa fréquence avec le point d'accès.
Un lien s'établit ensuite avec le point d'accès, permettant au périphérique maître d'entammer une phase de découverte des services du point d'accès, selon un protocole appelé SDP (Service Discovery Protocol).
A l'issue de cette phase de découverte de services, le périphérique maître est en mesure de créer un canal de communication avec le point d'accès en utilisant le protocole L2CAP.
Selon les besoins du service, un canal supplémentaire, appelé RFCOMM, fonctionnant au-dessus du canal L2CAP pourra être établi afin de fournir un port série virtuel. En effet certaines applications sont prévues pour se connecter à un port standard, indépendant de tout matériel. C'est le cas par exemple de certaines applications de navigation routière prévues pour se connecter à n'importe quel dispositif GPS Bluetooth (Global Positionning System, un système de géolocalisation par satellite, permettant de connaître les coordonnées terrestres d'un appareil mobile ou d'un véhicule).
Il se peut que le point d'accès intègre un mécanisme de sécurité, appelé pairage (en anglais pairing), permettant de restreindre l'accès aux seuls utilisateurs autorisés afin de garantir un certain niveau d'étanchéité du picoréseau. Le pairage se fait à l'aide d'une clé de chiffrement communément appelée « code PIN » (PIN signifie Personal Information Number). Le point d'accès envoie ainsi une requête de pairage au périphérique maître. Ceci peut la plupart du temps déclencher une intervention de l'utilisateur pour saisir le code PIN du point d'accès. Si le code PIN reçu est correct, l'association a lieu.
En mode sécurisé, le code PIN sera transmis chiffré à l'aide d'une seconde clé, afin d'éviter tout risque de compromission.
Lorsque le pairage est effectif, le périphérique maître est libre d'utiliser le canal de communication ainsi établi !
Le standard Bluetooth définit un certain nombre de profils d'application (Bluetooth profiles), permettant de définir le type de services offerts par un périphérique Bluetooth. Chaque périphériques peut ainsi supporter plusieurs profils. Voici une liste des principaux profils Bluetooth :
- Advanced Audio Distribution Profile (A2DP) : profil de distribution audio avancée
- Audio Video Remote Control Profile (AVRCP) : profil de télécommande multimédia
- Basic Imaging Profile (BIP) : profil d'infographie basique
- Basic Printing Profile (BPP) : profil d'impression basique
- Cordless Telephony Profile (CTP) : profil de téléphonie sans fil
- Dial-up Networking Profile (DUNP) : profil d'accès réseau à distance
- Fax Profile (FAX) : profil de télécopieur
- File Transfer Profile (FTP) : profil de transfert de fichiers
- Generic Access Profile (GAP) : profil d'acc&egave;s générique
- Generic Object Exchange Profile (GOEP) : profil d'échange d'objets
- Hardcopy Cable Replacement Profile (HCRP) : profil de remplacement de copie lourde
- Hands-Free Profile (HFP) : profil mains libres
- Human Interface Device Profile (HID) : profil d'interface homme-machine
- Headset Profile (HSP) : profil d'oreillette
- Intercom Profile (IP) : profil d'intercom (talkie-walkie)
- LAN Access Profile (LAP) : profil d'accès au réseau
- Object Push Profile (OPP) : profil d'envoi de fichiers
- Personal Area Networking Profile (PAN) : profil de réseau personnel
- SIM Access Profile (SAP) : profil d'accès à un carte SIM
- Service Discovery Application Profile (SDAP) : profil de découverte d'applications
- Synchronization Profile (SP) : profil de synchronisation avec un gestionnaire d'informations personnelles (appelé PIM pour Personal Information Manager).
- Serial Port Profile (SPP) : profil de port série