Dokładne znajdowanie w Centrum lokalizacji

Specyfikacja precyzyjnego wyszukiwania w usłudze Znajdź Hub (FHPF) zawiera wymagania dotyczące implementacji, które umożliwiają urządzeniom obsługującym technologie pomiaru odległości korzystanie z funkcji precyzyjnego wyszukiwania w aplikacji Znajdź moje urządzenie od Google.

Rodzaj dokładnego znajdowania zależy od typu technologii pomiaru odległości obsługiwanych na urządzeniach, które biorą udział w dokładnym znajdowaniu. Obsługiwane technologie pomiaru odległości znajdziesz w specyfikacji Pomiar odległości: sekwencja wiadomości poza pasmem i ładunek. W dalszych sekcjach dowiesz się, jakiej dokładności można się spodziewać w zależności od użytej technologii pomiaru odległości.

Akcesorium sieci Centrum lokalizacji

Ta specyfikacja jest rozszerzeniem specyfikacji akcesoriów sieci Centrum lokalizacji. Obowiązują tu te same reguły dotyczące charakterystyki GATT i uwierzytelniania, które zostały określone w dokumencie FHNA. Ten dokument definiuje nowe typy operacji, które uzupełniają istniejące już operacje w specyfikacji FHNA.

Ładunek specyficzny dla technologii pomiaru odległości

Specyfikacja ta odnosi się również do specyfikacji Ranging: Out-of-band message sequence and payload w celu zdefiniowania ładunku specyficznego dla technologii pomiaru odległości zawartego w polach Additional Data poszczególnych operacji.

Proces dokładnego znajdowania

W tej sekcji opisujemy przepływ komunikatów FHNA w przypadku precyzyjnego wyszukiwania. Rysunek 1 przedstawia przepływ wiadomości, a poszczególne akapity zawierają szczegółowe wyjaśnienia dotyczące każdej wiadomości.

Przebieg działania funkcji dokładnego znajdowania

Rys. 1. Typowy przepływ wiadomości w przypadku precyzyjnego wyszukiwania

Urządzenie inicjujące to urządzenie, na którym jest zainstalowana aplikacja Centrum lokalizacji i na którym włączono funkcję precyzyjnego wyszukiwania. Inicjator to urządzenie, które próbuje znaleźć inne urządzenie.

Urządzenie odpowiadające to urządzenie, które próbuje znaleźć urządzenie inicjujące.

Urządzenie inicjujące wysyła do urządzenia odpowiadającego wiadomość z prośbą o informacje o możliwościach pomiaru odległości. W wiadomości tej podaje technologie pomiaru odległości, o których chce się dowiedzieć od urządzenia odpowiadającego. Urządzenie odpowiadające wyśle powiadomienie Ranging Capability Response (Odpowiedź dotycząca możliwości pomiaru odległości), które zawiera informacje o obsługiwanych technologiach pomiaru odległości i ich możliwościach. Odpowiadający uwzględni tylko informacje, o które poprosił inicjator. Lista funkcji będzie posortowana według priorytetu technologii pomiaru odległości, którą preferuje urządzenie odpowiadające. Pierwsza pozycja na liście będzie miała najwyższy priorytet.

Urządzenie inicjujące wyśle następnie wiadomość Ranging Configuration (Konfiguracja pomiaru odległości), w której określi konfigurację każdej technologii pomiaru odległości, z której chce korzystać. Po otrzymaniu tej wiadomości urządzenie odpowiadające musi rozpocząć pomiar odległości w przypadku odpowiednich technologii przy użyciu podanych konfiguracji. Urządzenie odpowiadające wyśle powiadomienie z odpowiedzią na konfigurację pomiaru odległości, które zawiera wyniki informujące o tym, czy każda technologia pomiaru odległości została uruchomiona. Niektóre technologie pomiaru odległości muszą być uruchamiane zarówno na urządzeniu inicjującym, jak i odpowiadającym, aby sesja pomiaru odległości zakończyła się powodzeniem. W przypadku innych technologii wystarczy, że zostaną uruchomione na urządzeniu inicjującym, ale urządzenie odpowiadające musi zwrócić wynik pozytywny. Więcej informacji o konkretnych technologiach pomiaru odległości znajdziesz w dalszych sekcjach.

Gdy urządzenie inicjujące będzie gotowe do zakończenia sesji precyzyjnego wyszukiwania, wyśle do urządzenia odpowiadającego wiadomość Stop Ranging (Zatrzymaj pomiar odległości), wskazującą, które technologie pomiaru odległości mają przestać działać. Urządzenie odpowiadające wyśle powiadomienie Stop Ranging Response, które będzie oznaczać, że udało mu się zatrzymać pomiary odległości przy użyciu żądanych technologii pomiarowych.

Jeśli kanał komunikacji FHNA BLE GATT zostanie odłączony w trakcie sesji precyzyjnego wyszukiwania, ale niektóre technologie pomiaru odległości nadal będą działać, urządzenie odpowiadające zastosuje mechanizm limitu czasu, aby nie mierzyć odległości w nieskończoność. Szczegóły zależą od konkretnego przypadku użycia.

Urządzenie odpowiadające nie może zakładać, że kolejność operacji będzie zawsze taka sama. Na przykład urządzenie odpowiadające musi być w stanie obsłużyć kilka kolejnych operacji żądania możliwości pomiaru odległości lub nawet bezpośrednią operację konfiguracji pomiaru odległości bez poprzedzającego żądania możliwości.

Operacje

Tabela 1 zawiera operacje FHNA zdefiniowane w tym dokumencie, które są wymagane do precyzyjnego wyszukiwania. Każda podsekcja definiuje komunikat FHNA dla każdej operacji, a zawartość pola Dodatkowe dane odnosi się do specyfikacji Określanie odległości: sekwencja komunikatów poza pasmem i ładunek.

Tabela 1. Operacje

Operacja Identyfikator danych Opis
Prośba o możliwość określania odległości 0x0A Operacja żądania możliwości, która zostanie wysłana przez urządzenie inicjujące do urządzenia odpowiadającego. Dane tej operacji będą zawierać listę wszystkich technologii pomiaru odległości, o których inicjator chce uzyskać informacje z urządzenia odpowiadającego.
Odpowiedź dotycząca możliwości pomiaru odległości 0x0A Jest to odpowiedź na powiadomienie dotyczące operacji Ranging Capability Request. Zawiera informacje o funkcjach każdej obsługiwanej technologii pomiaru odległości, o które poprosił inicjator.
Konfiguracja pomiaru odległości 0x0B Operacja konfiguracji pomiaru odległości zawiera konfiguracje technologii pomiaru odległości, za pomocą których urządzenie inicjujące chce rozpocząć pomiar odległości od urządzenia odpowiadającego.
Odpowiedź na konfigurację pomiaru odległości 0x0B Jest to odpowiedź na powiadomienie dotyczące operacji konfiguracji pomiaru odległości. Zawiera dane o tym, czy urządzenie odpowiadające rozpoczęło pomiar odległości przy użyciu żądanych technologii pomiaru odległości na podstawie podanej konfiguracji.
RFU 0x0C Operacja z tym identyfikatorem danych nie jest używana i jest zarezerwowana do wykorzystania w przyszłości.
Zatrzymaj pomiar odległości 0x0D Operacja Stop Ranging wysłana przez urządzenie inicjujące zawiera informacje o tym, z których technologii pomiaru odległości urządzenie odpowiadające musi zrezygnować.
Stop Ranging Response 0x0D Jest to odpowiedź na powiadomienie dotyczące operacji Stop Ranging. Zawiera informacje o tym, czy operacja zatrzymania w przypadku konkretnej technologii pomiaru odległości zakończyła się powodzeniem.

Wiadomość z prośbą o możliwość pomiaru odległości

Tabela 2 zawiera definicję komunikatu żądania możliwości określania odległości.

Tabela 2. Żądanie możliwości określania odległości

Octet Typ danych Opis Wartość
0 uint8 Identyfikator danych 0x0A – operacja żądania możliwości określania odległości
1 uint8 Długość danych różni się
2 tablica bajtów Jednorazowy klucz uwierzytelniający Pierwsze 8 bajtów funkcji HMAC-SHA256(klucz konta, numer głównej wersji protokołu || ostatni odczytany z charakterystyki nonce || identyfikator danych || długość danych || dane dodatkowe).
10 tablica bajtów Dane dodatkowe Komunikat Ranging Capability Request zdefiniowany w specyfikacji Ranging: Out-of-band message sequence and payload (zarówno nagłówek, jak i ładunek).

Wiadomość z odpowiedzią dotyczącą możliwości pomiaru odległości

W tabeli 3 zdefiniowano komunikat Ranging Capability Response.

Tabela 3. Odpowiedź dotycząca możliwości pomiaru odległości

Octet Typ danych Opis Wartość
0 uint8 Identyfikator danych 0x0A: Ranging Capability Response
1 uint8 Długość danych różni się
2 tablica bajtów Jednorazowy klucz uwierzytelniający Pierwsze 8 bajtów funkcji HMAC-SHA256(klucz konta, numer głównej wersji protokołu || ostatni odczytany z charakterystyki nonce || identyfikator danych || długość danych || dane dodatkowe || 0x01).
10 tablica bajtów Dane dodatkowe Komunikat Ranging Capability Response zdefiniowany w specyfikacji Ranging: Out-of-band message sequence and payload (zarówno nagłówek, jak i ładunek).

Wiadomość Ranging Configuration

Tabela 4 zawiera definicję wiadomości Ranging Configuration.

Tabela 4. Konfiguracja pomiaru odległości

Octet Typ danych Opis Wartość
0 uint8 Identyfikator danych 0x0B – Set Ranging Configuration
1 uint8 Długość danych różni się
2 tablica bajtów Jednorazowy klucz uwierzytelniający Pierwsze 8 bajtów funkcji HMAC-SHA256(klucz konta, numer głównej wersji protokołu || ostatni odczytany z charakterystyki nonce || identyfikator danych || długość danych || dane dodatkowe).
10 tablica bajtów Dane dodatkowe Komunikat Ranging Configuration zdefiniowany w specyfikacji Ranging: Out-of-band message sequence and payload (zarówno nagłówek, jak i ładunek).

Wiadomość z odpowiedzią na konfigurację pomiaru odległości

Tabela 5 zawiera definicję komunikatu odpowiedzi na konfigurację pomiaru odległości.

Tabela 5. Odpowiedź na konfigurację pomiaru odległości

Octet Typ danych Opis Wartość
0 uint8 Identyfikator danych 0x0B – Set Ranging Configuration Response
1 uint8 Długość danych różni się
2 tablica bajtów Jednorazowy klucz uwierzytelniający Pierwsze 8 bajtów funkcji HMAC-SHA256(klucz konta, numer głównej wersji protokołu || ostatni odczytany z charakterystyki nonce || identyfikator danych || długość danych || dane dodatkowe || 0x01).
10 tablica bajtów Dane dodatkowe Komunikat Ranging Configuration Response zdefiniowany w specyfikacji Ranging: Out-of-band message sequence and payload (zarówno nagłówek, jak i ładunek).

Wiadomość Stop Ranging

Tabela 6 zawiera definicję komunikatu Stop Ranging.

Tabela 6. Stop Ranging

Octet Typ danych Opis Wartość
0 uint8 Identyfikator danych 0x0D - Ranging Stop
1 uint8 Długość danych różni się
2 tablica bajtów Jednorazowy klucz uwierzytelniający Pierwsze 8 bajtów funkcji HMAC-SHA256(klucz konta, numer głównej wersji protokołu || ostatni odczytany z charakterystyki nonce || identyfikator danych || długość danych).
10 tablica bajtów Dane dodatkowe Wiadomość Stop Ranging zdefiniowana w specyfikacji Ranging: Out-of-band message sequence and payload (zarówno nagłówek, jak i ładunek).

Wiadomość Stop Ranging Response

Tabela 7 zawiera definicję wiadomości Stop Ranging Response.

Tabela 7. Stop Ranging Response

Octet Typ danych Opis Wartość
0 uint8 Identyfikator danych 0x0D – odpowiedź na pomiar odległości
1 uint8 Długość danych różni się
2 tablica bajtów Jednorazowy klucz uwierzytelniający Pierwsze 8 bajtów funkcji HMAC-SHA256(klucz konta, numer głównej wersji protokołu || ostatni odczytany z charakterystyki nonce || identyfikator danych || długość danych || dane dodatkowe || 0x01).
10 tablica bajtów Dane dodatkowe Komunikat Stop Ranging Response zdefiniowany w specyfikacji Ranging: Out-of-band message sequence and payload (zarówno nagłówek, jak i ładunek).

Ochrona przed niechcianym śledzeniem

Gdy włączony jest tryb ochrony przed niechcianym śledzeniem, zgodnie ze specyfikacją FHNA, ten sam proces, który dotyczy pomijania sprawdzania uwierzytelniania w przypadku wiadomości o dzwonieniu, dotyczy też wszystkich wiadomości o precyzyjnym wyszukiwaniu zdefiniowanych w tym dokumencie dla urządzeń, które chcą obsługiwać tę funkcję.

Zgodnie ze specyfikacją FHNA:

Jeśli dostawca nie jest skonfigurowany jako beacon FHNA lub weryfikacja się nie powiedzie, zwracany jest błąd nieuwierzytelnienia. Jeśli jednak dostawca ma włączoną ochronę przed niechcianym śledzeniem, a żądanie, które spowodowało włączenie tej ochrony, miało włączoną flagę pomijania uwierzytelniania dzwonka, dostawca powinien pominąć to sprawdzenie. Dane uwierzytelniające nadal powinny być dostarczane przez osobę poszukującą, ale można im przypisać dowolną wartość.

Szczegóły dotyczące technologii pomiaru odległości

Ta sekcja zawiera szczegóły dotyczące technologii pomiaru odległości.

Szczegóły dotyczące łącza ultraszerokopasmowego (UWB)

Szczegóły dotyczące UWB.

Poziom precyzyjnego wyszukiwania

Podczas sesji precyzyjnego wyszukiwania z użyciem technologii UWB można oczekiwać informacji o odległości i kierunku. Interwał pomiaru odległości musi wynosić co najmniej 240 ms, a w celu uzyskania optymalnych wskazówek zalecana jest wartość 96 ms.

Identyfikatory konfiguracji

Dane konfiguracyjne wymieniane poza pasmem dla UWB nie zawierają pełnego zestawu dostępnych parametrów konfigurowalnych, których UWB wymaga do rozpoczęcia sesji pomiaru odległości UWB. Niektóre parametry są wybierane niejawnie przez wybrany identyfikator konfiguracji.

Każdy identyfikator konfiguracji to zestaw wstępnie zdefiniowanych parametrów konfiguracji UWB, które są publicznie udostępniane w dokumentacji. W przypadku funkcji precyzyjnego wyszukiwania urządzenie odpowiadające musi obsługiwać identyfikator konfiguracji 6 i opcjonalnie identyfikator konfiguracji 3.

Inicjator i odbiornik UWB

W przypadku funkcji precyzyjnego wyszukiwania urządzenie oznaczone w tym dokumencie jako urządzenie inicjujące będzie urządzeniem odpowiadającym UWB, a urządzenie oznaczone w tym dokumencie jako urządzenie odpowiadające będzie urządzeniem inicjującym UWB. Dzieje się tak, ponieważ urządzenie inicjujące UWB zużywa mniej energii niż urządzenie odpowiadające UWB, a w większości przypadków urządzenie odpowiadające będzie urządzeniem peryferyjnym z ograniczoną baterią.

Oznacza to, że urządzenie odpowiadające musi wskazać, że obsługuje rolę inicjatora UWB w wiadomości Ranging Capability Response.

  • Kanał 9 musi być obsługiwany
  • Aby uzyskać optymalne wskazówki, zalecany jest interwał pomiaru odległości wynoszący 96 ms. W przeciwnym razie musi być obsługiwany interwał 240 ms.
  • Aby oszczędzać baterię, zalecany jest czas trwania przedziału wynoszący 1 ms, ale obsługiwany jest też czas 2 ms.
  • Chip UWB musi być zgodny co najmniej ze standardem FIRA w wersji 1.2 + P-STS.
  • Wymagany jest atrybut BPRF, a HPRF jest zalecany, ale opcjonalny. Obsługiwany lub wybrany tryb jest określany przez obsługiwany lub wybrany indeks preambuły.
  • Typ zabezpieczeń sesji: P-STS

Szczegóły dotyczące sondowania kanału BLE (CS)

Szczegóły dotyczące BLE CS.

Poziom precyzyjnego wyszukiwania

Sesje dokładnego znajdowania korzystające z technologii CS jako technologii pomiaru odległości będą powodować pomiary tylko odległości. Kierunkowość nie jest obecnie podawana.

Wymagane połączenie między urządzeniami

Sesje precyzyjnego wyszukiwania z użyciem sondowania kanału nie będą działać, jeśli urządzenia nie są sparowane. Wymagane jest istniejące połączenie między urządzeniem inicjującym a urządzeniem odpowiadającym. Ta specyfikacja nie umożliwia tworzenia powiązania między urządzeniami. Zamiast tego to deweloper zakresu zastosowań musi nawiązać połączenie między urządzeniami.

Działanie wymagane po stronie odpowiadającego w przypadku CS

W przeciwieństwie do UWB, gdzie oba urządzenia muszą wywoływać interfejs API rozpoczęcia i zakończenia pomiaru odległości UWB, w przypadku CS tylko urządzenie inicjujące musi rozpocząć pomiar odległości CS, wywołując stos Bluetooth. Reszta inicjowania po stronie urządzenia odpowiadającego odbywa się w pasmie przy użyciu Bluetootha (BT). Oznacza to, że po otrzymaniu wiadomości Ranging Configuration lub Stop Ranging dla CS strona odpowiadająca nie musi nic robić, jeśli Bluetooth jest włączony, poza odpowiedzią z powiadomieniem Ranging Configuration Response. Urządzenie odpowiadające może używać tych wiadomości jako wyzwalacza do aktualizowania interfejsu, jeśli ma ekran. Może też używać ich do wizualnego informowania o stanie urządzenia, np. migania diod LED, niezależnie od tego, czy ma ekran.

Wi-Fi NAN RTT

Szczegółowe informacje o RTT w sieci Wi-Fi NAN.

Poziom precyzyjnego wyszukiwania

Sesje precyzyjnego wyszukiwania korzystające z Wi-Fi NAN RTT jako technologii pomiaru odległości będą powodować pomiary tylko odległości. Kierunek nie jest obecnie podawany.

RSSI BLE

Szczegółowe informacje o RSSI BLE.

Poziom precyzyjnego wyszukiwania

Sesje precyzyjnego wyszukiwania, w których jako technologia pomiaru odległości używany jest tylko wskaźnik RSSI BLE, nie będą w stanie uzyskać informacji o odległości ani kierunku, ponieważ wskaźnik RSSI BLE nie jest dokładną technologią pomiaru odległości. Zamiast tego użytkownik zobaczy wskazówkę, że urządzenie jest blisko lub daleko.