2016-07-26 5 views
0

Ich benutze BlueZ Stack für Bluetooth Verbindung zwischen Smartphone (AG-Audio Gateway) und Embedded Board (HF-Handsfree).BlueZ welcher Layer Grund der Bluetooth Verbindung bekommen

Auf welcher Ebene von Bluez (HCI, L2CAP, RFCOMM) werden wir den Grund für die Bluetooth-Verbindung finden. So können wir unterscheiden folgende Art der Trennung:

  1. Smart-Phone SIMPLE DISCONNECT, aber Telefon ist immer noch HF Embedded Gerät in seiner gepaarten Liste.
  2. Smartphone VERGESSEN HF-Gerät während der Bluetooth-Verbindung.
  3. Disconnection weil HF-Gerät von Bluetooth Smart-Phone-Strecke ging

Antwort

0

HCI: Trennung komplettes Ereignis, überprüfen Sie den Reason-Byte.

+0

Jedes Mal, wenn Trennung von Smartphone (AG) initiiert, erhalte ich Grund: HCI_OE_USER_ENDED_CONNECTION \t \t 0x13 – Hari

+0

Jedes Mal, wenn von Smartphone initiierte Trennung (AG), erhalte ich Grund: HCI_OE_USER_ENDED_CONNECTION \t \t 0x13 Aber dies ist nicht genug unterscheiden zwischen folgender Art der Trennung: 1. Smart-Phone SIMPLE DISCONNECT, aber Telefon ist immer noch HF Embedded-Gerät in seiner gepaarten Liste. 2. Smart-Phone VERGISS HF-Gerät während der Bluetooth-Verbindung. 3. Smart-Phone SCHALTEN Sie Bluetooth während der Bluetooth-Verbindung aus. Ich erhalte ein bestimmtes Ereignis, wenn die Trennung vom Telefon-Ende (AG) eingeleitet wird, aber in diesem können wir Art der Trennung weiter unterscheiden? – Hari

+0

Die Fehlercodes sollten je nach Szenario unterschiedlich sein. Zum Beispiel würde ich außerhalb der Reichweite "Connection Timeout" (0x08) erwarten. Wenn AG den Verbindungsabbau einleitet, erhalten Sie wahrscheinlich "Connection Terminated By Local Host" (0x16) auf dem Smartphone. Da AG die Trennung initiiert hat, sollte sie den Grund wissen, und der Rückkehrcode bedeutet, dass die Prozedur erfolgreich war. –

Verwandte Themen