Informacje o urządzeniu

Dostawcy mogą powiadamiać Poszukiwacza o informacjach o urządzeniu za pomocą strumienia wiadomości.

Nazwa grupy wiadomości Wartość
Zdarzenie dotyczące informacji o urządzeniu 0x03
Nazwa kodu informacji o urządzeniu Wartość
Identyfikator modelu 0x01
Adres BLE został zaktualizowany 0x02
Bateria została zaktualizowana. 0x03
Pozostały czas pracy na baterii 0x04
Prośba o aktywne komponenty 0x05
Odpowiedź dotycząca aktywnych komponentów 0x06
(Wycofane) Możliwości 0x07
Typ platformy 0x08
Wersja oprogramowania 0x09
bieżący tymczasowy identyfikator FHN; 0x0B

Identyfikator modelu

Informacje o identyfikatorze modelu (do zapisywania klucza konta z efektem wstecz) należy wysłać do urządzenia szukającego, gdy RFCOMM nawiąże połączenie. Na przykład: 0x03010003AABBCC:

  • 0x03: zdarzenie dotyczące informacji o urządzeniu
  • 0x01: wartość identyfikatora modelu
  • 0x0003: dodatkowe dane, długość 3
  • 0xAABBCC: dodatkowe dane, identyfikator modelu

Adres BLE

Informacje o adresie BLE (do zapisu klucza konta w steście wstecz), jeśli są dostępne, powinny zostać wysłane do urządzenia poszukującego, gdy RFCOMM nawiąże połączenie, oraz za każdym razem, gdy adres zostanie zastąpiony. Na przykład 0x03020006AABBCCDDEEFF to:

  • 0x03: zdarzenie dotyczące informacji o urządzeniu
  • 0x02: wartość adresu BLE
  • 0x0006: dodatkowe dane o długości 6.
  • 0xAABBCCDDEEFF: dodatkowe dane, adres BLE

Bateria została zaktualizowana.

W przypadku dostawców, którzy obsługują powiadomienia o stanie baterii, informacje o baterii mogą być również wysyłane przez RFCOMM. Gdy RFCOMM połączy się lub zmieni się wartość baterii, należy wysłać aktualizację. Sekcja dodatkowych danych pakietu powinna zawierać te same dane co bajty s + 2, s + 3 i s + 4 podczas przesyłania danych o baterii przez BLE. Na przykład:0x0303000357417F:

  • 0x03: zdarzenie dotyczące informacji o urządzeniu
  • 0x03: wartość baterii
  • 0x0003: dodatkowe dane, długość 3
  • 0x57417F: dodatkowe dane, wartości baterii
    • 0x57: wartość lewej słuchawki, nie ładuje się, 87% baterii
    • 0x41: wartość prawej słuchawki, nie ładuje się, 65% baterii
    • 0x7F: wartość etui, nie ładuje się, bateria nieznana

Dostawcy mogą też aktualizować pozostały czas pracy baterii (jeśli jest znany). Na przykład: 0x03040001F0 to:

  • 0x03: zdarzenie dotyczące informacji o urządzeniu
  • 0x04: Pozostały czas pracy baterii
  • 0x0001: dodatkowe dane o długości 1 (w razie potrzeby może to być 2 dla uint16).
  • 0xF0: dodatkowe dane, pozostały czas pracy baterii w minutach, 240 minut

Aktywne komponenty

Czasami osoby poszukujące informacji chcą wiedzieć, które komponenty są obecnie aktywne, co oznacza, że można je modyfikować (patrz Działania na urządzeniu). Gdy dostawca otrzyma żądanie zawierające kod żądania komponentów aktywnych (0x05), w ciągu 1 sekundy powinien zwrócić odpowiedź wskazującą bieżący stan dostawcy. Odpowiedź będzie używać kodu active components response (0x06) i zawierać dodatkowe dane wskazujące, które komponenty są dostępne.

W przypadku dostawcy z jednym komponentem dodatkowe dane powinny mieć wartość 0x00, jeśli nie są dostępne. Przykładem może być tryb oszczędzania baterii, w którym nie będzie możliwe odtwarzanie multimediów. W przeciwnym razie dodatkowe dane powinny być ustawione na 0x01.

W przypadku zestawów słuchawkowych z większą liczbą komponentów (np. lewego i prawego ucha) każdy bit w dodatkowych danych wskazuje, czy dany komponent jest aktywny. Przykładem nieaktywnego komponentu może być element, który znajduje się w obudowie, ale nie jest używany. W przypadku lewej i prawej słuchawki:

  • 0x00 (0b00000000): żadna z podgrup nie jest aktywna
  • 0x01 (0b00000001): prawa słuchawka aktywna, lewa nieaktywna
  • 0x02 (0b00000010): słuchawka lewa aktywna, prawa nieaktywna
  • 0x03 (0b00000011): obie słuchawki są aktywne

Typ platformy

Dostawcy mogą działać inaczej w zależności od platformy, z którą są połączeni. Szybkie parowanie jest obecnie dostępne tylko na urządzeniach z Androidem, ale w przyszłości może zostać rozszerzone.

Wiadomość będzie zawierać pierwszy bajt identyfikujący typ platformy w danych dodatkowych:

Nazwa platformy Wartość
Android 0x01

Drugi bajt będzie dostosowywany do każdej platformy. W przypadku Androida odnosi się do wersji pakietu SDK. Na przykład Android Pie będzie miał wartość 28 (0x1C).

Wersja oprogramowania

Wersja oprogramowania sprzętowego dostawcy jako ciąg znaków w kodowaniu utf-8. To te same informacje co w charakterystyce wersji oprogramowania układowego.

Bieżący tymczasowy identyfikator FHN

Dostawcy, którzy reklamują ramki FHN, powinni zgłaszać bieżący tymczasowy identyfikator FHN (EID) z bieżącą wartością zegara, aby zsynchronizować się z wyszukiwarką w przypadku przesunięcia zegara (np. z powodu wyczerpania baterii).

Na przykład:

  • 0x03: zdarzenie dotyczące informacji o urządzeniu
  • 0x0B: bieżąca wiadomość z identyfikatorem tymczasowym FHN
  • 0x0018: dodatkowe dane o długości 24 lub 36 bajtów
  • 0x13F9EA80: dodatkowe dane (wartość zegara; 4 bajty)
  • 0x1122334455667788990011223344556677889900: dodatkowe dane (bieżący identyfikator EID; 20 lub 32 bajty)