Точный поиск Find Hub

Спецификация Find Hub Precision Finding (FHPF) содержит требования к реализации, позволяющие устройствам, поддерживающим технологии определения расстояния, поддерживать функцию точного поиска с помощью приложения Find My Device от Google.

Тип точного определения местоположения зависит от типа технологий определения местоположения, поддерживаемых устройствами, участвующими в точном определении местоположения. Поддерживаемые технологии определения местоположения можно найти в спецификации «Диапазон: последовательность сообщений и полезная нагрузка вне диапазона» . В последующих разделах рассматривается, какой тип точного определения местоположения можно ожидать в зависимости от используемой технологии определения местоположения.

Найти сетевой аксессуар Hub

Данная спецификация является расширением спецификации Find Hub Network Accessory (FHNA) . Здесь применяются те же правила для характеристик GATT и аутентификации, что определены в документе FHNA. В этом документе определены новые типы операций в дополнение к уже существующим в спецификации FHNA.

Специальная полезная нагрузка Ranging Technologies

В этой спецификации также упоминается последовательность сообщений «Диапазон: внеполосный» и спецификация полезной нагрузки для определения полезной нагрузки, специфичной для технологии измерения дальности, содержащейся в полях дополнительных данных отдельных операций.

Поток точного нахождения

В этом разделе рассматривается поток сообщений FHNA для точного поиска. На рисунке 1 показан поток сообщений, а в последующих параграфах каждое сообщение поясняется более подробно.

Поток сообщений Precision Finding

Рис. 1 Типичный поток сообщений точного поиска

Устройство-инициатор — это устройство с установленным приложением Find Hub, на котором была активирована функция точного поиска. Устройство-инициатор — это устройство, которое пытается найти другое устройство.

Устройство-ответчик — это устройство, которое пытается найти устройство-инициатор.

Устройство-инициатор отправляет устройству-ответчику сообщение с запросом на возможность определения дальности, в котором перечисляет технологии определения дальности, информацию о которых оно заинтересовано получить от устройства-ответчика. Устройство-ответчик отвечает уведомлением с запросом на возможность определения дальности, содержащим информацию о поддерживаемых технологиях и их возможностях. Устройство-ответчик включает только запрошенную инициатором информацию. Список возможностей будет отсортирован по приоритету технологии определения дальности, выбранной устройством-ответчиком, при этом первая в списке технология имеет наивысший приоритет.

Затем устройство-инициатор отправит сообщение о конфигурации ранжирования, в котором определит конфигурацию для каждой технологии ранжирования, которую оно хочет использовать. Получив это сообщение, устройство-ответчик должно начать ранжирование для соответствующих технологий, используя предоставленные конфигурации. Устройство-ответчик отправит обратно уведомление с ответом о конфигурации ранжирования, содержащее информацию об успешном запуске каждой отдельной технологии ранжирования. Некоторые технологии ранжирования должны быть запущены как на устройстве-инициаторе, так и на устройстве-ответчике для успешного сеанса ранжирования, в то время как для других требуется запуск только на устройстве-инициаторе, при этом устройство-ответчик должно ответить с результатом успешного запуска для этих технологий. Подробнее о поведении конкретных технологий ранжирования можно узнать в следующих разделах.

Когда устройство-инициатор будет готово завершить сеанс точного поиска, оно отправит ответчику сообщение «Stop Ranging» с указанием технологий, которые необходимо прекратить. Устройство-ответчик ответит уведомлением «Stop Ranging Response», указывающим на успешное завершение поиска с использованием запрошенных технологий.

В случае отключения канала связи FHNA BLE GATT во время сеанса точного поиска, при условии, что некоторые технологии определения дальности продолжают работать, устройство-ответчик реализует механизм тайм-аута, чтобы гарантировать, что дальность не будет бесконечной. Подробности будут зависеть от каждого конкретного случая.

Обратите внимание, что устройство-ответчик не должно предполагать, что порядок операций всегда будет одинаковым. Например, устройство-ответчик должно иметь возможность обрабатывать несколько запросов на определение возможностей ранжирования подряд или даже прямую операцию настройки ранжирования без предшествующего запроса на определение возможностей.

Операции

В таблице 1 представлены операции FHNA, определённые данным документом и необходимые для точного поиска. Каждый подраздел определяет сообщение FHNA для каждой из операций, а содержимое поля «Дополнительные данные» относится к разделу «Диапазон: последовательность внеполосного сообщения и спецификация полезной нагрузки» .

Таблица 1: Операции

Операция Идентификатор данных Описание
Запрос на возможность измерения дальности 0x0A Операция запроса возможностей, которая будет отправлена ​​устройством-инициатором устройству-ответчику. В данных этой операции будут перечислены все технологии диапазона, о которых инициатор хочет узнать от устройства-ответчика.
Ответ на возможность определения дальности 0x0A Это ответ на уведомление на запрос возможности определения дальности. Он содержит информацию о возможностях каждой поддерживаемой технологии определения дальности, запрошенных инициатором.
Конфигурация дальности 0x0B Операция настройки диапазона содержит конфигурации для технологий диапазона, которые устройство-инициатор хочет начать измерять с помощью устройства-ответчика.
Ответ конфигурации ранжирования 0x0B Это ответ на уведомление об операции настройки дальности. Он содержит данные о том, успешно ли устройство-ответчик начало измерение дальности с использованием запрошенных технологий на основе предоставленной конфигурации.
РФС 0x0C Операция с этим идентификатором данных не используется и зарезервирована для будущего использования.
Стоп-рейсинг 0x0D Операция «Остановка измерения дальности», отправленная устройством-инициатором, содержит информацию о том, какие технологии измерения дальности устройство-ответчик должно прекратить.
Остановить ответ на диапазон 0x0D Это ответ на уведомление об операции «Остановка измерения дальности». Он содержит данные о том, была ли операция остановки для конкретной технологии измерения дальности успешной или нет.

Сообщение с запросом на возможность измерения дальности

В таблице 2 дано описание сообщения «Запрос возможности ранжирования».

Таблица 2: Запрос на возможность определения дальности

Октет Тип данных Описание Ценить
0 uint8 Идентификатор данных 0x0A — Операция запроса возможности ранжирования
1 uint8 Длина данных варьируется
2 байтовый массив Одноразовый ключ аутентификации Первые 8 байт HMAC-SHA256 (ключ учетной записи, номер основной версии протокола || последний одноразовый код, считанный из характеристики || идентификатор данных || длина данных || дополнительные данные).
10 байтовый массив Дополнительные данные Сообщение с запросом на возможность измерения дальности, как определено в последовательности сообщений «Ранжирование: внеполосное» и спецификации полезной нагрузки (как заголовка, так и полезной нагрузки)

Сообщение с ответом о возможности определения дальности

В таблице 3 дано определение сообщения «Ответ о возможностях ранжирования».

Таблица 3: Ответ на вопрос о возможностях дальности

Октет Тип данных Описание Ценить
0 uint8 Идентификатор данных 0x0A: Ответ на вопрос о возможностях диапазона
1 uint8 Длина данных варьируется
2 байтовый массив Одноразовый ключ аутентификации Первые 8 байт HMAC-SHA256 (ключ учетной записи, номер основной версии протокола || последний одноразовый код, считанный из характеристики || Идентификатор данных || Длина данных || Дополнительные данные || 0x01).
10 байтовый массив Дополнительные данные Сообщение с ответом о возможностях ранжирования , как определено в последовательности сообщений «Ранжирование: внеполосное» и спецификации полезной нагрузки (как заголовка, так и полезной нагрузки)

Сообщение о конфигурации ранжирования

В таблице 4 дано определение сообщения конфигурации диапазона.

Таблица 4: Конфигурация дальности

Октет Тип данных Описание Ценить
0 uint8 Идентификатор данных 0x0B — Установить конфигурацию диапазона
1 uint8 Длина данных варьируется
2 байтовый массив Одноразовый ключ аутентификации Первые 8 байт HMAC-SHA256 (ключ учетной записи, номер основной версии протокола || последний одноразовый код, считанный из характеристики || идентификатор данных || длина данных || дополнительные данные).
10 байтовый массив Дополнительные данные Сообщение о конфигурации ранжирования , как определено в последовательности сообщений о ранжировании: внеполосное сообщение и спецификация полезной нагрузки (как заголовок, так и полезная нагрузка)

Сообщение с ответом на конфигурацию ранжирования

В таблице 5 определено сообщение с ответом на конфигурацию ранжирования.

Таблица 5: Ответ конфигурации ранжирования

Октет Тип данных Описание Ценить
0 uint8 Идентификатор данных 0x0B — Ответ на установку конфигурации диапазона
1 uint8 Длина данных варьируется
2 байтовый массив Одноразовый ключ аутентификации Первые 8 байт HMAC-SHA256 (ключ учетной записи, номер основной версии протокола || последний одноразовый код, считанный из характеристики || Идентификатор данных || Длина данных || Дополнительные данные || 0x01).
10 байтовый массив Дополнительные данные Сообщение с ответом на конфигурацию ранжирования, как определено в последовательности сообщений «Ранжирование: внеполосное» и спецификации полезной нагрузки (как заголовка, так и полезной нагрузки)

Сообщение Stop Ranging

В таблице 6 дано определение сообщения Stop Ranging.

Таблица 6: Диапазон остановок

Октет Тип данных Описание Ценить
0 uint8 Идентификатор данных 0x0D - Остановка диапазона
1 uint8 Длина данных варьируется
2 байтовый массив Одноразовый ключ аутентификации Первые 8 байт HMAC-SHA256 (ключ учетной записи, номер основной версии протокола || последний одноразовый код, считанный из характеристики || идентификатор данных || длина данных).
10 байтовый массив Дополнительные данные Сообщение Stop Ranging, как определено в последовательности сообщений Ranging: Out-of-band и спецификации полезной нагрузки (как заголовка, так и полезной нагрузки)

Сообщение об остановке измерения дальности

В таблице 7 определено сообщение Stop Ranging Response.

Таблица 7: Реакция на остановку и дальность действия

Октет Тип данных Описание Ценить
0 uint8 Идентификатор данных 0x0D — ответ остановки диапазона
1 uint8 Длина данных варьируется
2 байтовый массив Одноразовый ключ аутентификации Первые 8 байт HMAC-SHA256 (ключ учетной записи, номер основной версии протокола || последний одноразовый код, считанный из характеристики || Идентификатор данных || Длина данных || Дополнительные данные || 0x01).
10 байтовый массив Дополнительные данные Сообщение с ответом на остановку ранжирования, как определено в последовательности сообщений «Ранжирование: внеполосное» и спецификации полезной нагрузки (как заголовка, так и полезной нагрузки)

Защита от нежелательного отслеживания

При активации режима защиты от нежелательного отслеживания, как описано в спецификации FHNA , тот же поток, который применяется к пропуску проверок аутентификации для сообщений о вызовах, также применяется ко всем сообщениям точного поиска, определенным в этом документе для устройств, которые хотят поддерживать эту функцию.

Из спецификации FHNA:

Если провайдер не настроен как маяк FHNA или проверка не пройдена, возвращается ошибка отсутствия аутентификации. Однако, если у провайдера активирована защита от нежелательного отслеживания, и в запросе на защиту от нежелательного отслеживания был включён флаг аутентификации с пропуском звонка, провайдер должен пропустить эту проверку. Ожидается, что данные аутентификации будут предоставлены искателем, но им может быть присвоено произвольное значение.

Специфика технологии ранжирования

В этом разделе содержатся сведения, касающиеся различных технологий.

Особенности сверхширокополосной связи (СШП)

Конкретные детали UWB.

Уровень точности нахождения

В сеансах точного поиска с использованием технологии UWB можно рассчитывать на получение информации как о расстоянии, так и о направлении. Для оптимального наведения интервал измерения должен составлять не менее 240 мс, а для достижения оптимального наведения — 96 мс.

Идентификаторы конфигураций

Внеполосные данные конфигурации, передаваемые для UWB, не содержат полного набора доступных настраиваемых параметров, необходимых UWB для запуска сеанса измерения дальности UWB. Некоторые параметры неявно выбираются выбранным идентификатором конфигурации.

Каждый идентификатор конфигурации представляет собой набор предопределённых параметров конфигурации UWB, документация к которым общедоступна . Для использования в режиме точного поиска устройство-ответчик должно поддерживать идентификатор конфигурации 6 и, опционально, идентификатор конфигурации 3 .

Инициатор и ответчик UWB

В случае точного поиска устройство, обозначенное в данном документе как «Инициатор», будет UWB-ответчиком, а устройство, обозначенное в данном документе как «Ответчик», будет UWB-инициатором. Это связано с тем, что UWB-инициатор потребляет меньше энергии, чем UWB-ответчик, и в большинстве случаев устройство-ответчик будет представлять собой периферийное устройство с ограниченным ресурсом батареи.

Это означает, что устройство-ответчик должно указать, что оно поддерживает роль инициатора UWB, в сообщении с ответом о возможностях определения дальности.

  • Канал 9 должен быть поддержан
  • Для оптимального управления рекомендуется интервал измерения 96 мс, в противном случае необходимо поддерживать 240 мс.
  • Для экономии заряда батареи рекомендуется длительность слота 1 мс, но поддерживается и значение 2 мс.
  • Чип UWB должен быть как минимум совместим с FIRA v1.2 + P-STS.
  • BPRF является обязательным, HPRF рекомендуется, но необязателен. Поддерживаемый или выбранный режим определяется поддерживаемым или выбранным индексом преамбулы.
  • Тип безопасности сеанса: P-STS

Особенности зондирования каналов BLE (CS)

Конкретные детали BLE CS.

Уровень точности нахождения

Сеансы точного поиска с использованием CS в качестве технологии определения расстояния приведут только к измерениям расстояния, направление на данный момент не определяется.

Требуемая связь между устройствами

Сеансы точного поиска с использованием зондирования каналов не будут работать, если устройства не связаны. Требуется существующее соединение между инициатором и устройством-ответчиком. Данная спецификация не предусматривает способа создания соединения между устройствами. Разработчик сценария использования должен установить это соединение между устройствами.

Требуются действия со стороны ответчика для CS

В отличие от UWB, где оба устройства должны явно вызывать API начала и окончания измерения UWB, для CS для начала измерения диапазона CS требуется только устройство-инициатор, вызывая стек Bluetooth, остальная инициализация на стороне ответчика происходит внутриполосно с использованием Bluetooth (BT). Это означает, что после получения сообщения Ranging Configuration или Stop Ranging для CS, ответчику не нужно ничего делать, если Bluetooth включён, кроме как отправить уведомление с сообщением Ranging Configuration Response. Устройство-ответчик потенциально может использовать эти сообщения в качестве триггера для обновления пользовательского интерфейса при наличии экрана или, независимо от наличия экрана, для визуальной обратной связи о состоянии устройства, например, для мигания светодиодов устройства.

Wi-Fi NAN RTT

Подробная информация о Wi-Fi NAN RTT.

Уровень точности нахождения

Сеансы точного поиска с использованием Wi-Fi NAN RTT в качестве технологии определения расстояния приведут только к измерению расстояния, направление на данный момент не определяется.

BLE RSSI

Подробная информация о BLE RSSI.

Уровень точности нахождения

Сеансы точного определения местоположения, использующие только BLE RSSI в качестве технологии определения расстояния, не позволят получить информацию ни о расстоянии, ни о направлении, поскольку BLE RSSI не является технологией точного определения расстояния. Вместо этого пользователь будет видеть подсказки, указывающие на то, близко ли находится устройство или далеко.