Repository navigation
Tutorial DJI drones
DJI drones use wideband OFDM links on 2.4 and 5.8 GHz. OnAir looks at the bursts and classifies them by shape (OcuSync-like, Lightbridge-like or unknown OFDM), with a confidence and a clear note that this is a guess from the signal. Some DJI models also broadcast DroneID, which OnAir can decode to the serial number, position, home point and pilot position as sent in the clear. Receive only. The encrypted video link is never decoded.
- A radio that samples 16 Msps or more: HackRF at 20 Msps, Pluto, bladeRF or USRP. Airspy R2 (10 Msps) and Mini (6 Msps), RTL-SDR and Airspy HF+ cannot run it fully; 40 MHz links can only be seen in part. See Supported radios.
- A 2.4 or 5.8 GHz antenna.
- Frequencies: the mode starts at 2440 MHz and the table spans 2300 to 6000 MHz with a 20 MHz channel. A drone must fly and transmit inside the 20 MHz you tuned.
Understand what you can claim: a shape classification is not an identification. Only a DroneID packet that passes its CRC identifies a drone. DroneID is broadcast only by some models and firmware; many drones, and all new ones that DJI has changed, may not send it in this form.
- Choose the group Aviation, entry Drones, 2.4 / 5.8 GHz (mode DJI drones).
- Tune 2440 MHz or any frequency where a drone may transmit, with 20 Msps. Use the filter choices to narrow what you want: "OcuSync-like only", "Lightbridge-like only", "Wi-Fi-like only", "DroneID only", "DroneID with Wi-Fi collisions", or "everything".
- Tick Decode DroneID if you want packets decoded. A "DroneID bursts without the first symbol" option handles the Mavic 2 and older OcuSync drones.
- Press Start. The panel is headed SIGNALS.
Nothing until a drone flies nearby. Then wideband bursts appear in Signals, with width, period, duty cycle and class. A DroneID packet adds a row in DroneID.
- Signals: Class, Frequency, Width, Period, Duty, Conf. (confidence) and Last seen.
- DroneID: Serial, device type, Position, altitude and height, speed and heading (raw), home point, pilot (phone or controller), GPS time and the check state ("inner CRC-16 ok" or "inner CRC-16 differs (the CRC-24 passed)"). Copy position copies a position; the panel offers a link to open the Drone Remote ID mode.
- Bursts: the burst train with a level-over-time chart (one point per 0.25 s with a burst) and the noise floor. "ZC found, CRC failed" and "tried, no ZC symbols" tell you how far the decoder got.
- "no wideband burst yet": no drone is transmitting inside the tuned 20 MHz, or the gain is wrong.
- Bursts but no DroneID: the model does not broadcast it, or the signal is weak. Wi-Fi collisions: choose "DroneID with Wi-Fi collisions".
- Class keeps changing: it is a guess; treat it as a hint.
- Radio too slow: you need 16 Msps or more.
Run the Drone Remote ID mode too: it covers the legally required broadcast.
DroneID contains the pilot's location. Use it only for lawful purposes such as detecting a drone in your own airspace; do not publish or pass on a person's position. Receiving may be restricted in some countries. OnAir does not send drone operator locations to the public map. See Legal and Privacy.
DJI DroneID (the OcuSync 2 broadcast): OFDM symbols with Zadoff-Chu roots 600 and 147, turbo-coded payload, CRC-24 (and an inner CRC-16). Wideband bursts are classified from width, burst period, duty cycle and cyclic-prefix correlation.
Getting started
Using OnAir
Tools and guides (0.2.7)
- Band survey
- Message database
- Watchlists
- TV recorder
- Time machine
- Pass scheduler
- Plugin SDK
- Headless server
- All guides
Radios
Modes by group
- TV
- Broadcast radio
- Aviation
- Maritime
- Satellite & navigation
- Two-way radio
- Cellular & rail
- Pagers
- IoT & sensors
- Weather & science
- Amateur: digital
- Amateur: voice & packet
- HF utility
- General & tools
Tutorials
- DVB-T2 TV with a HackRF
- FM radio with RDS
- Aircraft with ADS-B and the map
- Ships with AIS
- DAB+ digital radio
- Weather satellite images
- HF digital: FT8 and WSPR
- Digital voice: DMR, D-STAR, P25
- Pagers: POCSAG and FLEX
- Time stations and the clock
- Record IQ, then the Signal workbench
- The signal sample library
- Control a rig with Hamlib
- Two receivers and the multi-decoder
Reference
- Command line
- Remote-control API
- OnAir Web
- Voice codecs
- Transmit
- Build from source
- Contributing
- Code map
Help
Legal and privacy
More