Präzise Ortung in „Mein Gerät finden“

Die Spezifikation „Find Hub Precision Finding“ (FHPF) enthält Implementierungsanforderungen für die Aktivierung von Geräten, die Reichweitentechnologien unterstützen, damit sie die Funktion „Präzise Suche“ in der Google-App „Mein Gerät finden“ unterstützen.

Die Art der Suche mit hoher Genauigkeit hängt von den Arten der Ortungstechnologien ab, die auf den Geräten unterstützt werden, die an der Suche mit hoher Genauigkeit beteiligt sind. Unterstützte Technologien für die Entfernungsmessung finden Sie in der Spezifikation Ranging: Out-of-band message sequence and payload. In den folgenden Abschnitten wird erläutert, welche Art von Präzisionssuche je nach verwendeter Ortungstechnologie zu erwarten ist.

Zubehör für das „Mein Gerät finden“-Netzwerk

Diese Spezifikation ist eine Erweiterung der Spezifikation für Zubehör für das „Mein Gerät finden“-Netzwerk (Find Hub Network Accessory, FHNA). Hier gelten dieselben Regeln für GATT-Merkmale und Authentifizierung wie im FHNA-Dokument definiert. In diesem Dokument werden neue Vorgangstypen zusätzlich zu den bereits vorhandenen Vorgängen in der FHNA-Spezifikation definiert.

Nutzlast für Ranging Technologies

Diese Spezifikation bezieht sich auch auf die Spezifikation Ranging: Out-of-band message sequence and payload (Entfernungsmessung: Out-of-band-Nachrichtensequenz und Nutzlast) zur Definition der entfernungsmesstechnologiespezifischen Nutzlast, die in den Feldern Additional Data (Zusätzliche Daten) der einzelnen Vorgänge enthalten ist.

Ablauf für die Funktion „Präzises Suchen“

In diesem Abschnitt wird der FHNA-Nachrichtenfluss für die Funktion „Präzises Finden“ beschrieben. Abbildung 1 zeigt den Fluss der Nachrichten und in den Absätzen wird jede Nachricht genauer erläutert.

Ablauf der präzisen Ortung

Abbildung 1: Typischer Ablauf von Nachrichten bei der präzisen Suche

Das Initiatorgerät ist das Gerät, auf dem die App „Mein Gerät finden“ installiert ist und auf dem die Funktion „Genaue Suche“ aktiviert wurde. Der Initiator ist das Gerät, das versucht, das andere Gerät zu finden.

Das Responder-Gerät ist das Gerät, das vom Initiator-Gerät gesucht wird.

Das Initiatorgerät sendet eine Nachricht vom Typ „Ranging Capability Request“ (Anfrage zur Reichweitenbestimmung) an das Respondergerät. Darin werden die Technologien zur Reichweitenbestimmung aufgeführt, über die das Initiatorgerät vom Respondergerät informiert werden möchte. Das Responder-Gerät antwortet mit der Benachrichtigung „Ranging Capability Response“ (Antwort auf Anfrage zur Reichweitenerkennung), die Informationen dazu enthält, welche Reichweitenerkennungstechnologien unterstützt werden und welche Funktionen sie bieten. Der Responder enthält nur Informationen, die vom Initiator angefordert wurden. Die Liste der Funktionen wird nach der Priorität der Ortungstechnologie sortiert, die das Responder-Gerät bevorzugt. Die erste Funktion in der Liste hat die höchste Priorität.

Das Initiatorgerät sendet dann eine Nachricht zur Konfiguration der Entfernungsmessung, in der die Konfiguration für jede Entfernungsmessungstechnologie definiert wird, mit der es die Entfernung messen möchte. Nachdem das Responder-Gerät diese Nachricht empfangen hat, muss es mit der Entfernungsmessung für die entsprechenden Technologien mit den bereitgestellten Konfigurationen beginnen. Das Responder-Gerät sendet eine Benachrichtigung zur Antwort auf die Bereichskonfiguration zurück, die die Ergebnisse dazu enthält, ob jede einzelne Bereichstechnologie erfolgreich gestartet wurde. Einige Technologien zur Entfernungsmessung müssen sowohl auf dem Initiator- als auch auf dem Responder-Gerät gestartet werden, damit die Entfernungsmessung erfolgreich ist. Bei anderen Technologien ist es nur erforderlich, dass sie auf dem Initiator-Gerät gestartet werden. Das Responder-Gerät muss jedoch mit einem Erfolgsergebnis antworten. Weitere Informationen zum Verhalten bestimmter Technologien zur Entfernungsmessung finden Sie in den folgenden Abschnitten.

Sobald das Initiatorgerät bereit ist, die Sitzung für die genaue Suche zu beenden, sendet es eine „Stop Ranging“-Nachricht an das Respondergerät, in der angegeben wird, welche Technologien für die Entfernungsmessung beendet werden müssen. Das Responder-Gerät antwortet mit einer „Stop Ranging Response“-Benachrichtigung, die angibt, dass die Entfernungsmessung mit den angeforderten Entfernungsmessungstechnologien erfolgreich beendet wurde.

Wenn die BLE GATT-Kommunikation des FHNA-Kanals während einer Sitzung zur genauen Suche unterbrochen wird, aber einige der Ranging-Technologien weiterhin funktionieren, implementiert das Responder-Gerät einen Zeitlimitmechanismus, um sicherzustellen, dass die Suche nicht unbegrenzt fortgesetzt wird. Die Details hängen vom jeweiligen Anwendungsfall ab.

Das Antwortgerät darf nicht davon ausgehen, dass die Reihenfolge der Vorgänge immer dieselbe ist. Das Responder-Gerät muss beispielsweise mehrere aufeinanderfolgende Anfragen für die Ranging-Funktion oder sogar einen direkten Ranging-Konfigurationsvorgang ohne die vorherige Funktionsanfrage verarbeiten können.

Vorgänge

Tabelle 1 enthält die in diesem Dokument definierten FHNA-Vorgänge, die für die Funktion „Präzisionssuche“ erforderlich sind. In jedem Unterabschnitt wird die FHNA-Nachricht für die einzelnen Vorgänge definiert, während sich der Inhalt des Felds Zusätzliche Daten auf die Spezifikation Entfernungsmessung: Out-of-Band-Nachrichtensequenz und Nutzlast bezieht.

Tabelle 1: Vorgänge

Vorgang Daten-ID Beschreibung
Anfrage zur Auswahl 0x0A Der Vorgang für die Funktionsanfrage, der vom Initiatorgerät an das Respondergerät gesendet wird. Die Dateninhalte dieses Vorgangs enthalten alle Ortungstechnologien, die der Initiator vom Responder-Gerät wissen möchte.
Antwort auf die Anfrage zur Reichweite 0x0A Dies ist die Benachrichtigungsantwort auf den Vorgang „Ranging Capability Request“. Sie enthält Informationen zu den Funktionen für jede unterstützte Ranging-Technologie, die vom Initiator angefordert wurden.
Konfiguration der Auswahl 0x0B Der Vorgang „Ranging Configuration“ (Konfiguration für die Entfernungsmessung) enthält die Konfigurationen für die Technologien zur Entfernungsmessung, mit denen das Initiatorgerät die Entfernungsmessung mit dem Respondergerät starten möchte.
Antwort auf die Bereichskonfiguration 0x0B Dies ist die Benachrichtigungsantwort auf den Vorgang „Ranging Configuration“. Sie enthält Daten dazu, ob das Responder-Gerät basierend auf der bereitgestellten Konfiguration erfolgreich mit den angeforderten Ranging-Technologien mit dem Ranging begonnen hat.
RFU 0x0C Der Vorgang mit dieser Daten-ID wird nicht verwendet und ist für die zukünftige Verwendung reserviert.
Entfernungsmessung beenden 0x0D Der vom Initiatorgerät gesendete Vorgang „Stop Ranging“ enthält Informationen darüber, mit welchen Ranging-Technologien das Respondergerät die Ranging-Vorgänge beenden muss.
Entfernungsmessung beenden 0x0D Dies ist die Benachrichtigungsantwort auf den Vorgang „Stop Ranging“. Sie enthält Daten dazu, ob der Stoppvorgang für eine bestimmte Ortungstechnologie erfolgreich war oder nicht.

Ranging Capability Request-Nachricht

In Tabelle 2 wird die Nachricht „Ranging Capability Request“ definiert.

Tabelle 2: Anfrage zur Entfernungsbestimmung

Oktett Datentyp Beschreibung Wert
0 uint8 Daten-ID 0x0A – Vorgang für die Anfrage der Entfernungsbestimmung
1 uint8 Datenlänge variiert
2 Byte-Array Einmaliger Authentifizierungsschlüssel Die ersten 8 Bytes von HMAC-SHA256(Kontoschlüssel, Hauptversionsnummer des Protokolls || die letzte aus dem Merkmal gelesene Nonce || Daten-ID || Datenlänge || Zusätzliche Daten).
10 Byte-Array Zusätzliche Daten Nachricht vom Typ Ranging Capability Request (Anfrage zur Entfernungsbestimmung), wie in der Spezifikation Ranging: Out-of-band message sequence and payload (Entfernungsbestimmung: Out-of-band-Nachrichtensequenz und ‑Nutzlast) definiert (sowohl Header als auch Nutzlast)

Antwortnachricht zur Auswahlfunktion

In Tabelle 3 wird die Antwortnachricht zur Reichweitenbestimmung beschrieben.

Tabelle 3: Antwort auf die Anfrage zur Entfernungsmessung

Oktett Datentyp Beschreibung Wert
0 uint8 Daten-ID 0x0A: Antwort zur Entfernungsbestimmung
1 uint8 Datenlänge variiert
2 Byte-Array Einmaliger Authentifizierungsschlüssel Die ersten 8 Bytes von HMAC-SHA256(Kontoschlüssel, Hauptversionsnummer des Protokolls || zuletzt aus dem Merkmal gelesener Nonce || Daten-ID || Datenlänge || Zusätzliche Daten || 0x01).
10 Byte-Array Zusätzliche Daten Ranging Capability Response-Nachricht gemäß der Spezifikation Ranging: Out-of-band message sequence and payload (sowohl Header als auch Nutzlast)

Nachricht zur Auswahlkonfiguration

In Tabelle 4 wird die Nachricht zur Bereichskonfiguration definiert.

Tabelle 4: Konfiguration der Entfernungsmessung

Oktett Datentyp Beschreibung Wert
0 uint8 Daten-ID 0x0B – Set Ranging Configuration (Entfernungsmessung konfigurieren)
1 uint8 Datenlänge variiert
2 Byte-Array Einmaliger Authentifizierungsschlüssel Die ersten 8 Bytes von HMAC-SHA256(Kontoschlüssel, Hauptversionsnummer des Protokolls || die letzte aus dem Merkmal gelesene Nonce || Daten-ID || Datenlänge || Zusätzliche Daten).
10 Byte-Array Zusätzliche Daten Nachricht Ranging Configuration (Konfiguration für die Entfernungsmessung) gemäß der Spezifikation Ranging: Out-of-band message sequence and payload (sowohl Header als auch Nutzlast)

Antwortnachricht zur Konfiguration der Entfernungsmessung

In Tabelle 5 wird die Antwortnachricht für die Bereichskonfiguration definiert.

Tabelle 5: Antwort auf die Konfiguration der Entfernungsmessung

Oktett Datentyp Beschreibung Wert
0 uint8 Daten-ID 0x0B – Set Ranging Configuration Response
1 uint8 Datenlänge variiert
2 Byte-Array Einmaliger Authentifizierungsschlüssel Die ersten 8 Bytes von HMAC-SHA256(Kontoschlüssel, Hauptversionsnummer des Protokolls || zuletzt aus dem Merkmal gelesener Nonce || Daten-ID || Datenlänge || Zusätzliche Daten || 0x01).
10 Byte-Array Zusätzliche Daten Nachricht Ranging Configuration Response gemäß der Spezifikation Ranging: Out-of-band message sequence and payload (sowohl Header als auch Nutzlast)

Nachricht „Entfernungsmessung beenden“

In Tabelle 6 wird die Nachricht „Stop Ranging“ definiert.

Tabelle 6: Stop Ranging

Oktett Datentyp Beschreibung Wert
0 uint8 Daten-ID 0x0D – Ranging Stop
1 uint8 Datenlänge variiert
2 Byte-Array Einmaliger Authentifizierungsschlüssel Die ersten 8 Bytes von HMAC-SHA256(Kontoschlüssel, Hauptversionsnummer des Protokolls || die letzte Nonce, die aus dem Merkmal gelesen wurde || Daten-ID || Datenlänge).
10 Byte-Array Zusätzliche Daten Nachricht Stop Ranging gemäß der Spezifikation Ranging: Out-of-band message sequence and payload (sowohl Header als auch Nutzlast)

Nachricht „Ranging-Antwort beenden“

In Tabelle 7 wird die Antwortnachricht „Stop Ranging“ definiert.

Tabelle 7: Stop Ranging Response

Oktett Datentyp Beschreibung Wert
0 uint8 Daten-ID 0x0D: Antwort auf Ranging-Stopp
1 uint8 Datenlänge variiert
2 Byte-Array Einmaliger Authentifizierungsschlüssel Die ersten 8 Bytes von HMAC-SHA256(Kontoschlüssel, Hauptversionsnummer des Protokolls || zuletzt aus dem Merkmal gelesener Nonce || Daten-ID || Datenlänge || Zusätzliche Daten || 0x01).
10 Byte-Array Zusätzliche Daten Stop Ranging Response-Nachricht gemäß der Spezifikation Ranging: Out-of-band message sequence and payload (sowohl Header als auch Nutzlast)

Schutz vor unerwünschtem Tracking

Wenn der unerwünschte Tracking-Schutzmodus aktiviert ist, wie in der FHNA-Spezifikation beschrieben, gilt für alle in diesem Dokument definierten Nachrichten zur Suche mit hoher Genauigkeit für Geräte, die diese Funktion unterstützen möchten, derselbe Ablauf wie beim Überspringen von Authentifizierungsprüfungen für Klingeln-Nachrichten.

Aus der FHNA-Spezifikation:

Wenn der Anbieter nicht als FHNA-Beacon bereitgestellt wird oder die Überprüfung fehlschlägt, wird ein nicht authentifizierter Fehler zurückgegeben. Wenn der Anbieter jedoch einen unerwünschten Tracking-Schutz aktiviert hat und die auslösende Anfrage für den unerwünschten Tracking-Schutz das Flag „Authentifizierung überspringen“ aktiviert hatte, sollte der Anbieter diese Prüfung überspringen. Die Authentifizierungsdaten müssen weiterhin vom Suchenden bereitgestellt werden, können aber auf einen beliebigen Wert festgelegt werden.

Besonderheiten der Technologie zur Entfernungsmessung

Dieser Abschnitt enthält details, die für die jeweilige Technologie spezifisch sind.

Besonderheiten von Ultrabreitband (UWB)

UWB-spezifische Details.

Ebene „Präzisionssuche“

Bei der präzisen Ortung mit Ultrabreitband als Ortungstechnologie werden sowohl Entfernungs- als auch Richtungsinformationen angezeigt. Das Bereichsintervall muss mindestens 240 ms betragen. Für eine optimale Führung werden 96 ms empfohlen.

Konfigurations-IDs

Die Out-of-Band-Konfigurationsdaten, die für UWB ausgetauscht werden, enthalten nicht alle verfügbaren konfigurierbaren Parameter, die UWB zum Starten einer UWB-Entfernungsmessungssitzung benötigt. Einige Parameter werden durch die ausgewählte Konfigurations-ID implizit ausgewählt.

Jede Konfigurations-ID ist eine Reihe vordefinierter UWB-Konfigurationsparameter, die öffentlich dokumentiert sind. Für den Anwendungsfall „Präzises Finden“ muss das Responder-Gerät config Id 6 und optional config Id 3 unterstützen.

UWB-Initiator und ‑Responder

Für den Anwendungsfall „Präzise Suche“ ist das in diesem Dokument als Initiatorgerät bezeichnete Gerät der UWB-Responder und das in diesem Dokument als Respondergerät bezeichnete Gerät der UWB-Initiator. Das liegt daran, dass das UWB-Initiatorgerät weniger Strom verbraucht als das UWB-Respondergerät. In den meisten Fällen ist das Respondergerät ein Peripheriegerät mit begrenzter Akkuleistung.

Das bedeutet, dass das Responder-Gerät in der Nachricht „Ranging Capability Response“ angeben muss, dass es die Rolle des UWB-Initiators unterstützt.

  • Channel 9 muss unterstützt werden
  • Für eine optimale Führung wird ein Bereichsintervall von 96 ms empfohlen. Andernfalls müssen 240 ms unterstützt werden.
  • Für eine längere Akkulaufzeit wird eine Slot-Dauer von 1 ms empfohlen. 2 ms werden aber auch unterstützt.
  • Der UWB-Chip muss mindestens FIRA v1.2 + P-STS-kompatibel sein.
  • BPRF ist obligatorisch, HPRF wird empfohlen, ist aber optional. Der unterstützte oder ausgewählte Modus wird durch den unterstützten oder ausgewählten Preamble-Index bestimmt.
  • Sicherheitstyp der Sitzung: P-STS

Besonderheiten von BLE Channel Sounding (CS)

BLE CS-spezifische Details.

Ebene „Präzisionssuche“

Bei Präzise Ortung-Sitzungen, bei denen CS als Ortungstechnologie verwendet wird, werden nur Entfernungsmessungen durchgeführt. Die Richtung wird derzeit nicht angegeben.

Erforderliche Verbindung zwischen Geräten

Präzisionssuche-Sitzungen mit Channel Sounding funktionieren nicht, wenn Geräte nicht gekoppelt sind. Es muss eine bestehende Verbindung zwischen dem Initiator- und dem Responder-Gerät vorhanden sein. Diese Spezifikation bietet keine Möglichkeit, eine Verbindung zwischen den Geräten herzustellen. Stattdessen muss der Entwickler des Anwendungsfalls diese Verbindung zwischen den Geräten herstellen.

Erforderliche Maßnahmen von der Antwortseite für den Kundenservice

Im Gegensatz zu UWB, wo beide Geräte die UWB-APIs zum Starten und Beenden der Entfernungsmessung explizit aufrufen müssen, muss bei CS nur das Initiatorgerät die CS-Entfernungsmessung starten, indem es den Bluetooth-Stack aufruft. Die restliche Initialisierung auf der Responder-Seite erfolgt In-Band über Bluetooth (BT). Das bedeutet, dass die Responder-Seite beim Empfang der Nachricht „Ranging Configuration“ oder „Stop Ranging“ für CS nichts tun muss, wenn BT aktiviert ist, außer mit der Benachrichtigung „Ranging Configuration Response“ zu antworten. Das Antwortgerät könnte diese Nachrichten möglicherweise als Trigger verwenden, um die Benutzeroberfläche zu aktualisieren, wenn ein Bildschirm vorhanden ist. Unabhängig davon, ob ein Bildschirm vorhanden ist, könnten sie für visuelles Feedback zum Gerätestatus verwendet werden, z. B. durch Blinken der Geräte-LEDs.

WLAN-NAN-RTT

Spezifische Details zu WLAN NAN RTT.

Ebene „Präzisionssuche“

Bei Präzisionssuche-Sitzungen, bei denen Wi‑Fi NAN RTT als Ortungstechnologie verwendet wird, werden nur Entfernungen gemessen. Die Richtung wird derzeit nicht angegeben.

BLE RSSI

BLE RSSI-spezifische Details.

Ebene „Präzisionssuche“

Bei Sitzungen zur genauen Suche, bei denen nur BLE RSSI als Ortungstechnologie verwendet wird, können weder die Entfernungs- noch die Richtungsinformationen abgerufen werden, da BLE RSSI keine genaue Ortungstechnologie ist. Stattdessen wird dem Nutzer angezeigt, dass sich das Gerät in der Nähe oder in der Ferne befindet.