Bluez-Programmierung

Ich bin Programmierung in BlueZ auf meinem Raspberry Pi mit einem USB-Bluetooth-dongle.
Ich muss in der Lage sein, um programmgesteuert eine Verbindung zu einem Arduino BT, das problem ist, dass das Bluetooth-Modul der Arduino ist immer noch mit legacy-Paarung also immer wenn ich versuchen, einen socket zu öffnen, um das Gerät bekomme ich eine Permission Denied.
Wie sende ich entlang einer PIN zum abschließen des pairing-Anfrage durch BlueZ?

  • Haben Sie testen mit der simple-agent?
  • Ich will es tun, ohne third-party software, nur durch die bluez-C-API.
  • Haben, versuchen Sie dies: stackoverflow.com/questions/14820004/...
  • Ich schlage vor, Sie verwenden die bluez DBUS APIs anstelle der internen hcitools code. Es ist besser unterstützt und auf einem höheren Niveau. Wenn Sie diesen Weg gehen, was Sie tun müssen, ist zu registrieren, Ihre Bewerbung als Agent. Dann, wenn ein BT-Authentifizierung erforderlich ist, muss Ihr Agent erhalten die PIN/passkey anfordern. Finden Sie die bluez agent-doc für die API. Oder Sie können starten Sie ein pairing mit dem Gerät api. Das Gerät sieht Geräte-doc für details.
  • Au sieht es aus wie diese API ' s sind sowohl für Python gibt es keine Dokumentation für C?
  • Sie sind nicht-python-APIs. Sie sind DBUS APIs. Wenn Sie nicht behandelt DBUS dann gibt es eine Lernkurve. Im Grunde DBUS ist ein messaging-system. Es gibt verschiedene Bindungen (C, python, etc) enthalten, die dbus-Unterstützung. Für C, die zwei häufigsten sind glib und QT (kein link, da ich nicht verwenden). bluez intern verwendet glib.
  • Die docs sagen, was der Bluez DBUS-Schnittstellen und Eigenschaften sind. Dann, was Sie tun, ist (über die von Ihnen gewählte dbus-binding) aufrufen des Bluez DBUS apis zu Entdecken, Pair, Unpair, etc. Für einen schnellen start, Blick auf die bluez Umsetzung für die bluetoothctl - Befehl. Das nutzt den DBUS APIs zur Implementierung einer Befehlszeile führt, dass die verschiedenen BT-Operationen.
  • au-oh ich sehe, danke. Ich nehme an es gibt keine Beispiele für die DBUS-API für bluetooth-agent Zwecke? Da DBUS ist für mehr Dinge, als jusr Bluetooth-ich fürchte, ich könnte überfordert sein
  • au Danke für den link, ich werde sehen, dass heraus zu starten
  • Keine Probleme. Wenn Sie irgendwelche spezifischen Fragen nach einem Blick auf, der poste bitte eine neue Frage und hoffentlich auch mich oder jemand kann Ihnen helfen.

Schreibe einen Kommentar