Debug BLE application with nRF Sniffer+wireshark
1. Introduction
The nRF Bluetooth® Smart Sniffer is a tool for debugging Bluetooth low energy (BLE) applications. The sniffer can pick up (sniff) every packet between a selected peripheral and the central device it is communicating with, even when the link is encrypted. When developing a BLE solution, knowing what happens over-the-air between devices can help you isolate, debug and troubleshoot any potential issues.

nRFSniffer trace on Wireshark showing a advertising packets, and the connection established by an iPhone.
2. What you need to get started
Hardware
- An PCA10000 dongle or a nRF51 Evaluation board
- A PC computer running Windows 7 or later
How to set up the hardware
- Connect the hardware to a USB port.
- Place the hardware (PCA10000) close to the Peripheral and Central device.

Hardware setup, if you don’t have the USB extension cable, you can just plug the PCA10000 dongle directly into the USB port, make sure the PCA10000 is in the range of no more than 50 cm to the peripheral and the central.
Software
Download and unzip the following materials:
- nRF tools from www.nordicsemi.com. Download here: /media/uploads/nemovn/nrftools_6_0_0_installer.exe
- ble-sniffer_win_1.0.1_1111_Sniffer.exe found in ble-sniffer_<os>_<version>_Sniffer.zip. Download here: /media/uploads/nemovn/ble-sniffer_win_1.0.1.zip
- Wireshark from wireshark.org.
Download 64-bit version here: /media/uploads/nemovn/wireshark-win64-1.10.9.exe .
Download 32-bit version here: /media/uploads/nemovn/wireshark-win32-1.10.9.exe
Wireshark v1.10 is recommended. The latest Wireshark version, v1.12, may not be fully compatible with the current sniffer software.
3. Flashing the sniffer firmware
- Run ble-sniffer_win_1.0.1_1111_Sniffer.exe from the unziped nRF Sniffer folder.
- nRF Sniffer console interface will appear and search for the sniffer COM Port.
- Press Ctrl+R to start programming
- If you have more than 1 Segger Jlink device you may need to select the correct PCA10000’s SEGGER serial number
- If the sniffer firmware has been installed properly, you should see this interface:

nRFSniffer console showing devices that advertising in the range of the nRF Sniffer
4. Using the sniffer
Once you have the Sniffer console running, the software should automatically find the hardware COM port (you only have to flash the firmware once) and start reporting advertisements and listing nearby devices. If things aren't working as they should, reset the hardware (unplug-wait 5seconds – plugin again) and refresh the device list by typing L or restart the Sniffer program.
Note: If the sniffer console keep searching the COM port when you already pluged the PCA10000 dongle in and already flashed the firmware, you can try to unplug and plug the hardware back again after 5 seconds.
The Sniffer may not manage to pick up all connect requests and will not always pick up on a connection. In such cases, you need to reconnect.
If the sniffer works properly, you can start tracking a connection and debugging by first start with listing the adverting devices by pressing L. Then select the peripheral you want to track by pressing the index number or use up and down arrow buttons and press enter to select. After that you can start wireshark to display the captured packages by pressing “W” and you are ready for shooting trouble.

For more detail on how to use wireshark and analyze the BTLE packets please have a look at chapter 4 in the nRFSniffer user guide included in the zip folder or download here: /media/uploads/nemovn/ble-sniffer_win_1.2_user_guide.pdf
Note: One very useful filter you should try is btle.length!=0 to filter out all empty packet and make it easier to spot meaningful information.
Debug BLE application with nRF Sniffer+wireshark的更多相关文章
- Tomcat debug 模式, Application一直reload,导致内存溢出
在server.xml配置文件中,将reloable改为false.
- Bluefruit LE Sniffer - Bluetooth Low Energy (BLE 4.0) - nRF51822 驱动安装及使用
BLE Sniffer https://www.adafruit.com/product/2269 Bluefruit LE Sniffer - Bluetooth Low Energy (BLE 4 ...
- Debug your ASP.NET Application while Hosted on IIS
转摘:http://www.codeproject.com/Articles/37182/Debug-your-ASP-NET-Application-while-Hosted-on-IIS This ...
- 物联网安全拔“牙”实战——低功耗蓝牙(BLE)初探
物联网安全拔“牙”实战——低功耗蓝牙(BLE)初探 唐朝实验室 · 2015/10/30 10:22 Author: FengGou 0x00 目录 0x00 目录 0x01 前言 0x02 BLE概 ...
- 蓝牙BLE实用教程
蓝牙BLE实用教程 Bluetooth BLE 欢迎使用 小书匠(xiaoshujiang)编辑器,您可以通过 设置 里的修改模板来改变新建文章的内容. 1.蓝牙BLE常见问答 Q: Smart Re ...
- 蓝牙BLE实用教程(转载)
欢迎使用 小书匠(xiaoshujiang)编辑器,您可以通过 设置 里的修改模板来改变新建文章的内容. 1.蓝牙BLE常见问答 Q: Smart Ready 和 Smart 以及传统蓝牙之间是什么关 ...
- Cisco IOS debug command reference Command A through D
debug aaa accounting through debug auto-config debug aaa accounting : to display information on acco ...
- Top Things to Consider When Troubleshooting Complex Application Issues
http://blogs.msdn.com/b/debuggingtoolbox/archive/2011/10/03/top-things-to-consider-when-troubleshoot ...
- eclipse中debug
在需要测试的代码行左侧行号列上双击,生成断点 ,再次双击可以取消断点 如图: 然后右键,选择Debug As-Java Application,(注意,不是选择Run As) 开始调试java ...
随机推荐
- AppleWatch开发教程之Watch应用对象新增内容介绍以及编写运行代码
AppleWatch开发教程之Watch应用对象新增内容介绍以及编写运行代码 添加Watch应用对象时新增内容介绍 Watch应用对象添加到创建的项目中后,会包含两个部分:Watch App 和 Wa ...
- Android RelativeLayout 实现左右中布局
效果图如下: 代码如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns ...
- POJ3250 Bad Hair Day(单调栈)
题目大概就是给一个序列,问每个数右边有几个连续且小于该数的数. 用单调递减栈搞搞就是了. #include<cstdio> #include<cstring> using na ...
- .net如何把导数据入到Excel
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI ...
- DelPhi连接数据库方式
一.SQL Server 2000 的连接数据库 1.无密码连接SQLL:='Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;In ...
- hihoCoder 1160 攻城略地
原图可能有多个连通分量,先DFS找出每个连通分量中最小节点,这些必然是要攻占的城市. 设 n 为节点数, m 为边数, cnt 为初始连通分量数,在剩下的边数不小于 m - (n - cnt) 的时候 ...
- windows phone 7 中怎样定义和使用资源(Resource)
1. 系统资源. 在wp7开发中可以看到很多使用系统资源(resource)的例子,例如默认的新page: http://blog.csdn.net/matrixcl/article/details/ ...
- 在dreamweaver中输入代码时不会有提示的解决办法
输入法造成的. 解决办法:编辑>首选参数>常规>取消“允许双字节内联输入”.
- 关于UIWebView的总结
关于UIWebView的总结 前言 今天参加了 Adobe 和 CSDN 组织的一个关于 PhoneGap 的开发讲座 ,而 PhoneGap 在 iOS 设备上的实现就是通过 UIWebView 控 ...
- workerman使用编译安装workerman的php环境
提示 workerman只是一个代码包,如果php环境满足要求,下载后即可使用,实际上没有安装过程. workerman对php环境的要求是: 1.php>=5.3.3,可以运行命令php-v查 ...