蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet Sniffer 抓取数据方法
蓝牙4.0的开发, 现在真热火的很, 但是很多朋友买了我们出品的cc2540 usb-dongle后, 都反馈说不知道如何抓包, 并且, 即使很多朋友到TI官网论坛去找信息,不少朋友依然是无功而返,实际上, 用cc2540 usb-dongle来进行ble数据的抓包,并不像用电脑的wireshark等软件来抓取ip包一样简单。
我们需要明白的是,ble的广播是可以指定广播信道的,广播信道分别是37、38、39,但TI的协议栈官方例程里已经默认设置了在广播阶段 同时三个信道一起广播,但是一旦跟主机连接上后,就只在其中的一个信道传输数据,所以我们是要指定其中的一个信道的,可恶的是,这个连接上的信道也是随机的,我们可以在抓取到连接包后,填入发起者(即是主机)的地址和信道即可。
下面我们用 TI官方例程 SimpleBLEPeripheral 结合 cc2540 usb-dongle 和 SmartRF Packet Sniffer 软件来实现数据包的抓取和读写
【1】首先要让开发板跑 SimpleBLEPeripheral , 这里不是重点, 先不说哈。
【2】然后,把烧录了“ sniffer_fw_cc2540_usb.hex” 固件的 usb-dongle插入到pc, 如果没有安装驱动, 是要安装的驱动的, 但是如果你已经安装了 SmartRF Packet Sniffer 软件, 那么驱动就已经默认安装了。
【3】 运行 SmartRF Packet Sniffer 。如下图:

上图, 描述的是, 一旦主机和从机连接上后, 到
这一行, 抓包就不在显示了, 这个时候, 如上填入地址, 并选好信道号, 然后再重新复位从机,主机重新连接,这个时候不一定 SmartRF Packet Sniffer 就能显示到连接后的数据包, 如果不能连接上, 就试试 把 改成 38、 39等等, 多试试几次, 就会出现下面图了。(下图表明抓取到了ble的数据包)

下面用lightblue进行一个char1的读操作, lightblue读取到了0x04.(lightblue是ios上很牛的一个软件, 如果不知道, 可以先看看我先前的文章哈,http://blog.csdn.net/mzy202/article/details/23600587)

下面用lightblue进行一个char1的写操作, lightblue写入0x01.

在实际开发中, 这个抓包还是显得比较重要的, 比如android4.3的ble, 目前还不是很稳定,这个时候你又不能确定是不是你代码的问题还是从机的问题, 我们通过抓取空中传递的数据包, 就能确定到底是在主机或从机的问题。
要说的是, 上图当中, 你要问我各个字段都是什么意思, 我还真立刻回答不出来,我们要学会就着问题去找答案,而不是背诵。
打个小广告哈:
低功耗蓝牙4.0 CC2540 USBdongle 带外壳 协议分析 :
如果需要蓝牙4.0BLE开发开发板和资料, 请看这里 http://amomcu.taobao.com/ , 这里能提供基于cc2540或cc2541的蓝牙4.0BLE开发的详细硬件和软件资料, QQ群257318688, 阿莫单片机论坛 www.AmoMcu.com提供技术, 更多项目实例介绍持续更新中。
蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet Sniffer 抓取数据方法的更多相关文章
- 【转】蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet Sniffer 抓取数据方法--不错
原文网址:http://blog.csdn.net/mzy202/article/details/32408223 蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet ...
- 蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet Sniffer 抓取数据方法 【原创,多图】
蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet Sniffer 抓取数据方法 [原创,多图] spm=a1z10.1.w4004-5319414070.11.Zd ...
- 蓝牙4.0BLE cc2540 cc2541 ios OAD课程(空中固件升级)[原版的,多图]
蓝牙4.0BLE cc2540 cc2541 ios OAD课程(件) 为阿莫单片机论坛 www.AmoMcu.com 原创.仅仅公布于csdn博客, 如需转载,请注明出处,谢谢! ...
- CC2540 USB Dongle 使用说明
CC2540做的USB Dongle可以烧写不同的固件从而做很多PC端的应用,下面我们来介绍下下载固件的方法和一些典型应用: 下载接口: 3V3引脚连接到CC Debugger的Target Volt ...
- CC2540 USB DONGLE 使用 BTool 调试BLE 说明
一.Btool软件界面介绍 首先您要将USBDONGLE插入电脑的USB口,然后打开双击打开Btool软件,打开后如下图所示: 在安装驱动的教程中,我们已经记住了我们的USB DONGLE的串口号,在 ...
- 蓝牙4.0BLE 手机控制 cc2540 CC2541 的串口透传功能已实现
蓝牙4.0BLE 手机控制 cc2540 CC2541 的串口透传功能已实现 尽管蓝牙4.0 BLE芯片CC2540 是单芯片(即用户能够对它进行芯片级代码编写), 是80 ...
- PIC24FJ64GB002 with bluetooth USB dongle
PIC24FJ64GB002 with bluetooth USB dongle I will explain my project (how to control a bluetooth USB d ...
- 蓝牙4.0BLE抓包(三) – 扫描请求和扫描响应
版权声明:本文为博主原创文章,转载请注明作者和出处. 作者:强光手电[艾克姆科技-无线事业部] 1. 扫描请求和扫描响应 广播包含扫描请求SCAN_REQ和扫描响应SCAN_RSP. 扫描请求: ...
- 蓝牙4.0BLE抓包(二) – 广播包解析
版权声明:本文为博主原创文章,转载请注明作者和出处. 作者:强光手电[艾克姆科技-无线事业部] 在使用EN-Dongle捕获和解析广播包之前,我们先了解一下BLE报文的结构,之后,再对捕获的广播 ...
随机推荐
- Objective-C通过联合存储为类增加属性及原理解析
联合存储实现方式及底层原理解析 作者:wangzz 原文地址:http://blog.csdn.net/wzzvictory_tjsd/article/details/9347981 转载请注明出处 ...
- PL/SQL 批量SQL
批量SQL包括: FORALL语句 BULK COLLECT子句 FORALL语句 FORALL具有如下结构: FORALL loop_counter IN bounds_clause [SAVE E ...
- Adding Validation to our Album Forms 添加类属性的一些验证特性
Adding Validation to our Album Forms We’ll use the following Data Annotation attributes: Required – ...
- (转)基于PHP的cURL快速入门
1. 原文:基于PHP的cURL快速入门 英文原文:http://net.tutsplus.com/tutorial ... for-mastering-curl/ 原文作者:Burak Guzel ...
- 在线预览文件(pdf)
1.flash版(借助flexpaper工具) 可以把pdf文件用pdf2swf工具转换成swf文件.下载地址http://www.swftools.org/download.html 转换代码如下: ...
- 内存储与外存储(IO流的应用)
存储分为内存储,外存储(Sd卡存储),其中还涉及IO流的应用. 我们先来看内存储,在布局中EditView中输入的内容,通过点击按钮,分别进行保存,读取,删除的操作,读取时显示在下面的TextView ...
- Android性能优化之ViewStub
http://www.cnblogs.com/lwbqqyumidi/p/4047108.html ViewStub是Android布局优化中一个很不错的标签/控件,直接继承自View.虽然Andro ...
- 最简单的基于FFmpeg的移动端例子:IOS 视频解码器-保存
===================================================== 最简单的基于FFmpeg的移动端例子系列文章列表: 最简单的基于FFmpeg的移动端例子:A ...
- 【转】iOS使用NSMutableAttributedString实现富文本
iOS使用NSMutableAttributedString实现富文本 在iOS开发中,常常会有一段文字显示不同的颜色和字体,或者给某几个文字加删除线或下划线的需求.之前在网上找了一些资料,有的是重绘 ...
- ios 动画效果CATransition笔记
初学ios开发,很多概念还不清楚,所以只有边学边做例子.又怕学了后面忘了前面,因此用自己的博客来纪录自己的学习历程,也是对自己学习不要懈怠做个监督. 刚学ios做动画效果.因为ios封装得很好,实现i ...