【蓝牙】 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 Command是Link 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是一個耳機的圖標。
?
總結
以上是生活随笔為你收集整理的【蓝牙】 HCI log分析工具----Frontline ComProbe Protocol Analysis System使用教程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Ubuntu桌面版网络设置
- 下一篇: Mac OS X 10.10.3对SSD