Geräteinformationen

Anbieter können einen Suchenden über den Nachrichtenstream über Geräteinformationen informieren.

Name der Nachrichtengruppe Wert
Ereignis „Geräteinformationen“ 0x03
Name des Geräteinformationscodes Wert
Modell-ID 0x01
BLE-Adresse aktualisiert 0x02
Akku aktualisiert 0x03
Verbleibende Akkulaufzeit 0x04
Anfrage zu aktiven Komponenten 0x05
Antwort auf aktive Komponenten 0x06
(Verworfene)Funktionen 0x07
Plattformtyp 0x08
Firmwareversion 0x09
Aktuelle sitzungsspezifische FMDN-ID 0 × 0 Mrd.

Modell-ID

Die Modell-ID-Informationen (für Retroactively Writing AccountKey) sollten an den Suchenden gesendet werden, wenn RFCOMM eine Verbindung herstellt. 0x03010003AABBCC wäre beispielsweise:

  • 0x03: Geräteinformationen-Ereignis
  • 0x01: Modell-ID-Wert
  • 0x0003: Zusätzliche Daten, Länge 3
  • 0xAABBCC: Zusätzliche Daten, Modell-ID

BLE-Adresse

BLE-Adressinformationen (für Retroactively Writing AccountKey) sollten, sofern verfügbar, auch an den Seeker gesendet werden, wenn eine RFCOMM-Verbindung hergestellt wird und die Adresse rotiert wird. 0x03020006AABBCCDDEEFF wäre beispielsweise:

  • 0x03: Geräteinformationen-Ereignis
  • 0x02: BLE-Adresswert
  • 0x0006: Zusätzliche Daten, Länge 6
  • 0xAABBCCDDEEFF: Zusätzliche Daten, BLE-Adresse

Akku aktualisiert

Bei Anbietern, die Akkubenachrichtigungen unterstützen, können Akkuinformationen auch über RFCOMM gesendet werden. Wenn RFCOMM eine Verbindung herstellt oder sich der Akkuwert ändert, sollte ein Update gesendet werden. Der zusätzliche Datenabschnitt des Pakets sollte dieselben Daten wie die Byte s + 2, s + 3, s + 4 enthalten, wenn Akkudaten über BLE beworben werden. 0x0303000357417F wäre beispielsweise:

  • 0x03: Geräteinformationen-Ereignis
  • 0x03: Akkuwert
  • 0x0003: Zusätzliche Daten, Länge 3
  • 0x57417F: Zusätzliche Daten, Akkuwerte
    • 0 x 57: Wert des linken Kopfhörers, wird nicht geladen, 87% Akku
    • 0x41: Wert des rechten Kopfhörers, wird nicht geladen, 65% Akku
    • 0x7F: Case-Wert, wird nicht geladen, unbekannter Akku

Anbieter können auch die verbleibende Akkulaufzeit aktualisieren (falls bekannt). 0x03040001F0 wäre beispielsweise:

  • 0x03: Geräteinformationen-Ereignis
  • 0x04: Verbleibende Akkulaufzeit
  • 0x0001: Zusätzliche Daten, Länge 1 (kann bei Bedarf 2 für uint16 sein)
  • 0xF0: Zusätzliche Daten, verbleibende Akkulaufzeit in Minuten, 240 Minuten

Aktive Komponenten

Nutzer möchten möglicherweise wissen, welche Komponenten derzeit aktiv sind, sodass eine Aktion für sie ausgeführt werden kann (siehe Geräteaktionen). Wenn der Anbieter eine Anfrage mit dem Code für die Anfrage zu aktiven Komponenten (0x05) erhält, sollte innerhalb von 1 Sekunde eine Antwort mit dem aktuellen Status des Anbieters zurückgegeben werden. Die Antwort verwendet den Antwortcode für aktive Komponenten (0x06) und enthält zusätzliche Daten, die angeben, welche Komponenten verfügbar sind.

Bei einem Anbieter mit einer einzelnen Komponente sollten die zusätzlichen Daten auf 0 x 00 gesetzt werden, wenn sie nicht verfügbar sind. Ein Beispiel hierfür könnte ein Energiesparmodus sein, in dem die Medienwiedergabe nicht ausgeführt wird. Andernfalls sollten zusätzliche Daten auf 0x01 gesetzt werden.

Bei Headsets mit mehreren Komponenten (z. B. einem linken und rechten Kopfhörer) gibt jedes Bit in den zusätzlichen Daten an, ob diese Komponente aktiv ist. Ein Beispiel für eine inaktive Komponente könnte ein Bud sein, der im Fall ist und nicht verwendet wird. Speziell für den linken und rechten Kopfhörer:

  • 0x00 (0b00000000): Keine der Buden aktiv
  • 0x01 (0b00000001): Rechter Kopfhörer aktiv, links inaktiv
  • 0x02 (0b00000010): Linker Kopfhörer aktiv, rechts inaktiv
  • 0x03 (0b00000011): Beide Buds aktiv

Plattformtyp

Anbieter möchten je nach Plattform, mit der sie verbunden sind, möglicherweise unterschiedliche Leistungen erzielen. Die Funktion „Schnelles Pairing“ wird derzeit nur über Android ausgeführt, die Unterstützung wird aber möglicherweise in Zukunft erweitert.

Die Nachricht enthält ein erstes Byte, mit dem der Plattformtyp in den zusätzlichen Daten identifiziert wird:

Plattformname Wert
Android 0x01

Das zweite Byte wird für jede Plattform angepasst. In Android bezieht sich diese Angabe auf die SDK-Version. Android Pie hat beispielsweise den Wert „28“ (0x1C).

Firmwareversion

Firmwareversion des Anbieters als String in UTF-8-Codierung. Die Informationen sind mit denen in der Beschreibung der Firmwareversion identisch.

Aktuelle sitzungsspezifische FMDN-ID

Anbieter, die FMDN-Frames anbieten, sollten den aktuellen FMDN-Ephemeral Identifier (EID) mit ihrem aktuellen Uhrwert melden, damit er bei einer Zeitabweichung (z. B. aufgrund einer entladenen Akkus) mit dem Seeker synchronisiert wird.

Beispiel:

  • 0x03: Geräteinformationen-Ereignis
  • 0x0B: Aktuelle FMDN-Nachricht für sitzungsspezifische Kennung
  • 0x0018: Zusätzliche Daten, Länge 24 oder 36 Byte
  • 0x13F9EA80: Zusätzliche Daten (Uhrwert; 4 Byte)
  • 0x1122334455667788990011223344556677889900: Zusätzliche Daten (aktuelle EID; 20 oder 32 Byte)