*Live Packet Sniffer to Wireshark bridge for IEEE 802.15.4 networks.*
5
+
6
+
NOTE WELL: at the moment **pycatsniffer** only supports packet capture of the following protocols:
7
+
Bluetooth Low Energy Adversiting Channels (does not support decryption of encrypted packets)
8
+
9
+
A Python module that uses a **CatSniffer** (TI CC1352 chip) to sniff packets and pipe them to (primarily) wireshark.
10
+
11
+
This tool is a mashup of three existing GitHub projects:
12
+
13
+
* **[ccsniffpiper](https://github.com/andrewdodd/ccsniffpiper)**: A python tool by Andrew Dodd, based on the two below, that pipes the captured frames to wireshark.
14
+
* **[sensniff](https://github.com/g-oikonomou/sensniff)**: A python tool by George Oikonomou to capture packets with the "sensniff" firmware for the TI CC2531 sniffer.
15
+
* **[ccsniffer](https://github.com/christianpanton/ccsniffer)**: A python module by Christian Panton to capture packets with the original TI firmware and print them to stdout.
16
+
17
+
This tool is intended to be an alternative to the Windows-based SmartRF Packet Sniffer 2 program using TI's default firmware on CC13XX chips (and combine it with Wireshark's live capture utility). **pycatsniffer** has been developed on Linux.
18
+
19
+
Requires: pyserial
20
+
21
+
**pycatsniffer** can run in interactive or headless mode. In interactive mode, the user can change the radio channel while running.
22
+
23
+
How to Use
24
+
==========
25
+
Run pycatsniffer
26
+
----------------
27
+
**pycatsniffer**'s main role it to read packets captured from the CatSniffer board and pipe the packets in PCAP format to a named pipe (by default "/tmp/ccsniffpiper").
28
+
29
+
To get this default behaviour, just run the command:
30
+
`python pycatsniffer.py`
31
+
32
+
To see further information, run the help command:
33
+
`python pycatsniffer.py -h`
34
+
35
+
To run in headless mode and pipe using /tmp/ccsniffpiper
To receive the packets from **pycatsniffer** you need to use Wireshark to start a capture using a FIFO file as the 'interface'. By default, **pycatsniffer** will use `/tmp/ccsniffpiper`.
43
+
44
+
To setup Wireshark correctly, perform the following steps:
45
+
* Go to Capture -> options -> Manage Interfaces -> New (under Pipes) -> type `/tmp/ccsniffpiper` and save.
46
+
* The pipe will then appear as an interface. Start a capture on it.
47
+
48
+
Additional settings that might be important include:
49
+
* Open Wireshark's preferences and select 'TI CC24xx FCS format' under Protocols -> IEEE 802.15.4.
50
+
* Enable/disable the protocols you need.
51
+
52
+
53
+
TI's Packet Sniffer Payload Definition
54
+
======================================
55
+
This is just documentation of the packet format from the TI firmware on CatSniffer.
56
+
57
+
General packet format
58
+
The UART packet format is shown in the table below.