Thông tin thiết bị

Nhà cung cấp có thể thông báo cho Người tìm kiếm về thông tin thiết bị thông qua luồng tin nhắn.

Tên nhóm tin nhắn Giá trị
Sự kiện thông tin thiết bị 0x03
Tên mã thông tin thiết bị Giá trị
Mã kiểu máy 0x01
Đã cập nhật địa chỉ BLE 0x02
Đã cập nhật pin 0x03
Thời lượng pin còn lại 0x04
Yêu cầu thành phần đang hoạt động 0x05
Phản hồi của thành phần đang hoạt động 0x06
Các chức năng (không dùng nữa) 0x07
Loại nền tảng 0x08
Phiên bản chương trình cơ sở 0x09
Giá trị nhận dạng tạm thời FMDN hiện tại 0x0 tỷ

Mã kiểu máy

Thông tin về mã nhận dạng mô hình (dành cho tính năng Retroactively Write AccountKey) đến Trình tìm kiếm khi RFCOMM kết nối. Ví dụ: 0x03010003AABBCC sẽ là:

  • 0x03: Sự kiện thông tin thiết bị
  • 0x01: Giá trị ID mô hình
  • 0x0003: Dữ liệu bổ sung, thời lượng 3
  • 0xAABBCC: Dữ liệu bổ sung, mã mô hình

Địa chỉ BLE

Thông tin địa chỉ BLE (dành cho Ghi lại từ khoá tài khoản) , nếu có, cũng phải được gửi đến Trình tìm kiếm khi RFCOMM kết nối và bất cứ khi nào địa chỉ được xoay vòng. Ví dụ: 0x03020006AABBCCDDEEFF sẽ là:

  • 0x03: Sự kiện thông tin thiết bị
  • 0x02: Giá trị địa chỉ BLE
  • 0x0006: Dữ liệu bổ sung, thời lượng 6
  • 0xAABBCCDDEEFF: Dữ liệu bổ sung, địa chỉ BLE

Đã cập nhật pin

Đối với những Nhà cung cấp hỗ trợ thông báo về pin, thông tin về pin cũng có thể được gửi qua RFCOMM. Khi RFCOMM kết nối hoặc giá trị pin thay đổi, hệ thống sẽ gửi thông tin cập nhật. Phần dữ liệu bổ sung của gói phải chứa dữ liệu giống hệt với các byte s + 2, s + 3, s + 4 khi quảng cáo dữ liệu pin qua BLE. Ví dụ: 0x0303000357417F sẽ là:

  • 0x03: Sự kiện thông tin thiết bị
  • 0x03: Giá trị pin
  • 0x0003: Dữ liệu bổ sung, thời lượng 3
  • 0x57417F: Dữ liệu bổ sung, giá trị pin
    • 0x57: Giá trị tai nghe trái, không sạc, 87% pin
    • 0x41: Giá trị Pixel Buds bên phải, không sạc, 65% pin
    • 0x7F: Giá trị hộp đựng, không sạc, pin không xác định

Nhà cung cấp cũng có thể cập nhật thời lượng pin còn lại (nếu biết). Ví dụ: 0x03040001F0 sẽ là:

  • 0x03: Sự kiện thông tin thiết bị
  • 0x04: Thời lượng pin còn lại
  • 0x0001: Dữ liệu bổ sung, độ dài 1 (có thể là 2 cho uint16 nếu cần.)
  • 0xF0: Dữ liệu bổ sung, thời gian pin còn lại tính bằng phút, 240 phút

Thành phần đang hoạt động

Đôi khi, người tìm kiếm có thể muốn biết thành phần nào hiện đang hoạt động, nghĩa là có thể thực hiện một hành động đối với các thành phần đó (xem phần Thao tác trên thiết bị). Khi Nhà cung cấp nhận được một yêu cầu chứa mã yêu cầu thành phần đang hoạt động (0x05), một phản hồi sẽ được trả về trong vòng 1 giây cho biết trạng thái hiện tại của Nhà cung cấp. Phản hồi này sẽ sử dụng mã phản hồi của thành phần đang hoạt động (0x06) và chứa dữ liệu bổ sung cho biết những thành phần nào có sẵn.

Đối với Nhà cung cấp có một thành phần duy nhất, dữ liệu bổ sung phải được đặt thành 0x00 nếu không có sẵn. Một ví dụ của trường hợp này có thể là chế độ tiết kiệm pin, trong đó việc phát nội dung đa phương tiện sẽ không được thực hiện. Nếu không, dữ liệu bổ sung nên được đặt thành 0x01.

Đối với tai nghe có nhiều thành phần (ví dụ: tai nghe trái và phải), mỗi bit trong dữ liệu bổ sung cho biết thành phần đó có đang hoạt động hay không. Ví dụ về một thành phần không hoạt động có thể là một chồi nằm trong trường hợp này chứ không được sử dụng. Cụ thể đối với tai nghe trái và phải:

  • 0x00 (0b00000000): Không có Bud hoạt động
  • 0x01 (0b00000001): Tai nghe phải đang hoạt động, tai trái không hoạt động
  • 0x02 (0b00000010): Pixel trái đang hoạt động, tai phải không hoạt động
  • 0x03 (0b00000011): Cả hai chồi đang hoạt động

Loại nền tảng

Nhà cung cấp có thể muốn có hiệu suất khác đi dựa trên nền tảng mà họ kết nối. Tính năng Ghép nối nhanh hiện chỉ được thực hiện thông qua Android nhưng có thể sẽ mở rộng khả năng hỗ trợ trong tương lai.

Thông báo sẽ chứa loại nền tảng xác định byte đầu tiên trong dữ liệu bổ sung:

Tên nền tảng Giá trị
Android 0x01

Byte thứ hai sẽ được tuỳ chỉnh theo nền tảng. Trong Android, API này sẽ đề cập đến phiên bản SDK. Ví dụ: Android Pie sẽ có giá trị là 28 (0x1C).

Phiên bản chương trình cơ sở

Phiên bản chương trình cơ sở của nhà cung cấp dưới dạng một chuỗi trong mã hoá utf-8. Thông tin này giống với thông tin trong Đặc điểm sửa đổi chương trình cơ sở.

Số nhận dạng tạm thời FMDN hiện tại

Các nhà cung cấp quảng cáo khung FMDN phải báo cáo Giá trị nhận dạng tạm thời FMDN (EID) hiện tại với giá trị đồng hồ hiện tại để đồng bộ hoá với Trình tìm kiếm trong trường hợp đồng hồ trôi (ví dụ: do hết pin).

Ví dụ:

  • 0x03: Sự kiện thông tin thiết bị
  • 0x0B: Thông báo về giá trị nhận dạng tạm thời FMDN hiện tại
  • 0x0018: Dữ liệu bổ sung, độ dài 24 hoặc 36 byte
  • 0x13F9EA80: Dữ liệu bổ sung (giá trị đồng hồ; 4 byte)
  • 0x1122334455667788990011223344556677889900: Dữ liệu bổ sung (EID hiện tại; 20 hoặc 32 byte)