Jumelage Bluetooth en C blueZ sous Linux
Je ne trouve aucune référence sur le jumelage d'un périphérique bluetooth sur linux dans un programme écrit en C en utilisant la BlueZ Bluetooth bibliothèques. J'ai déjà réussi à faire un HCI requête de niveau pour obtenir des appareils avec leur RSSI niveaux (lors de la découverte de périphériques), mais actuellement je suis coincé avec ce. J'ai vu une suggestion pour l'utilisation de l'api DBUS pour le blueZ-simple-agent - mais est-il un moyen d'éviter cela et d'utilisation de quelques C au niveau des méthodes de BlueZ?
source d'informationauteur okipol
Vous devez vous connecter pour publier un commentaire.
Vraiment un super livre que j'ai trouvé ici m'a aidé dans ce domaine:
http://people.csail.mit.edu/rudolph/Teaching/Articles/BTBook.pdf
Il a des exemples en c et en python de mise en place, l'association etc. Je voulais essayer de l'utiliser pour démarrer un bluetooth classique (spp) de la connexion de l'ipad, mais ne pense pas que le noyau a des choses que j'ai besoin.
Code d'authentification de
hcitool
(code source d'origine peut voir à http://git.kernel.org/cgit/bluetooth/bluez.git/tree/tools/hcitool.c)Et la configuration de la BROCHE
Vous pouvez télécharger la plus récente version du code source ici: http://www.bluez.org/
Il y a de l'ist de l'outil "btmgmt" et aussi le bluez-simple-agent qui peut être utilisé pour l'appariement. Le code est dans les sources et il y a aussi de la documentation (dans le dossier docs). Peut-être vous pouvez utiliser le code d'un de ces outils pour vos désirs ou peut-être que cela vous aide à comprendre le couplage.
Je veux de la paire 2 appareil avec le bluez bluetooth bibliothèque en premier lieu, mais je les parages trouver utile de code dans le source de la bluez-outils.
Il y a le fichier "btmgmt.c" et certains fichiers qui sont inclus dans ce qui mettre en œuvre le couplage.
Pour moi, malheureusement, il ne fonctionne pas et je ne comprends pas pourquoi. Mais peut-être que vous avez plus de succès avec elle. Voici comment vous pouvez le tester.
Si vous ne l'avez pas déjà fait, téléchargez la dernière version du code source ici: http://www.bluez.org/
Extraire et ouvrir un terminal dans le bluez dossier.
Puis exécuter la ligne suivante dans le terminal:
Je ne me souviens pas de tous les paquets dont vous avez besoin pour installer, mais vous pouvez exécuter cette commande et vérifier pourquoi il échoue, puis installez le paquet et exécutez à nouveau jusqu'à ce qu'il fonctionne. Demandez à google si vous ne savez pas quelle formule, vous devez installer.
Par la suite:
Maintenant, vous pouvez passer à des outils de dossier à partir d'un terminal et tapez ./btmgmt pour voir comment l'utiliser.
Vous pouvez également installer pour pouvoir l'utiliser simplement en tapant "btmgmt" quel que soit votre emplacement.
Vous besoin de sudo droit de les utiliser.
Ce dbus de commande peut être utilisé pour coupler
Ici 1301 est l'id de processus de bluetoothd
/org/bluez/agent_1317 est l'agent de couplage bluetooth.Le bluezagent qui vient comme agent.c dans bluez/test peut être utilisé à cette fin.