当我执行低功耗蓝牙扫描时,我遇到了两个我不理解的广告数据包。这两个包分别是:
0x1eff060001092000f4a6326eb7f6dd2338b0b3502d434ffb6d5b89ae3082ab
和
0x1eff060001092000a6fac5c9f755e1fcdf29e6732d047c37825cd44aee744c
阅读最新的蓝牙核心规范版本5.0,这些广告包似乎来自微软。事实上,广告数据包的结构是 Length-Type-Value,如果我是对的,这里我有:
0x1e
十六进制表示十进制转换后的“30字节”0xff
,表示“制造商特定数据”(请参阅蓝牙通用访问配置文件)0x060001092000a6fac5c9f755e1fcdf29e6732d047c37825cd44aee744c
分析“制造商特定数据”类型的结构,该值的前两个字节描述了公司标识符。这里,两个广告包的公司标识符是0x0600(大端)。将其转换为小端(0x0006),我从蓝牙分配的公司标识符中找到了“Microsoft”。
其实我的问题是:(1) 有谁知道
0x01092000f4a6326eb7f6dd2338b0b3502d434ffb6d5b89ae3082ab
部分是什么意思吗?(2) 有谁知道这种特定类型的广告数据包是如何触发的(通过支持蓝牙的计算机或其他 Microsoft 硬件)?
根据我的观察,可以得出以下
Value的模式:
0x01092000
0xf4a6326eb7f6dd2338b0b3502d434ffb6d5b89ae3082ab
)