gr-droneid
Out-of-tree GNU Radio module available in GNU Radio World
gr-droneid is an experimental receiver for the proprietary DJI DroneID signal transmitted by compatible aircraft. It detects the periodic wideband OFDM bursts, uses their Zadoff-Chu structure for timing and channel estimation, corrects carrier and phase errors, and extracts the occupied subcarriers. The remaining chain descrambles and turbo-decodes the payload before parsing DroneID fields, providing a research platform for studying DJI identification transmissions from recorded or live IQ data.
- Main author
- David Protzman
- Last modified
- 2024-05-27
- Project
- Upstream repository
Example flowgraphs
These GNU Radio World examples contain one or more blocks from gr-droneid.
- DJI DroneID frame detector — Mavic 3 Classic recordingsDetects a DroneID frame in either of two 40 MS/s DJI Mavic 3 Classic SigMF recordings by correlating the root-600 Zadoff-Chu preamble. The cut19.51 File Source is enabled and cut21.99 is disabled; swap their enable states to test the other recording. Each source reads only the first 400,000 samples (10 ms), which contains its frame and keeps the R2 transfer small. These short cuts do not preserve the roughly 640 ms transmission cadence of a continuous capture.
- DJI DroneID frame detector — Mini 2 recordingDetects DroneID frames in the public 50 MS/s DJI Mini 2 IQ artifact by correlating its root-600 Zadoff-Chu preamble. Message Debug counts the ten curated bursts in this file. In a continuous recording, successive "Found burst" sample offsets should be about 9,830,400 samples apart at 15.36 MS/s (roughly 640 ms); this shortened artifact does not preserve that cadence.