기기 정보

제공업체는 메시지 스트림을 통해 검색자에게 기기 정보를 알릴 수 있습니다.

메시지 그룹 이름
기기 정보 이벤트 0x03
기기 정보 코드명
모델 ID 0x01
BLE 주소가 업데이트됨 0x02
배터리 업데이트됨 0x03
남은 배터리 시간 0x04
활성 구성요소 요청 0x05
활성 구성요소 응답 0x06
(지원 중단됨)기능 0x07
플랫폼 유형 0x08
펌웨어 버전 0x09
현재 FHN 일회용 식별자 0x0B

모델 ID

모델 ID 정보 (AccountKey를 소급하여 작성)는 RFCOMM이 연결될 때 시커로 전송되어야 합니다. 예를 들어 0x03010003AABBCC는 다음과 같습니다.

  • 0x03: 기기 정보 이벤트
  • 0x01: 모델 ID 값
  • 0x0003: 추가 데이터, 길이 3
  • 0xAABBCC: 추가 데이터, 모델 ID

BLE 주소

BLE 주소 정보 (AccountKey를 소급하여 작성용)도 가능한 경우 RFCOMM이 연결될 때와 주소가 회전할 때마다 시커에 전송해야 합니다. 예를 들어 0x03020006AABBCCDDEEFF는 다음과 같습니다.

  • 0x03: 기기 정보 이벤트
  • 0x02: BLE 주소 값
  • 0x0006: 추가 데이터, 길이 6
  • 0xAABBCCDDEEFF: 추가 데이터, BLE 주소

배터리 업데이트됨

배터리 알림을 지원하는 제공업체의 경우 배터리 정보를 RFCOMM을 통해 전송할 수도 있습니다. RFCOMM이 연결되거나 배터리 값이 변경되면 업데이트를 전송해야 합니다. BLE를 통해 배터리 데이터를 광고할 때 패킷의 추가 데이터 섹션에는 바이트 s + 2, s + 3, s + 4와 동일한 데이터가 포함되어야 합니다. 예를 들어 0x0303000357417F는 다음과 같습니다.

  • 0x03: 기기 정보 이벤트
  • 0x03: 배터리 값
  • 0x0003: 추가 데이터, 길이 3
  • 0x57417F: 추가 데이터, 배터리 값
    • 0x57: 왼쪽 이어폰 값, 충전 중 아님, 배터리 87%
    • 0x41: 오른쪽 이어폰 값, 충전 중 아님, 배터리 65%
    • 0x7F: 케이스 값, 충전 중 아님, 배터리 알 수 없음

공급자는 남은 배터리 시간을 업데이트할 수도 있습니다 (알려진 경우). 예를 들어 0x03040001F0는 다음과 같습니다.

  • 0x03: 기기 정보 이벤트
  • 0x04: 남은 배터리 시간
  • 0x0001: 추가 데이터, 길이 1 (필요한 경우 uint16의 경우 2일 수 있음)
  • 0xF0: 추가 데이터, 남은 배터리 시간(분), 240분

활성 구성요소

검색자는 현재 활성 상태이므로 작업을 실행할 수 있는 구성요소를 알고 싶어 할 수 있습니다 (기기 작업 참고). 공급자가 활성 구성요소 요청 코드 (0x05)가 포함된 요청을 수신하면 1초 이내에 공급자의 현재 상태를 나타내는 응답을 반환해야 합니다. 응답은 활성 구성요소 응답 코드 (0x06)를 사용하고 사용 가능한 구성요소를 나타내는 추가 데이터를 포함합니다.

구성요소가 하나인 제공자의 경우 추가 데이터를 사용할 수 없는 경우 0x00으로 설정해야 합니다. 미디어 재생이 실행되지 않는 저전력 모드가 그 예입니다. 그 외의 경우에는 추가 데이터를 0x01로 설정해야 합니다.

구성요소가 여러 개인 헤드셋 (예: 좌우 이어폰)의 경우 추가 데이터의 각 비트는 해당 구성요소가 활성 상태인지 나타냅니다. 비활성 구성요소의 예로는 케이스에 있고 사용하지 않는 버드가 있습니다. 특히 왼쪽 및 오른쪽 이어폰 케이스의 경우:

  • 0x00 (0b00000000): 어느 쪽도 활성 상태가 아님
  • 0x01 (0b00000001): 오른쪽 이어폰이 활성 상태이고 왼쪽 이어폰이 비활성 상태임
  • 0x02 (0b00000010): 왼쪽 이어폰이 활성 상태이고 오른쪽 이어폰이 비활성 상태입니다.
  • 0x03 (0b00000011): 양쪽 이어폰 모두 활성 상태

플랫폼 유형

제공업체는 연결된 플랫폼에 따라 다르게 실행할 수 있습니다. 빠른 페어링은 현재 Android를 통해서만 실행되지만 향후 지원 범위가 확대될 수 있습니다.

메시지에는 추가 데이터에서 플랫폼 유형을 식별하는 첫 번째 바이트가 포함됩니다.

플랫폼 이름
Android 0x01

두 번째 바이트는 플랫폼별로 맞춤설정됩니다. Android에서는 SDK 버전을 참조합니다. 예를 들어 Android Pie의 값은 28 (0x1C)입니다.

펌웨어 버전

제공업체의 펌웨어 버전(UTF-8 인코딩의 문자열)입니다. 펌웨어 버전 특성의 정보와 동일합니다.

현재 FHN 일회성 식별자

FHN 프레임을 광고하는 제공업체는 시계 오류 (예: 배터리 소진)가 발생할 경우 시커와 동기화하기 위해 현재 시계 값과 함께 현재 FHN 임시 식별자 (EID)를 보고해야 합니다.

예를 들면 다음과 같습니다.

  • 0x03: 기기 정보 이벤트
  • 0x0B: 현재 FHN 일회용 식별자 메시지
  • 0x0018: 추가 데이터, 길이 24바이트 또는 36바이트
  • 0x13F9EA80: 추가 데이터 (시계 값, 4바이트)
  • 0x1122334455667788990011223344556677889900: 추가 데이터 (현재 EID, 20바이트 또는 32바이트)