In this chapter, we will go through how to set up nRF Sniffer and test that it is working properly by sniffing a Bluetooth LE packet.
nRF Sniffer has a comprehensive documentation on how to program the nRF Sniffer firmware on to your device, and how to set up Wireshark on your computer, to analyze packets. The content in this chapter closely follows the documentation with some additional information and screenshots to help you along the way.
You can choose to either continue with the instructions here or go to the documentation page and follow the steps there.
The nRF Sniffer firmware supports the following boards:
Due to a recent update of the nRF52833 DK version 3 and nRF52840 DK version 3, the new Interface IC on the DK is not fully compatible with the nRF Sniffer software. If you have an nRF52840DK v3, you will need to use the nRF USB port instead of the Interface IC USB port. The nRF52833 DK v3 is not compatible with the sniffer software at the moment, so you will need to use another DK as the sniffer backend. nRF52833 DK v2 and earlier works fine.
1. Download nRF Sniffer for Bluetooth LE v4.x or later and extract the contents of the zip file into a folder of your choice.
In the following sections, this folder is referred to as Sniffer_Software
.
All the firmware HEX files are located in Sniffer_Software/hex
.
Development kit/dongle | Firmware file name |
---|---|
nRF52840 DK | sniffer_nrf52840dk_nrf52840_*.hex |
nRF52840 Dongle | sniffer_nrf52840dongle_nrf52840_*.hex |
nRF52833 DK | sniffer_nrf52833dk_nrf52833_*.hex |
nRF52 DK | sniffer_nrf52dk_nrf52832_*.hex |
nRF51 DK | sniffer_nrf51dk_nrf51422_*.hex |
nRF51 Dongle | sniffer_nrf51dongle_nrf51422_*.hex |
2. Open up nRF Connect for Desktop and install and launch the Programmer application.
On macOS and Linux: install the SEGGER J-Link software before proceeding to the next step.
If you are running an M1-based Mac, you must install the Intel/x86 variants of J-Link.
3. In the upper left hand corner, select the board you are using as the Bluetooth LE sniffer.
4. Select Add file and Browse, then navigate to Sniffer_Software/hex
and select the file that applies to the hardware you are using, see the table above. Select Open.
5. Click Erase & write to flash the firmware to your board.
This will explain the installation process for Windows and macOS. For instructions on Ubuntu Linux, see Installing Wireshark on Ubuntu Linux.
1. Go to the Wireshark download page.
2. In the Stable Release list at the top of the page, select the release package for your operating system.
The download should start automatically.
3. Open up the file when it’s finished downloading, and follow the instructions to download Wireshark.
Wireshark is an open-source packet analyzer, and can be used for many different protocols. To use it with the nRF Sniffer firmware, we offer an external capture plugin to use with Wireshark.
The nRF Sniffer capture tool comes as an external capture plugin for Wireshark.
1. Install the Python requirements
1.1 Open a command window and navigate to the folder Sniffer_Software/extcap
.
1.2 Depending on your system, run one of the following commands (make sure you have Python installed on your computer):
py -3 -m pip install -r requirements.txt
.