版权声明:本文为博主原创文章,转载请注明作者和出处。    

      蓝牙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的更多相关文章

  1. 蓝牙4.0BLE抓包(三) – 扫描请求和扫描响应

    版权声明:本文为博主原创文章,转载请注明作者和出处.    作者:强光手电[艾克姆科技-无线事业部] 1. 扫描请求和扫描响应 广播包含扫描请求SCAN_REQ和扫描响应SCAN_RSP. 扫描请求: ...

  2. 蓝牙4.0BLE抓包(二) – 广播包解析

    版权声明:本文为博主原创文章,转载请注明作者和出处.    作者:强光手电[艾克姆科技-无线事业部] 在使用EN-Dongle捕获和解析广播包之前,我们先了解一下BLE报文的结构,之后,再对捕获的广播 ...

  3. 【转】蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet Sniffer 抓取数据方法--不错

    原文网址:http://blog.csdn.net/mzy202/article/details/32408223 蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet ...

  4. 蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet Sniffer 抓取数据方法

    蓝牙4.0的开发, 现在真热火的很, 但是很多朋友买了我们出品的cc2540 usb-dongle后, 都反馈说不知道如何抓包, 并且, 即使很多朋友到TI官网论坛去找信息,不少朋友依然是无功而返,实 ...

  5. 蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet Sniffer 抓取数据方法 【原创,多图】

    蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet Sniffer 抓取数据方法 [原创,多图] spm=a1z10.1.w4004-5319414070.11.Zd ...

  6. 蓝牙4.0BLE cc2540 cc2541 ios OAD课程(空中固件升级)[原版的,多图]

           蓝牙4.0BLE cc2540 cc2541 ios OAD课程(件) 为阿莫单片机论坛  www.AmoMcu.com 原创.仅仅公布于csdn博客, 如需转载,请注明出处,谢谢!   ...

  7. odoo开发环境搭建(三):安装odoo依赖的python包

    odoo开发环境搭建(三):安装odoo依赖的python包 http://www.cnblogs.com/jlzhou/p/5940815.html

  8. 蓝牙4.0BLE 手机控制 cc2540 CC2541 的串口透传功能已实现

           蓝牙4.0BLE 手机控制 cc2540 CC2541 的串口透传功能已实现        尽管蓝牙4.0 BLE芯片CC2540 是单芯片(即用户能够对它进行芯片级代码编写), 是80 ...

  9. 在VS中自动生成NuGet包以及搭建自己的或单位内部的NuGet服务器

    关于NuGet的介绍已经很多,可以参考下面的: NuGet学习笔记(1)--初识NuGet及快速安装使用 http://kb.cnblogs.com/page/143190/ NuGet学习笔记(2) ...

  10. HBase、Hive、MapReduce、Hadoop、Spark 开发环境搭建后的一些步骤(export导出jar包方式 或 Ant 方式)

    步骤一 若是,不会HBase开发环境搭建的博文们,见我下面的这篇博客. HBase 开发环境搭建(Eclipse\MyEclipse + Maven) 步骤一里的,需要补充的.如下: 在项目名,右键, ...

随机推荐

  1. 去掉redhat linux提示注册

    去掉提示注册的话,卸载几个软件包:#rpm -qa | grep subscription-manager 然后移除那出现的几项吧:#yum remove subscription-manager-g ...

  2. Linux主流发行版本

    一.简介 而工欲善其事,必先利其器,Linux的世界相當廣大,除了最著名的Ubuntu以外還有不少發行版.然文人相輕,自古皆然,了解不同發行版的優勢不只嘴上攻防用的上,也是學Linux一個有趣的地方! ...

  3. Groovy使用List集合

    获取List集合中的元素 def lst = [1,3,4,1,8,9,2,6] println lst[-1] println lst[-2] 输出结果: 输出: 6 2 使用Range(范围)对象 ...

  4. asp.net mvc 3高级编程文摘

    第一章 入门 M:模型,组类,描述了要处理的数据以及修改和操作数据的业务规则 V:视图,定义应用程序用户界面的显示方式 C:控制器,一组类,用于处理来自用户,整个应用程序流以及特定应用程序逻辑的通信 ...

  5. win7下面iis错误汇总

    1.分析器错误消息: 无法识别的属性“targetFramework”.请注意属性名称区分大小写 解决方法: 修改.NET Framework 版本为相应版本即可,我以前用的是2.0换成4.0的时候出 ...

  6. 查看WEB ADI所对应的包过程函数

    SELECT BNEINTERFACESBEO.APPLICATION_ID       , BNEINTERFACESBEO.INTERFACE_CODE       , BNEINTERFACES ...

  7. IntentService介绍

    1.IntentService 是什么 一个封装了HandlerThread和Handler的异步框架. 是一种特殊Service,继承自Service,是抽象类,必须创建子类才可以使用. 可用于执行 ...

  8. [leetcode] 8. Maximum Depth of Binary Tree

    可能是因为我是按难度顺序刷的原因,这个其实在之前的几道题里面已经写过了.题目如下: Given a binary tree, find its maximum depth. The maximum d ...

  9. 开通博客暨注册github事件

    (1) 姓      名:丁新宇 学      号:1413042054 班      级:网工142 兴趣爱好:听歌.看书.编代码. (2) GitHub注册流程: 1,百度搜索GitHub,进入官 ...

  10. [Erlang22]如何按规则位数输出数字

      需求:把一个数字指定长度输出 例如:  1 00000001 12 00000012 1203 00001203 123456789 123456789 1234567 01234567 方法一: ...