E70-915NWxxS系列星型組網(wǎng)模塊工作在915MHz頻段,星型組網(wǎng)模塊集主機(jī)(協(xié)調(diào)器)、終端(節(jié)點(diǎn))為一體。我們可利用抓包工具和嗅探器對(duì)無(wú)線數(shù)據(jù)包進(jìn)行嗅探,從而方便代碼的調(diào)試和交互流程的分析,本文主要介紹如何設(shè)置和使用SmartRF Packet Sniffer 2和Wireshark 進(jìn)行抓包(E70-433NWxxS的抓包方法與其一致)。
二、軟件簡(jiǎn)介
1、SmartRF Packet Sniffer 2簡(jiǎn)介SmartRF Packet Sniffer 2包括軟件和固件兩部分,可結(jié)合Wireshark來(lái)捕獲和顯示無(wú)線數(shù)據(jù)包。SmartRF Packet Sniffer 2支持CC13xx和CC26xx系列的設(shè)備作為捕獲設(shè)備。SmartRF Packet Sniffer 2包包括以下組件:
用于配置和與捕獲設(shè)備通信的SmartRF Sniffer Agent (PC端工具)。
允許CC13xx和CC26xx 設(shè)備作為捕獲設(shè)備的固件。
固件源碼
Wireshark的剖析器(IEEE 802.15.4通信標(biāo)準(zhǔn)和TI無(wú)線分組信息剖析器)。
2、Wireshark簡(jiǎn)介Wireshark(前稱Ethereal)是一個(gè)網(wǎng)絡(luò)封包分析軟件。網(wǎng)絡(luò)封包分析軟件的功能是擷取網(wǎng)絡(luò)封包,并盡可能顯示出最為詳細(xì)的網(wǎng)絡(luò)封包信息。在過(guò)去,網(wǎng)絡(luò)封包分析軟件是非常昂貴的, Wireshark的出現(xiàn)改變了這一切。在GNUGPL通用許可證的保障范圍底下,使用者可以以免費(fèi)的代價(jià)取得軟件與其源代碼,并擁有針對(duì)其源代碼修改及客制化的權(quán)利。Wireshark是目前全世界最廣泛的網(wǎng)絡(luò)封包分析軟件之一。
a.下載Wireshark網(wǎng)址 (需要網(wǎng)址的朋友可以問(wèn)留言索要,推文規(guī)則暫不支持非微信鏈接)
b.下載Wireshark到電腦默認(rèn)路徑
注意:要先下載Wireshark再下載SmartRF Packet Sniffer 2。如果Wireshark安裝在默認(rèn)安裝路徑上,SmartRF包嗅探器2安裝程序?qū)呀馕霾寮?fù)制到Wireshark。
使用SmartRF Packet Sniffer 2和Wireshark對(duì)E70-915NWxxS星型組網(wǎng)模塊的無(wú)線數(shù)據(jù)進(jìn)行抓包時(shí),需要至少三個(gè)E70-915NWxxS星型組網(wǎng)模塊,一個(gè)作為協(xié)調(diào)器,一個(gè)作為節(jié)點(diǎn)以及一個(gè)嗅探設(shè)備,只有下載包嗅探固件的設(shè)備才能作為嗅探設(shè)備,E70-915NWxxS星型組網(wǎng)模塊的包嗅探固件的位于:SmartRF Packet Sniffer 2的下載路徑sniffer_fwin cc13x0lp sniffer_fw.hex,用戶可使用Flash Programmer2或Uniflash軟件進(jìn)行程序的下載。
需注意,下載了嗅探程序的嗅探器的串口引腳并不是E70-915NWxxS星型組網(wǎng)模塊串口引腳,我們可以通過(guò)打開一個(gè)SDK的示例程序,如uartecho例程,可看到程序中設(shè)置串口接收引腳為IOID_2,串口發(fā)送引腳為IOID_3,因此模塊需要把這兩個(gè)引腳引出來(lái),如下圖所示貼有標(biāo)簽紙的引腳接T2的Tx。
SDK串口引腳配置
串口引出圖
將下載好固件的E70-915NWxxS模塊和下載好嗅探程序的嗅探設(shè)備上電,如下圖所示:
SmartRF Sniffer Agent可以通過(guò)多種方式向Wireshark傳輸數(shù)據(jù),下面演示如何使用Pipe的方式,將數(shù)據(jù)發(fā)送到本地機(jī)器上的Wireshark。
打開SmartRF Packet Sniffer 2.
點(diǎn)擊Options -> Data Out ,選擇 Use Pipe(Vista or higher)
點(diǎn)擊Device Configuration..按鈕,選擇一個(gè)嗅探器設(shè)備。然后點(diǎn)擊Configuration按鈕,選擇協(xié)議, PHY設(shè)置和頻段,選擇信道(注意頻率要和我們待抓模塊的頻率一致),點(diǎn)擊OK,如圖下所示。
點(diǎn)擊Start All。輸入數(shù)據(jù)指示框變?yōu)榫G色,輸出數(shù)據(jù)指示框變?yōu)樗{(lán)色。 創(chuàng)建一個(gè)新的Wireshark桌面快捷方式。在創(chuàng)建Wireshark桌面快捷鍵后,點(diǎn)擊屬性->快捷方式->目標(biāo)(T),將此欄的信息改為“"C:Program FilesWiresharkWireshark.exe" -i.pipeiwspc_data -k”,設(shè)置完成后點(diǎn)擊應(yīng)用。
從新的快捷方式運(yùn)行Wireshark網(wǎng)絡(luò)封包分析軟件。Wireshark顯示捕獲的數(shù)據(jù),且Sniffer Agent圖標(biāo)變?yōu)榫G色。
打開Wireshark,在工具欄點(diǎn)擊幫助 -> 關(guān)于Wireshark(A) -> 插件,確認(rèn)以下三個(gè)插件已經(jīng)安裝:
ti802154ge-x(86/64)-2x.dll
tirpi-x(86/64)-2x.dll
ti-ble-packet-info-x(86/64)-2x.dll
詳見下圖:
若這三個(gè)解析插件沒(méi)有在此顯示,可以使用以下的任意一種方式解決:
驗(yàn)證Wireshark安裝在默認(rèn)位置,然后再次運(yùn)行SmartRF Packet Sniffer 2安裝程序
從SmartRF Packet Sniffer 2安裝位置手動(dòng)復(fù)制插件文件(SmartRF Packet Sniffer 2下載路徑wiresharkplugin.6.x)到Wireshark插件文件夾(Wireshark安裝路徑plugins.6.xepan). 如果你安裝了32位的Wireshark,那么使用x86版本的插件;如果你安裝了64位的Wireshark,那么使用x64版本的插件。
可以通過(guò)配置Wireshark,來(lái)對(duì)加密的數(shù)據(jù)包進(jìn)行解析,由于E70-915NWxxS并未開啟安全密鑰的設(shè)置,因此這里不再描述如何配置Wireshark對(duì)加密的數(shù)據(jù)包進(jìn)行解析
Wireshark數(shù)據(jù)包頁(yè)面如下圖所示,各個(gè)紅框的具體內(nèi)容如下所示:
紅框1:顯示每個(gè)數(shù)據(jù)包的主要信息。
Time:數(shù)據(jù)包的時(shí)間戳,主要用于查看兩個(gè)數(shù)據(jù)包的時(shí)間差
Source:發(fā)送數(shù)據(jù)方的短地址
Destination:接收數(shù)據(jù)方的短地址
Protocol:協(xié)議類型
Length:無(wú)線數(shù)據(jù)包的長(zhǎng)度
Destination PAN:PANID
Info:數(shù)據(jù)類型、發(fā)送方短地址和目標(biāo)短地址
紅框2:選中的無(wú)線數(shù)據(jù)包的數(shù)據(jù)分組,可展開數(shù)據(jù)分組以查看詳細(xì)信息。
紅框3:選中的無(wú)線數(shù)據(jù)包的全部?jī)?nèi)容。
Wireshark中數(shù)據(jù)包的顯示如下圖所示。從SmartRF Sniffer Agent發(fā)送到Wireshark的每個(gè)數(shù)據(jù)包都封裝在UDP/IP數(shù)據(jù)包中。UDP/IP數(shù)據(jù)包信息可以忽略。其中TI 802.15.4GE分組的數(shù)據(jù)被封裝在TI Radio Packet Info分組中,TI Radio Packet Info包括以下信息:
Interface: 捕獲數(shù)據(jù)的設(shè)備(嗅探器)的接口類型和接口號(hào)
Frequency: 頻率信息
Channel: 信道信息
PHY: PHY描述
RSSI: 數(shù)據(jù)包的信號(hào)強(qiáng)度
Frame Check Status: CRC狀態(tài)
綜上所述,在E70-433NWxxS無(wú)線模塊/E70-915NwxxS星型組網(wǎng)模塊的協(xié)調(diào)器設(shè)備與節(jié)點(diǎn)設(shè)備數(shù)據(jù)交互的過(guò)程中,所發(fā)送出來(lái)的無(wú)線數(shù)據(jù)包不僅僅只有我們通過(guò)串口發(fā)送給設(shè)備的數(shù)據(jù),因此在實(shí)際的開發(fā)過(guò)程中,我們可以結(jié)合Wireshark以及SmartRF Packet Sniffer 2進(jìn)行調(diào)試和代碼分析,這讓我們能夠更清晰地理解E70-433NWxxS/E70-915NwxxS模塊的協(xié)調(diào)器設(shè)備與節(jié)點(diǎn)設(shè)備的數(shù)據(jù)交互邏輯。
今天的分享就到這里啦,EBYTE每一天都致力于更好的助力物聯(lián)化、智能化、自動(dòng)化的發(fā)展,提升資源利用率,更多串口服務(wù)器、數(shù)傳電臺(tái)、lora模塊等無(wú)線數(shù)傳模塊產(chǎn)品更多資料,感興趣的小伙伴可以登錄我們的億佰特官網(wǎng)和企業(yè)公眾號(hào)(微信號(hào):cdebyte)進(jìn)行了解,也可以直接撥打400電話咨詢技術(shù)專員!