NRF51822制作蓝牙抓包器
2017-12-10 15:16
281 查看
前几天由于需要向别人讲解BLE相关知识,为了更加直观展示,想抓段数据来讲解报文部分。苦于手头没有 USB dongle,现寄过来一个时间也来不及了,于是突然冒出个想法,能不能自己做一个。
从NORDIC官网上下载了ble-sniffer_win_1.0.1,解压之后发现东西还是挺全的,除了软件之外,还有PDF和Firmware,在Firmware文件夹下面有个名字为ble-sniffer_nRF51822_1.0.1_1111_Sniffer.hex的固件,由此看来自己动手做还是大有希望的。打开ble-sniffer的User
Guide粗略读了一下,里面说了一下所需要的软硬件和操作方法,使用方法的大致流程就是先烧写固件到NRF51822,然后sniffer通过串口使用抓数据,最后用wireshark分析。还算简单,下面开始动手。
首先,找了一块以前网上买的一个NRF51822模块,用nRFgoStudio先将固件烧进去,先Erase all,然后在Program Application那选择ble-sniffer_win_1.0.1\Sniffer\Firmware目录下的ble-sniffer_nRF51822_1.0.1_1111_Sniffer.hex,选择Program将它烧写进去。
下一步就是将模块用USB转串口连接到电脑了,注意,这个软件的串口通信需要使用硬件流控,所以USB转串口还需要连接CTS和RTS。翻出来一个USB转串口,发现只有VDD,GND,RX和TX,没有CTS和RTS线,怎么办,那就直接拆开自己引出来这两根线。拆开USB转TTL,看一下芯片是CH340,就长下面这样。
网上搜索一下CH340G的PDF,手册说CH340G的第9脚是CTS,14脚是RTS。
既然找到了对应管脚,那就点上电烙铁开始焊接。焊完就是这幅德行
看一下PCA10028.h中NRF51822对串口引脚是如何定义的,RX是11,TX是9,CTS是10,RTS是8。
下面开始连线。
NRF51822 USB-to-UART
TX <------------------------------------>RX
RX <------------------------------------>TX
RX <------------------------------------>TX
CTS <------------------------------------>RTS
RTS <------------------------------------>CTS
现在连接电脑,打开ble-sniffer,sniffer已经找到了硬件,并且开始扫描到周围的其他蓝牙设备了
选择相应的设备然后按W启动wireshark,之
4000
后就可以很友好的观察数据了。
至此,抓包器制作完成。另外如果启动wireshark后发现收到数据,但是却未显示,打开【分析】->【专家信息】里面显示user encapsulation not handled:DLT=157.....一类的信息,这时候就要打开【编辑】->【首选项】,在protocol下面找到DLT-USER,然后右侧选择【编辑】添加一个,DLT选择DLT=157, payload
protocol处填写nordic_ble,之后就可以了。
从NORDIC官网上下载了ble-sniffer_win_1.0.1,解压之后发现东西还是挺全的,除了软件之外,还有PDF和Firmware,在Firmware文件夹下面有个名字为ble-sniffer_nRF51822_1.0.1_1111_Sniffer.hex的固件,由此看来自己动手做还是大有希望的。打开ble-sniffer的User
Guide粗略读了一下,里面说了一下所需要的软硬件和操作方法,使用方法的大致流程就是先烧写固件到NRF51822,然后sniffer通过串口使用抓数据,最后用wireshark分析。还算简单,下面开始动手。
首先,找了一块以前网上买的一个NRF51822模块,用nRFgoStudio先将固件烧进去,先Erase all,然后在Program Application那选择ble-sniffer_win_1.0.1\Sniffer\Firmware目录下的ble-sniffer_nRF51822_1.0.1_1111_Sniffer.hex,选择Program将它烧写进去。
下一步就是将模块用USB转串口连接到电脑了,注意,这个软件的串口通信需要使用硬件流控,所以USB转串口还需要连接CTS和RTS。翻出来一个USB转串口,发现只有VDD,GND,RX和TX,没有CTS和RTS线,怎么办,那就直接拆开自己引出来这两根线。拆开USB转TTL,看一下芯片是CH340,就长下面这样。
网上搜索一下CH340G的PDF,手册说CH340G的第9脚是CTS,14脚是RTS。
既然找到了对应管脚,那就点上电烙铁开始焊接。焊完就是这幅德行
看一下PCA10028.h中NRF51822对串口引脚是如何定义的,RX是11,TX是9,CTS是10,RTS是8。
下面开始连线。
NRF51822 USB-to-UART
TX <------------------------------------>RX
RX <------------------------------------>TX
RX <------------------------------------>TX
CTS <------------------------------------>RTS
RTS <------------------------------------>CTS
现在连接电脑,打开ble-sniffer,sniffer已经找到了硬件,并且开始扫描到周围的其他蓝牙设备了
选择相应的设备然后按W启动wireshark,之
4000
后就可以很友好的观察数据了。
至此,抓包器制作完成。另外如果启动wireshark后发现收到数据,但是却未显示,打开【分析】->【专家信息】里面显示user encapsulation not handled:DLT=157.....一类的信息,这时候就要打开【编辑】->【首选项】,在protocol下面找到DLT-USER,然后右侧选择【编辑】添加一个,DLT选择DLT=157, payload
protocol处填写nordic_ble,之后就可以了。
相关文章推荐
- 蓝牙nrf51822使用s110_nrf51_8.0.0协议栈遇到的 下载问题
- nrf51822 --- 修改蓝牙名字
- 蓝牙nrf51822空中升级
- 蓝牙芯片NRF51822入门学习1:时间管理
- nrf51822教程 第一课 BLE Advertising 蓝牙广播
- nrf51822蓝牙芯片ble_app_proximity程序总结
- 蓝牙nrf51822空中升级
- [蓝牙] 6、基于nRF51822的蓝牙心率计工程消息流Log分析(详细)
- 如何制作一个简单的蓝牙网络多人扑克游戏第一部分
- 基于nrf51822的蓝牙低功耗温湿度节点设计
- nRF51822使用Timer制作4路PWM波详解
- 【nRF51822蓝牙开发笔记】点亮LED灯
- 两个手机进行蓝牙通信项目制作
- [教程] 制作线刷包教程,备份你的NVRAM分区,从此再也不怕丢失imei串号、mac地址、蓝牙地址等
- 蓝牙概述+nrf51822串口数据透传的程序
- BlueTooth: nRF51822蓝牙芯片
- 【1】基于ATmega 8A -PU 的蓝牙遥控电源插座设计——【3、制作以及 测试】
- <转>主流蓝牙BLE控制芯片详解(4):Nordic nRF51822
- nrf51822 --- 从机主动断开蓝牙连接
- [蓝牙] 6、基于nRF51822的蓝牙心率计工程消息流Log分析(详细)