1、开发环境的搭建
参考《nRF52832 Dongle 上手指南.pdf》---淘宝-信驰达模块;
如果有能力的话,应该可以从官网直接下载该固件开发;官网有定时更新的版本(当前官网已经出了3.1.0的版本)https://www.nordicsemi.com/Software-and-tools/Development-Tools/nRF-Sniffer-for-Bluetooth-LE/Download#infotabs
关于python的说明,建议安装3.7以上的版本(本案例用的是3.7.8)可以参考文末的链接,网上大多数文档写的还是2.7的(配套sniffer一般是2.xx)
2、打开wireshark,插上nrf sniffer,点击F5可刷新设备列表
这中间如果出现电脑上有安装annaconda或者其它python工具,安装了不同版本的话,会导致无法识别;---需要卸载其它工具(现阶段的使用方法)
3、出现nrf sniffer设备,说明正确识别了sniffer;如下图所示:
4、双击进入设备监听蓝牙设备
5、现阶段在使用中发现一旦选择停止按钮后,会导致无法再次开启(该问题,还有待研究)————暂时建议开启后不要单击停止,否则需要等待一段时间,或者重启后才能再次打开
6、选择要监听的从机设备(蓝牙广播的设备)
7、滚动按钮
单击后,可以停止实时滚动,也可以继续实时滚动,可以方便观察数据
8、过滤和协议解析
9、过滤说明
过滤符号:
&& | 与 |
|| | 或 |
== | 等于 |
!= | 不等于 |
! | 非 |
过滤指令:
btle | 显示所有ble数据包 |
!(btle.length ==0) | 过滤长度为0的包,即过滤掉空包 |
btatt | 只显示ATT数据包 |
btsmp | 只显示SMP配对过程数据包 |
btl2cap | 只显示l2cap层数据包,包括ATT,SMP,L2CAP层其它数据包 |
(frame.len == 38) || (frame.len == 60) | 显示数据帧长度为38或者60字节长度的数据包 |
自动联想:在过滤窗口输入"bt" 或者"frame."等词的头,可以自动联想出来需要过滤的条件
参考链接:
#windows下搭建nrf52832nordic_ble_sniffer_3.0+wireshark抓包环境
#nrf52832 nRF Sniffer Wireshark 环境搭建完成Wireshark检测不到nRF SnifferCOM问题