Raspberry Pi Drone Detector: Build a 24/7 Remote ID Monitor

An ESP32 hears Bluetooth for an afternoon. A Raspberry Pi with a $30 software-defined radio hears drones around the clock — including the Wi-Fi-NAN broadcasts the ESP32 cannot touch, and with the right software, the DJI-specific transmissions that predate standardised Remote ID. This is the build we recommend when “weekend toy” becomes “I want a permanent sensor on my roof”.

The architecture in one paragraph

An RTL-SDR dongle (the $30 TV-tuner sticks that opened up software-defined radio to everyone) feeds raw 2.4 GHz and 5 GHz samples into decoding software running on the Pi. Different decoders pull different layers out of the same antenna: Wi-Fi NAN Remote ID broadcasts, and — with dedicated tools — the DJI drone-to-controller protocol that carries DroneID data. The Pi logs everything with timestamps, so you build a searchable record of your local airspace rather than a scrolling console.

Parts and software

  • Raspberry Pi 4 (2 GB is plenty) + power + SD card — $55–75
  • RTL-SDR Blog V4 dongle — around $40, the safest choice for support
  • Decoders: the dji_droneid project decodes DJI DroneID from SDR samples; the WarDragon ecosystem documents full reference builds combining hardware and software
  • Optionally: a preamp and a proper 2.4 GHz antenna — the single biggest range upgrade

The honest part: what this build asks of you

This is a tinkerer’s project, not an appliance. The SDR decoders are research-grade: they need specific sample rates, they are sensitive to dongle drift and temperature, and decoding works best on DJI OcuSync-era links — newer links and other manufacturers shift the goalposts. Expect to read GitHub issues, adjust gain staging, and accept that some flights decode and some do not. Our failure-mode shortlist, from community experience and our own bench time: RTL-SDR counter drift killing FC32 decoding after warm-up (thermal, not software); USB ports on the Pi sharing bandwidth with the dongle — use a powered hub; and scheduling: decoding is CPU-hungry, so a Pi 4 with active cooling beats a Pi 3 by a mile.

Making it a 24/7 sensor

  • Run the decoder as a systemd service so it survives reboots and crashes
  • Log detections to SQLite or JSON lines with a timestamp — after a month you will have the most interesting dataset on your street
  • Push detections over MQTT to Home Assistant — our MQTT output doc shows the payload shape and a working automation
  • Put the Pi on a UPS hat; SDR decoders hate dirty shutdowns
Compared to the ESP32 buildRaspberry Pi + SDR
Broadcasts heardBluetooth (via co-process) + Wi-Fi NAN + DJI protocol
Duty cycle24/7 logging, unattended
Skill requiredLinux command line comfort
Total costRoughly $100–150

References: proto17/dji_droneid (541 stars, DJI DroneID decoding) · OpenDroneID · WarDragon ecosystem documentation. All community projects, checked 2026-09-11 — capabilities move fast, read their current READMEs.

Content last reviewed: 2026-09-11. Research-grade decoders: results vary by link type and firmware. Not a security product.

RID regulations move fast. Stay current. Regulation changes, new receivers, silent-aircraft findings – a few emails a year.