Utility for analyzing communication in DJI drone interfaces via Wireshark.
This is a packet dissector which allows you to view and analyze serial communication on interfaces within the DJI drones. It can also understand packets used within binary Flight Record DAT files. There is also a KML export plugin for visualizing the flight. The dissectors act as documentation on what is known about the DJI protocols, in form of simple LUA code.
A simple setup is required to use the new dissector.
Copy all the files LUA files (*.lua
) and to the Wireshark profile directory. If you already different init.lua
there, merge the content.
The directory usually is ~/.config/wireshark
. If unsure, check directories chapter in official documentation.
The directory usually is C:\Users\<username>\AppData\Roaming\Wireshark
. Check directories chapter in official documentation
and a special chapter for Windows folders if unsure.
Now we need setup Wireshark to associate the pcap files generated by comm_*2pcap.py
capture script with the dji_p3
or dji_mavic
protocol dissector. To do this:
-
Start Wireshark
-
Choose Edit | Preferences | Protocols
-
Scroll down to DLT_USER
-
Click Edit, create a new entry (‘+’) and set it up as shown below
If you're using multiple USER dissectors, remember that you can set comm_*2pcap.py
parameter to change the user slot while generating PCap file.
You may also want to setup Wireshark’s main display columns:
-
Choose Edit | Preferences | Columns
-
Setup as shown below
Having your own column definitions will greatly increase readability of the packets list.
After setup is complete, you can load pcap files and get results like this:
You can now analyze DJI communication protocols.