2017-06-28 4 views
0

Mit einer BLE113 habe ich erfolgreich kCBAdvDataLocalName in der Scanantwort verwendet, um dynamisch sich ändernde Daten von einem Sensor zu enthalten. Dies wird dann in einer iOS App gut aufgenommen. iOS interpretiert die Daten, die kCBAdvDataLocalName als eine Zeichenfolge zugeordnet sind, die seine Einschränkungen aufweist. Ich muss mehr Daten senden und kann mir den Platzverlust bei der Kodierung nach ASCII nicht leisten.iOS Core-Bluetooth Dynamischer Scan Antwortdaten

Hat jemand Empfehlungen für das Senden von Rohdaten in Scanantworten?

+0

Base64-Codierung? – Paulw11

+0

Es stört mich nicht, solange ich den ursprünglichen Wert extrahieren kann. – user2196409

Antwort

0

Sie können diese Daten als ein Werbepaket senden (Scan-Antworten enden mit mehr Leistung, wenn ich mich richtig erinnere).

Ein Werbepaket mit einer Fertigungs-ID von 0xff sollte Ihnen den Zugriff auf 31 Byte Daten ermöglichen, die Sie für beliebige Zwecke verwenden können.

Schauen Sie sich die IBeacon Beispiele hier: https://github.com/sureshjoshi/ble113-firmware-examples

ähnliches Konzept.

Wenn Sie auf dem lokalen Namen bestehen, was ist das Codierungsproblem? Wenn Sie Datenbytes senden, handelt es sich bei einer Zeichenfolge nur um eine Gruppe von Bytes. Wo also verlieren Sie Daten durch die Codierung?

+0

danke für ihre gedanken: welcher teil des advdata arrays hat freie kapazität? Ich suche nach 10 Bytes? – user2196409

+0

Haben Sie diesen Artikel schon einmal gelesen? https://www.silabs.com/community/wireless/bluetooth/knowledge-base.entry.html/2017/02/10/bluetooth_advertisin-hGsf – SJoshi

Verwandte Themen