【发布时间】:2019-02-21 13:01:25
【问题描述】:
在执行低功耗蓝牙扫描时,我遇到了两个我不理解的广告数据包。这两个包分别是:
0x1eff060001092000f4a6326eb7f6dd2338b0b3502d434ffb6d5b89ae3082ab
和
0x1eff060001092000a6fac5c9f755e1fcdf29e6732d047c37825cd44aee744c
看了最新的Bluetooth Core Specification version 5.0,好像这些广告包来自微软。事实上,广告包的结构是Length-Type-Value,如果我是对的,我有:
- 长度:
0x1e十六进制表示十进制转换后的“30 个字节” - 类型:
0xff表示“制造商特定数据”(请参阅Bluetooth Generic Access Profile) - 值:
0x060001092000a6fac5c9f755e1fcdf29e6732d047c37825cd44aee744c
分析structure of "Manufacturer Specific Data" 类型,公司标识符显示在值的前两个字节中。这里,两个广告包的公司标识符是 0x0600(大端序)。将其转换为 little-endian (0x0006),我从 Bluetooth assigned company identifiers 中找到了“Microsoft”。
其实我的问题是:
(1) 有人知道0x01092000f4a6326eb7f6dd2338b0b3502d434ffb6d5b89ae3082ab 部分是什么意思吗?
(2) 有谁知道这种特定类型的广告数据包是如何触发的(由支持蓝牙的计算机或其他 Microsoft 硬件)?
据我观察,Value 的以下模式可以推导出来:
- 第一部分:
0x01092000 - 第二部分:23字节数据(例如
0xf4a6326eb7f6dd2338b0b3502d434ffb6d5b89ae3082ab)
定义了这两个部分后,我不知道它们代表什么......
提前感谢您的帮助:)。
【问题讨论】:
标签: windows bluetooth bluetooth-lowenergy radio ads