【蓝牙】 HCI log分析工具----Frontline ComProbe Protocol Analysis System使用教程

    Frontline ComProbe Protocol Analysis System是Frontline提供的一款蓝牙协议log分析工具。下面介绍下它的使用方法。

一、

首先,选择要打开的HCI log,并选择log类型为BtSnoop Files,即以*.log结尾的文件。

二、打开log文件后,选择Frame Display就可以看到我们抓取的HCI log了

 

三、Frame Display窗口中有很多Tab,将协议栈中各类协议分类显示,例如:HCI相关的log放在HCI的Tab中,Hands-Free(HFP)属于应用层的Bluetooth Profile,和HFP相关操作的log都放在Hands-Free这个Tab中。

 

四、过滤Inquiry Command

Inquiry CommandLink Control command类型的command,通过查询Bluetooth Core Specification的中Vol 2->Part E->7.1 LINK CONTROL COMMANDS小节,可知Link Control command的OCF值为0x0001

Inquiry Command的Opcode为 0x0001 << 6 + 0x01 = 0x0401通过0x0401就确定某条command为Inquiry Command,该命令的名称为HCI_Inquiry


 

ComProbe Protocol Analysis System支持过滤功能,通过设置filter可以过滤出Opcode为0x0401的log,设置方法如下图:

五、扫描过程分析

1. 发送Inquiry请求

  • Host发送HCI_Inquiry Command
    应用层要进行蓝牙设备扫描啦,Host先发一条HCI_Inquiry的Command通知Controlle

Controller回复HCI Event
Controller在收到HCI_Inquiry这条Command后,会回复一条Command Status的HCI Event,来表示Controller执行HCI_Inquiry后的状态,即Status:Success。仔细观察可以发现这两条HCI log的Frame标号是挨着的,HCI_Inquiry的帧号是196,Command Status的帧号是197。

2. 扫描结果

扫描完成后,Controller会发送Event:HCI Extended Inquiry Result。以列表中搜索到的Jabra Classic v0.5.3为例,它的HCI Extended Inquiry Result数据包中会包含它的设备名称、它所支持的Service的UUID,和设备类型Wearable Headset device,因此,Jabra Classic v0.5.3的Icon是一个耳机的图标

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章