蓝牙4.0BLE抓包(一) - 搭建EN-Dongle工作环境 使用EN-Dongle抓包 nRF51822
版权声明:本文为博主原创文章,转载请注明作者和出处。
蓝牙4.0 BLE的开发过程中,使用抓包器进行抓包分析无疑会极大地提高我们的开发效率,同时能帮我们快速的定位问题。对于初学者来说,抓包分析能让我们更快的理解蓝牙4.0 BLE的工作过程。
本文详细说明如何搭建EN-Dongle的抓包环境和如何使用EN-Dongle进行抓包。EN-Dongle抓包时会通过Sniffer软件调用强大的网络封包分析软件Wireshark捕获和分析BLE包。
1. 需要的工具
表一:硬件需求
序号 |
设备 |
数量数量 |
1 |
计算机 |
1台 |
2 |
EN-Dongle |
1个 |
3 |
J-LINK仿真器 |
1套 |
4 |
MINI USB数据线 |
1根 |
表二:软件需求
序号 |
名称 |
1 |
ble-sniffer_win_1.0.1 |
2 |
Wireshark-win32-1.12.8或 Wireshark-win64-1.12.8 |
2. 驱动及软件安装
使用EN-Dongle进行抓包和协议分析需要用到下面的1个驱动和两个软件。
- CP2102驱动。
- Wireshark。
- Sniffer(绿色软件,无需安装)。
2.1 安装CP2102驱动
解压“CP210x_VCP_Windows.zip”,解压后如下图,根据具体情况选择安装32位版本或64位版本驱动。
- Windows 32:安装“CP210xVCPInstaller_x86.exe”
- Windows 64:安装“CP210xVCPInstaller_x64.exe”
图1:Wireshark安装文件
2.2 安装Wireshark
根据具体情况选择安装32位版本或64位版本。
- Wireshark-win32-2.0.0。
- Wireshark-win64-2.0.0。
1) 双击Wireshark安装程序,弹出安装窗口,点击“Next”。
图2:安装Wireshark
2) 点击“I Agree”。
图3:安装Wireshark
3) 点击“Next”。
图4:安装Wireshark
4) 选择安装在默认路径后点击“Next”。
图5:安装Wireshark
5) 勾选“Install WinPcap 4.1.3”,点击“Next”。
图6:安装WinPcap
6) 点击“I Agree”。
图7:安装WinPcap
7) 点击“Finish”完成安装。
图8:完成安装
2.3 安装Sniffer
Sniffer是绿色软件,无需安装,解压后双击“ble-sniffer_win_1.0.1_1111_Sniffer.exe”即可运行。
图9:Sniffer软件
3. 使用EN-Dongle抓包
1) 将EN-Dongle连接到计算机的USB接口上,并让EN-Dongle处于Central和Peripherel的信号覆盖范围内,如下图所示。
图10:EN-Dongle抓包示意图
2) 双击“ble-sniffer_win_1.0.1_1111_Sniffer.exe”,启动Sniffer。Sniffer启动后会自动检查串口及周围的 BLE 器件,如下图所示。
图11:Sniffer软件界面
上图中信息栏显示了Sniffer读取的串口是:COM25。设备列表中显示Sniffer已经抓取到两个BLE设备,编号分别是“0”和“1”。
3) 输入编号,选择BLE 器件,如下图所示。
图12:输入编号选择Device
4) 输入“w”启动Wireshark,开始抓包。
图13:启动Wireshark
5) Wireshark启动后,我们就可以看到捕获的BLE包了,如下图所示。
Wireshark是一个很牛的网络封包分析软件,支持众多协议,做过网络通信相关开发的朋友对Wireshark都不会陌生,即使没用过也应该听说过。Wireshark可以帮助我们将一个个原始的BLE数据包按照BLE的协议进行解析,并以我们能看得懂的形式展现。
图14:Wireshark捕获的BLE包
选中一个BLE包(这里捕获的是广播包),展开树形目录,即可看到Wireshark对这个广播包的分析。
图15:Wireshark解析BLE包
到这里,捕获广播包已经OK了,用手机连接一下BLE设备,观察Wireshark捕获窗口,整个连接过程会立即呈现在我们的眼前!
蓝牙4.0BLE抓包(一) - 搭建EN-Dongle工作环境 使用EN-Dongle抓包 nRF51822的更多相关文章
- 蓝牙4.0BLE抓包(三) – 扫描请求和扫描响应
版权声明:本文为博主原创文章,转载请注明作者和出处. 作者:强光手电[艾克姆科技-无线事业部] 1. 扫描请求和扫描响应 广播包含扫描请求SCAN_REQ和扫描响应SCAN_RSP. 扫描请求: ...
- 蓝牙4.0BLE抓包(二) – 广播包解析
版权声明:本文为博主原创文章,转载请注明作者和出处. 作者:强光手电[艾克姆科技-无线事业部] 在使用EN-Dongle捕获和解析广播包之前,我们先了解一下BLE报文的结构,之后,再对捕获的广播 ...
- 【转】蓝牙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.0的开发, 现在真热火的很, 但是很多朋友买了我们出品的cc2540 usb-dongle后, 都反馈说不知道如何抓包, 并且, 即使很多朋友到TI官网论坛去找信息,不少朋友依然是无功而返,实 ...
- 蓝牙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博客, 如需转载,请注明出处,谢谢! ...
- odoo开发环境搭建(三):安装odoo依赖的python包
odoo开发环境搭建(三):安装odoo依赖的python包 http://www.cnblogs.com/jlzhou/p/5940815.html
- 蓝牙4.0BLE 手机控制 cc2540 CC2541 的串口透传功能已实现
蓝牙4.0BLE 手机控制 cc2540 CC2541 的串口透传功能已实现 尽管蓝牙4.0 BLE芯片CC2540 是单芯片(即用户能够对它进行芯片级代码编写), 是80 ...
- 在VS中自动生成NuGet包以及搭建自己的或单位内部的NuGet服务器
关于NuGet的介绍已经很多,可以参考下面的: NuGet学习笔记(1)--初识NuGet及快速安装使用 http://kb.cnblogs.com/page/143190/ NuGet学习笔记(2) ...
- HBase、Hive、MapReduce、Hadoop、Spark 开发环境搭建后的一些步骤(export导出jar包方式 或 Ant 方式)
步骤一 若是,不会HBase开发环境搭建的博文们,见我下面的这篇博客. HBase 开发环境搭建(Eclipse\MyEclipse + Maven) 步骤一里的,需要补充的.如下: 在项目名,右键, ...
随机推荐
- 使用C#进行基于PI的开发
首先欲基于PI-SDK开发PI数据库,必须先安装PI-SDK,然后再VS中新建了一个aspnet网站,添加引用:PI-SDK 1.2 Type Library 和 PISDKCommon 1.2 Ty ...
- [Training Video - 6] [File Reading] [Groovy] Reading Properties file
Reading Properties file : Properties prop = new Properties() def path = "D:\\SoapUIStudy\\appli ...
- PV对第三方存储的访问模式支持
访问模式 PV可以使用存储资源提供商支持的任何方法来映射到host中.如下的表格中所示,提供商有着不同的功能,每个PV的访问模式被设置为卷支持的指定模式.比如,NFS可以支持多个读/写的客户端,但可以 ...
- swift po 实现动态按钮2
// // ButtonViewController.swift // PopInstall // // Created by su on 15/12/11. // Copyright © 2 ...
- 20169205 2016-2017-2 实验四 SQL注入实验
20169205 2016-2017-2 实验四 SQL注入实验 实验介绍 SQL注入技术是利用web应用程序和数据库服务器之间的接口来篡改网站内容的攻击技术.通过把SQL命令插入到Web表单提交框. ...
- [label][git-commands] Several Git Commands
The process of Git commands Operation 1. git commit -m 'fist post' Windows PowerShellCopyright (C) 2 ...
- GPU的历史:从固定管线到可编程管线再到通用计算平台
开始的时候GPU不能编程,也叫固定管线的,就是把数据按照固定的通路走完. 和CPU同样作为计算处理器,顺理成章就出来了可编程的GPU,但是那时候想在GPU上编程可不是容易的事,你只能使用GPU汇编来写 ...
- Websocket出现的错误
前端使用sockjs,后台使用spring的websocket框架 结果在一个网络较慢的地方,发现tomcat报错信息: Oct 28, 2015 10:10:43 AM org.apache.cat ...
- XXX 不是当前用户的有效责任,请联系您的系统管理员
EBS中,有时进入一些基于OA Framework 的Web页面时,会出现这种现象: XXX 不是当前用户的有效责任,请联系您的系统管理员 ( or: xxx is not a valid resp ...
- Android-startService后台运行
什么时候使用startService? 答:APP在后台长时间运行并执行业务的时候,可以用服务,主要是看服务的特点(在后台长时间运行): Service相关代码: package liudeli.se ...