Translation(s): English - Français - Italiano - 日本語 (Nihongo)


Utiliser Bluetooth dans un système Debian

Bluetooth est une norme fournissant une communication sans fil à courte portée entre les appareils, généralement pour relier un appareil audio, une souris, un clavier, un téléphone, etc. à votre PC. Cet article explique comment configurer un adaptateur Bluetooth avec Debian et l'appairer avec un appareil. L'audio Bluetooth est documenté séparément sur la page BluetoothUser/a2dp (en anglais).

Les informations destinées aux développeurs, relatives à l'empaquetage interne de Bluetooth dans Debian, peuvent être trouvées sur la page Bluetooth.

Introduction

Nous partons du principe que vous avez un adaptateur Bluetooth sur votre ordinateur et un matériel Bluetooth (comme un téléphone ou un PDA). Ce document décrit ce qu'il faut faire pour faire communiquer votre ordinateur avec d'autres appareils Bluetooth.

Les étapes ci-dessous sont nécessaires pour utiliser les services Bluetooth. Une fois le Bluetooth paramétré, vous pourrez par exemple :

Suivre les indications ci-dessous.


Préparation

Installez la prise en charge Bluetooth (paquet bluetooth) :

Lire /usr/share/doc/bluez/README.Debian.gz pour mieux comprendre la démarche.

Assurez vous que le démon Bluetooth est en marche : sinon, démarrez-le.

# service bluetooth start


Couplage/Appairage

Pour des raisons de sécurité, les appareils Bluetooth ne pourront échanger des données entre eux que si ils ont été d'abord « présentés » (un petit peu comme dans la vraie vie :-)). C'est ce que l'on appelle l'appairage. L'appairage se fait en lançant la découverte à partir d'un appareil et en échangeant un code. Dans certains cas, le code est libre, et il suffit aux deux appareils de saisir le même code. Dans d'autres cas, le code est fixé par l'un des deux appareils (appareil dépourvu de clavier, par exemple), et l'autre doit le connaître pour s'y raccorder.

Notez que l'appairage n'est habituellement nécessaire que la première fois que deux appareils interagissent. Ensuite, les appareils se reconnaissent mutuellement, et l'échange de PIN n'est plus nécessaire. Toutefois cela dépendra des périphériques concernés (sur certains appareils cela est configurable).

Pour appairer les appareils (gérer les mots de passe), il faut un programme passkey-agent. Plusieurs options s’offrent à vous.

Appairage avec une interface graphique

Installez un des paquets suivants :

Déconnectez-vous de votre session graphique d'environnement de bureau et reconnectez-vous ; ceci est requis pour que le pop-up de l'appairage de l'étape suivante apparaisse correctement.

Vous pouvez maintenant tester l’appairage. Vous devez choisir dans les menu de votre appareil quelque chose comme « setup », « paramètres »,« connexion » ou « bluetooth » et rechercher les périphériques Bluetooth. Vous devriez trouver votre système Debian avec un nom semblable à : debian-0, où debian est le nom d’hôte du système Debian. Sur votre périphérique, sélectionnez le système Debian. Vous serez invités à entrer un code PIN à quatre chiffres, (choisissez 4 chiffres, par exemple 2309).

Sur votre ordinateur apparaîtra un pop-up avec un message demandant le code PIN, quelque chose comme : Appairage demandé par votre téléphone (xx:xx:xx:xx:xx:xx) téléphone représente le nom du téléphone et xx:xx:xx:xx:xx:xx est son adresse MAC.

Cliquer sur l'info bulle.

Une autre fenêtre va s'afficher. Elle va demander un code PIN, entrez le même que celui déjà entré ci-dessus (par exemple: 2309 ) et taper [Entrer].

Votre téléphone identifie le code PIN et l'affiche sur l'écran.

Les deux appareils se reconnaissent maintenant.

Appairage en ligne de commande

Si vous ne voulez pas ou ne pouvez pas utiliser GNOME ou KDE, vous pouvez aussi utiliser bluetooth-agent ou bluetoothctl pour l'appairage.

Appairage avec bluetooth-agent

Bluetooth-agent fait partie du paquet bluez. Il pourrait alors être déjà disponible si le Bluetooth a déjà été configuré sur votre système.

Vous avez juste à démarrer bluetooth-agent (en super-utilisateur) et donner un code PIN abitraire, par exemple, 4835 :

# bluetooth-agent 4835

Comme décrit ci-dessus, choisissez dans le menu de votre appareil quelque chose comme « setup », « paramètres »,« connexion » ou « Bluetooth » pour être appairé et recherchez les périphériques Bluetooth. Sélectionnez votre ordinateur qui devrait être repéré ; l’appareil doit vous demander un code PIN. Entrer le code PIN que vous avez donné à bluetooth-agent. L’appairage est fini.

Note : Au lieu d'effectuer l’appairage depuis le téléphone, on peut aussi appairer depuis l’ordinateur. Démarrez bluetoogh-agent comme c'est expliqué plus haut et lancez la commande suivante qui tentera la connexion au téléphone. Par exemple :

rfcomm connect hci0 <adresse téléphone>

où <adresse téléphone> est l’adresse de votre téléphone Bluetooth, détectée avec hcitool scan (attention, ceci fonctionne seulement si votre téléphoneest détectable, l’ordinateur n’ayant pas besoin de l’être). Cela créera une connexion entre votre ordinateur et le téléphone, et, en conséquence,le téléphone vous demandera de confirmer la tentative de connexion en entrant un code PIN. Entrez le code PIN que vous avez utilisé avec bluetooth-agent.

Appairage avec bluetoothctl

Si bluetooth-agent n'est pas disponible, essayez bluetoothctl :

Lancez la commande interactive bluetoothctl. Tapez « help » pour obtenir la liste des commandes disponibles.

Utiliser une souris Bluetooth

Pour utiliser une souris Bluetooth, il est avant tout nécessaire d'installer la prise en charge pour Bluetooth. Voir plus haut.

Si votre machine a un environnement graphique avec une interface graphique pour l'appairage de périphériques Bluetooth, il a de fortes chances que vous puissiez découvrir et appairer facilement votre périphérique à partir de celle-ci. Voir comment appaier avec une interface graphique.

Si cela ne fonctionne pas, ou que vous avez besoin d'utiliser la ligne de commande, vous pouvez essayer d'exécuter

hcitool scan

pour obtenir une adresse MAC Bluetooth de la souris.

Une connexion initiale peut être réalisée avec

hidd --connect <BTaddress>

où <BTaddress> est l'adresse MAC obtenue avec la commande précédente.

Pour activer d'autres reconnexions automatiques (par exemple au redémarrage), vous devez exécuter

/usr/share/doc/bluez/examples/test-device trusted <BTaddress>

pour marquer le périphérique comme approuvé.


Dépannages

Problèmes généraux sur l’appairage/ couplage

Pour que la liaison fonctionne comme décrit ci-dessus, les périphériques bluetooth de votre ordinateur doivent être détectables. Un dongle Bluetooth peut démarrer en mode caché. (Rapport de bug ici).

Pour régler ce problème, entrez :

# dbus-send --system --dest=org.bluez /org/bluez/hci0 org.bluez.Adapter.SetMode string:discoverable

ou avec hciconfig:

# hciconfig hci0 piscan

hciconfig devrait alors afficher les drapeaux ISCAN PSCAN indiquant que votre appareil Bluetooth est détectable (c'est-à-dire peut être scanné). Après avoir terminé l’appairage, il serait bien de rendre à nouveau votre ordinateur invisible :

FIXME: il semble manquer une commande

Ou alors hciconfig :

# hciconfig hci0 noscan

Commandes utiles

Afficher votre appareil Bluetooth (pour vérifier qu’il est bien installé)

hcitool dev

Recherche des périphériques distants

hcitool scan

Redémarrer le service bluetooth

sudo service bluetooth restart

Forcer la connexion à un appareil

sudo hidd --connect <BT_Address>

Configuration des fichiers utiles à Bluetooth

/etc/default/bluetooth - Réglage par défaut du HID bluez – Pour les souris et les claviers

HID2HCI_ENABLED=1

/etc/bluetooth/hcid.conf – Réglages du HCI bluez – configurer les périphériques statiques

device 00:1E:52:FB:68:55 {
    name "Apple Wireless Keyboard";
    auth enable;
    encrypt enable;}

Problèmes avec KDE

Cette section est très obsolète et nécessite une réécriture complète.

KDE utilise maintenant !BlueDevil au lieu de !KDEBluetooth. Les programmes listés ci-dessous n'existent plus. Les appareils peuvent être associés à !BlueDevil en exécutant bluedevil-wizard dans votre terminal.

Puisque le code PIN doit être mis en œuvre au niveau de l’utilisateur, des changements doivent être apportés au fichier /etc/bluetooth/hcid.conf

Commentez la ligne

passkey "2309";

et ajoutez la ligne suivante juste en dessous (Note: kdebluetooth inclut le programme kbluepin) :

# passkey "2309";
pin_helper /usr/bin/bluez-pin;

KDE s’attend aussi à trouver le fichier /etc/bluetooth/link_key

# touch /etc/bluetooth/link_key
# chmod 644 /etc/bluetooth/link_key
# service bluetooth restart

Avec KDE, exécutez kdebluetoothhd. Cliquez sur l’icône Bluetooth dans la zone de notification, cela chargera Konqueror avec l’URL Bluetooth://. Vous devriez voir votre appareil et pouvoir transférer des fichiers en choisissant le protocole adéquat.

Si vous recherchez votre PC depuis votre appareil, KDE devrait ouvrir une fenêtre vous demandant un code PIN. Vous pourrez ensuite envoyer des fichiers à votre PC (KDE lancera un programme pour cela).

GNOME

Personal_File_Sharing_Preferences_Receive_Files_over_Bluetooth.png

Impossible de se reconnecter après la sortie de veille

Vous remarquerez peut-être que vous ne pouvez pas vous reconnecter automatiquement à un périphérique après sa mise en veille. Vous remarquerez par exemple les erreurs suivantes dans vos journaux :

bluetoothd[487]: Authentication attempt without agent
bluetoothd[487]: Access denied: org.bluez.Error.Rejected

Cela peut être dû au fait que ce périphérique n'est pas marqué comme étant « approuvé ». Pour corriger cela, essayez la commande suivante dans un terminal de bluetoothctl :

trust 00:1D:43:6D:03:26

... où 00:1D:43:6D:03:26 est un identifiant de périphérique pour le haut-parleur.

Vous voudrez peut-être également que Pulseaudio se connecte automatiquement à la sortie nouvellement découvert en ajoutant à ~/.config/pulse/default.pa :

# automatically switch to newly-connected devices
load-module module-switch-on-connect

Note : cette solution a été trouvée dans le wiki de Arch Linux.

Problèmes de périphérique audio (avec appairage, qualité, sélection de codec, etc.)

Voir la page BluetoothUser/a2dp (en anglais) pour une documentation complète sur l'audio Bluetooth dans Debian.


Voir aussi


Lien externes


CategoryHardware CategoryModem CategoryFrHardware CategorySound CategoryNetwork CategoryWireless