Informasi perangkat

Penyedia dapat memberi tahu Pencari tentang informasi perangkat melalui aliran pesan.

Nama Grup Pesan Nilai
Peristiwa informasi perangkat 0x03
Nama Kode Informasi Perangkat Nilai
ID Model 0x01
Alamat BLE diperbarui 0x02
Baterai diperbarui 0x03
Sisa waktu baterai 0x04
Permintaan komponen aktif 0x05
Respons komponen aktif 0x06
(Tidak digunakan lagi)Kemampuan 0x07
Jenis platform 0x08
Versi firmware 0x09
ID sementara FHN saat ini 0x0B

ID Model

Informasi ID Model (untuk Menulis AccountKey secara Retroaktif) harus dikirim ke Pencari saat Aliran Pesan terhubung. Misalnya, 0x03010003AABBCC adalah:

  • 0x03: Peristiwa informasi perangkat
  • 0x01: Nilai ID Model
  • 0x0003: Data tambahan, panjang 3
  • 0xAABBCC: Data tambahan, ID model

Alamat BLE

Informasi alamat BLE (untuk Menulis AccountKey secara Retroaktif), jika Penyedia dapat memperolehnya, juga harus dikirim ke Pencari saat Aliran Pesan terhubung dan setiap kali alamat dirotasi. Misalnya, 0x03020006AABBCCDDEEFF adalah:

  • 0x03: Peristiwa informasi perangkat
  • 0x02: Nilai alamat BLE
  • 0x0006: Data tambahan, panjang 6
  • 0xAABBCCDDEEFF: Data tambahan, alamat BLE

Baterai diperbarui

Untuk Penyedia yang mendukung notifikasi baterai, informasi baterai juga dapat dikirim melalui Aliran Pesan. Saat Aliran Pesan terhubung atau nilai baterai berubah, pembaruan harus dikirim. Bagian data tambahan paket harus berisi data yang sama dengan byte s + 2, s + 3, s + 4 saat mengiklankan data baterai melalui BLE. Misalnya, 0x0303000357417F adalah:

  • 0x03: Peristiwa informasi perangkat
  • 0x03: Nilai baterai
  • 0x0003: Data tambahan, panjang 3
  • 0x57417F: Data tambahan, nilai baterai
    • 0x57: Nilai bud kiri, tidak mengisi daya, baterai 87%
    • 0x41: Nilai bud kanan, tidak mengisi daya, baterai 65%
    • 0x7F: Nilai casing, tidak mengisi daya, baterai tidak diketahui

Penyedia juga dapat memperbarui sisa waktu baterai (jika diketahui). Misalnya, 0x03040001F0 adalah:

  • 0x03: Peristiwa informasi perangkat
  • 0x04: Sisa waktu baterai
  • 0x0001: Data tambahan, panjang 1 (dapat berupa 2 untuk uint16 jika diperlukan).
  • 0xF0: Data tambahan, sisa waktu baterai dalam menit, 240 menit

Komponen aktif

Pencari terkadang ingin mengetahui komponen mana yang saat ini aktif, yang berarti tindakan dapat dilakukan pada komponen tersebut (lihat Tindakan perangkat). Saat Penyedia menerima permintaan yang berisi kode permintaan komponen aktif (0x05), respons harus ditampilkan dalam waktu 1 detik yang menunjukkan status Penyedia saat ini. Respons akan menggunakan kode respons komponen aktif (0x06) dan berisi data tambahan yang menunjukkan komponen mana yang tersedia.

Untuk Penyedia dengan satu komponen, data tambahan harus ditetapkan ke 0x00 jika tidak tersedia. Contohnya adalah mode hemat daya saat pemutaran media tidak akan dilakukan. Jika tidak, data tambahan harus ditetapkan ke 0x01.

Untuk headset dengan beberapa komponen (misalnya, bud kiri dan kanan), setiap bit dalam data tambahan menunjukkan apakah komponen tersebut aktif. Contoh komponen yang tidak aktif adalah bud yang berada di casing dan tidak digunakan. Khusus untuk kasus bud kiri dan kanan:

  • 0x00 (0b00000000): Tidak ada bud yang aktif
  • 0x01 (0b00000001): Bud kanan aktif, kiri tidak aktif
  • 0x02 (0b00000010): Bud kiri aktif, kanan tidak aktif
  • 0x03 (0b00000011): Kedua bud aktif

Jenis Platform

Penyedia mungkin ingin berperilaku berbeda berdasarkan platform yang terhubung. Fast Pair saat ini hanya dilakukan melalui Android, tetapi dukungan dapat diperluas di masa mendatang.

Pesan akan berisi byte pertama yang mengidentifikasi jenis platform dalam data tambahan:

Nama Platform Nilai
Android 0x01

Byte kedua akan disesuaikan per platform. Di Android, byte ini akan merujuk ke versi SDK. Misalnya, Android Pie akan memiliki nilai 28 (0x1C).

Versi firmware

Versi firmware penyedia sebagai string dalam encoding utf-8. Informasi ini sama dengan informasi dalam karakteristik revisi Firmware.

ID Sementara FHN Saat Ini

Penyedia yang mengiklankan frame FHN harus melaporkan ID Sementara FHN (EID) saat ini dengan nilai jam saat ini untuk disinkronkan dengan Pencari jika terjadi perbedaan jam (misalnya, karena baterai habis).

Contoh:

  • 0x03: Peristiwa informasi perangkat
  • 0x0B: Pesan ID sementara FHN saat ini
  • 0x0018: Data tambahan, panjang 24 atau 36 byte
  • 0x13F9EA80: Data tambahan (nilai jam; 4 byte)
  • 0x1122334455667788990011223344556677889900: Data tambahan (EID saat ini; 20 atau 32 byte)