【蓝牙】 HCI log分析工具----Frontline ComProbe Protocol Analysis System使用教程
Frontline ComProbe Protocol Analysis System是Frontline提供的一款藍(lán)牙協(xié)議log分析工具。下面介紹下它的使用方法。
一、
首先,選擇要打開的HCI log,并選擇log類型為BtSnoop Files,即以*.log結(jié)尾的文件。
二、打開log文件后,選擇Frame Display就可以看到我們抓取的HCI log了
?
三、Frame Display窗口中有很多Tab,將協(xié)議棧中各類協(xié)議分類顯示,例如:HCI相關(guān)的log放在HCI的Tab中,Hands-Free(HFP)屬于應(yīng)用層的Bluetooth Profile,和HFP相關(guān)操作的log都放在Hands-Free這個Tab中。
?
四、過濾Inquiry Command
Inquiry Command是Link Control command類型的command,通過查詢Bluetooth Core Specification的中Vol 2->Part E->7.1 LINK CONTROL COMMANDS小節(jié),可知Link Control command的OCF值為0x0001。
Inquiry Command的Opcode為 0x0001 << 6 + 0x01 = 0x0401 ,通過0x0401就確定某條command為Inquiry Command,該命令的名稱為HCI_Inquiry
?
ComProbe Protocol Analysis System支持過濾功能,通過設(shè)置filter可以過濾出Opcode為0x0401的log,設(shè)置方法如下圖:
五、掃描過程分析
1. 發(fā)送Inquiry請求
- Host發(fā)送HCI_Inquiry Command
應(yīng)用層要進(jìn)行藍(lán)牙設(shè)備掃描啦,Host先發(fā)一條HCI_Inquiry的Command通知Controlle
Controller回復(fù)HCI Event
Controller在收到HCI_Inquiry這條Command后,會回復(fù)一條Command Status的HCI Event,來表示Controller執(zhí)行HCI_Inquiry后的狀態(tài),即Status:Success。仔細(xì)觀察可以發(fā)現(xiàn)這兩條HCI log的Frame標(biāo)號是挨著的,HCI_Inquiry的幀號是196,Command Status的幀號是197。
2. 掃描結(jié)果
掃描完成后,Controller會發(fā)送Event:HCI Extended Inquiry Result。以列表中搜索到的Jabra Classic v0.5.3為例,它的HCI Extended Inquiry Result數(shù)據(jù)包中會包含它的設(shè)備名稱、它所支持的Service的UUID,和設(shè)備類型:Wearable Headset device,因此,Jabra Classic v0.5.3的Icon是一個耳機(jī)的圖標(biāo)。
?
總結(jié)
以上是生活随笔為你收集整理的【蓝牙】 HCI log分析工具----Frontline ComProbe Protocol Analysis System使用教程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Ubuntu桌面版网络设置
- 下一篇: Mac OS X 10.10.3对SSD