Bluetooth Low Energy: Abhören von Meldungen / Meldungen in Linux
Ich versuche zu kommunizieren mit einem BLE-Modul durch einen Linux-Rechner (das Modul ausgeführt wird, ein Herzfrequenz-Profil). Bisher habe ich in der Lage zu tun alles, was ich brauche, außer Zuhören für Meldungen und Hinweise (z.B. hören, die für die Herzfrequenz-Messung-Meldung). Ich bin mit der kernel-version 3.5 und bluez-5.3.
Ausarbeiten Befehle so weit:
hcitool lescan
hcitool lecc
gatttool -b <Mac Address> --primary
gatttool -b <MAC Address> --characteristics
gatttool -b <MAC Address> --char-read
gatttool -b <MAC Address> --char-desc
gatttool -b <MAC Address> --interactive
Fehlgeschlagene Befehle:
gatttool -b <MAC Address> --listen
Jede Hilfe wird sehr geschätzt.
Kommentar zu dem Problem
Hast du die CCC Werte, um die Benachrichtigungen/Hinweise?
Ich kann nicht finden, nichts über die CCC Werte. Die einzigen Dinge, die ich kontrollieren kann, sind die psm und der mtu. Wie setzen Sie die CCC Werte?
InformationsquelleAutor der Frage yousif saeed | 2013-03-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen, diese...
Laufen
gatttool -b <MAC Address> --interactive
wie du vor hast. Sie erhalten eine Eingabeaufforderung und geben Sieconnect
. Sie sollten sehen, einCON
in der Eingabeaufforderung angezeigt, die angibt, Sie habe mit dem Gerät verbunden. Geben Sie dannchar-read-uuid 2902
. Sie sollten eine Liste aller CCC (Client Charakteristisch Konfiguration die Attribute auf dem Gerät. Sie können versuchen Sie Sie alle, um 0100 abrufen von Benachrichtigungen, 0200 für Indikationen, 0300 für beide, oder 0000 für alles aus. Typhelp
zu sehen, alle Befehle und deren Argumente.EDIT:
Den Einsatz der
--listen
argument erfordert, dass Sie paar es mit anderen Befehlen, schalten Sie die Benachrichtigungen und/oder Indikationen. Hier also ein Beispiel, das funktioniert in Bluez 4.101:Natürlich müssen Sie ändern das handle für das handle des CCC, dass Sie wollen, schalten Sie die Benachrichtigungen für die. Aber ich finde es immer noch einfacher, benutzen Sie einfach den interaktiven Modus.
InformationsquelleAutor der Antwort Tim Tisdall
Sieht aus wie die ältere version von Bluez (hcitool & gatttool) nicht erlauben, Sie zu schreiben, um die Bluetooth Low Energy-Geräte. Ich landete der Installation einer neueren version (5.17 als dies geschrieben wurde), um Benachrichtigungen " aktiviert, etc.
Um eine Liste aller Ihrer Griffe können Sie Folgendes ausführen:
Dann können Sie Lesen aus einem Griff:
(die oben Griff ist für meine nrf51822 Batterie-Niveau)
Wo der Griff ist, aus der Liste, die Sie von
char-desc.
Genau wie Tim gesagt, man kann schreiben, um die Benachrichtigung im Zusammenhang handle, um Hinweise oder Meldungen. (in meinem Fall mein Gerät hatte nur Benachrichtigungen)
(die oben Griff ist für meine nrf51822-Batterie-level-Meldung)
In meinem Fall die Akku-Meldung sollte nicht senden, nichts, bis der Ladezustand der Batterie hat sich geändert.
Schrieb ich einen ziemlich langen blog-post auf die erste setup mit Bluez. Sie können es hier finden: Erste Schritte mit Bluetooth Low Energy Fühlen Sie sich frei, check it out!
InformationsquelleAutor der Antwort jaredwolff
Endgültige Antwort für das Lesen der Herzfrequenz auf Mio Alpha :
InformationsquelleAutor der Antwort Fred.Taiwan
behalten die CCC Wert müssen Sie das Pairing der beiden Geräte. sobald Sie gepaart sind, die Sie nicht brauchen, um setzen Sie den CCC wieder. auf der nächsten Wiedereinschalten findet es die Einstellung , die gespeichert werden in Derc FLASH-Schlüsselanhänger. versuchen, konfigurieren Sie nach der Kopplung via SMP.
InformationsquelleAutor der Antwort RobinSingh