Passive radar is a practical, low-cost way to detect and track reflective objects by exploiting third-party transmitters instead of sending your own radar pulses. The receiver compares a captured direct signal from an illuminator of opportunity with the same signal after it has reflected off targets. By cross-correlating the reference and surveillance channels you produce range-Doppler maps that reveal moving objects. This is the basic passive coherent location principle that makes the approach attractive for hobbyists because you remain receive-only and therefore covert in RF terms.
Why hobbyists can do this now. Affordable software defined radios and open-source toolchains have pushed passive radar from research labs into garages. Low-cost DVB-T and FM transmitters provide strong, continuous waveforms that give good processing gain. Two coherent receiver channels, directional antennas and open DSP blocks in GNU Radio or Python are the minimal ingredients. Projects and papers have shown RTL-SDR class hardware can detect cars, ships and aircraft when properly synchronized and processed.
What passive radar actually measures. You will be working in bistatic geometry. Range is given by the difference in time of arrival between the direct path and the echo. Velocity is inferred from the Doppler shift between the direct and reflected signals. The resulting bistatic range-Doppler map is the central product you will interpret and feed into detection and tracking logic. Note that performance is geometry dependent; detection range and sensitivity vary with where you, the transmitter and the target sit relative to each other.
Core hardware choices and minimum build: a) Receivers: two coherent SDR channels. You can do this with two RTL-SDR dongles that are externally clocked, with a KerberosSDR or multi-tuner coherent front end, or with a single multi-channel coherent SDR like a USRP. Coherency between reference and surveillance channels is critical. b) Antennas: a directional Yagi or log-periodic for the reference pointing at the broadcast tower and a surveillance antenna with the beam covering the area you want to monitor. c) Clocking: use a common 10 MHz reference or a device designed for coherent operation. If you cannot lock clocks, you will face large cross-correlation losses. d) Computer: a modest desktop is fine for offline processing; real-time displays may require GPU acceleration or optimized C/Python code.
Practical step-by-step starter recipe: 1) Pick the illuminator. Look for a strong, wideband terrestrial DVB-T or FM transmitter in your area. Digital TV carriers often give good range resolution and strong SNR. 2) Antenna placement. Point the reference antenna at the transmitter and mount the surveillance antenna to overlook the surveillance sector. Try to minimize direct leakage from the reference into the surveillance antenna. 3) Synchronize receivers. Use a shared 10 MHz clock and common GPS discipline when possible. If you are using RTL-SDRs, use coherent front ends or a KerberosSDR-like board to avoid USB timing jitter. 4) Acquire baseband samples at a suitable sample rate. Around 2.0 to 2.4 MS/s is a common sweet spot for DVB-T experiments. Higher rates increase resolution and processing cost. 5) Processing flow. Calibrate time offsets, optionally frequency align, compute the cross-ambiguity function between reference and surveillance blocks over coherent processing intervals, apply clutter cancellation to remove the direct path and static clutter, then run CFAR detection on range-Doppler bins. 6) Visualize and iterate. Range-Doppler heatmaps and waterfall views are your immediate feedback. Many hobbyists start with recorded files and move to near-real-time once the pipeline is stable.
Key DSP elements explained simply. The cross-ambiguity function is the matched-like correlator that lines up delayed and Doppler-shifted copies of the reference inside the surveillance record. Clutter removal or adaptive cancellation is essential because the direct path is orders of magnitude stronger than echoes. After clutter suppression you get a much cleaner map where moving targets pop out. Detection is typically done using constant false alarm rate logic on the post-processed range-Doppler map. These are standard radar signal processing steps adapted to passive inputs.
Software and open resources to accelerate your build. Start with GNU Radio flowgraphs and the open GitHub repositories that contain example flowgraphs and MATLAB/Python processing scripts. The jmfriedt passive_radar repo includes DVB-T acquisition flowgraphs and notes about synchronization. PassiveRadarSim provides example FM-based processing and cross-ambiguity implementations useful for learning. The RTL-SDR community maintains practical guides showing KerberosSDR and RTL setups and demos you can reproduce. Use those as templates and adapt parameters to your local transmitter and geometry.
Performance, limitations and what to expect. With strong DVB-T or high-power FM you can see vehicles within a few tens to a few hundreds of kilometers under favorable geometry. Shorter ranges and dense clutter require tighter antenna patterns and better clutter cancellation. Resolution depends on available signal bandwidth; combining multiple frequencies can improve range resolution. Passive systems cannot control the waveform, so you must adapt to each illuminator’s structure and variability. Also remember that covert detection does not mean perfect detection; low RCS or unfavorable bistatic geometry will reduce visibility.
A short note on ‘stealth’ and bistatic effects. Stealth shaping and radar-absorbing materials are designed against monostatic radars where transmit and receive are collocated. In bistatic or multistatic setups the target’s radar cross section can change significantly with aspect and geometry. Passive radar can therefore provide complementary detection capability in some scenarios, but it is not a universal counter to low-observability designs. Geometry, frequency and polarization matter.
Safety, legality and ethics. Passive radar is receive-only and therefore less likely to trigger regulatory alarms, but you must still obey local laws about surveillance and privacy. Do not attempt to decode or publish someone else’s communications. Avoid active transmissions or jamming. If you plan to track aircraft or drones, respect airspace privacy rules and local regulations. When in doubt, check your country’s communications authority guidance.
Next steps and experiments to try. 1) Reproduce a published DVB-T demo with recorded data and a cross-ambiguity post-processor. 2) Try different illuminators: FM for local traffic detection and DVB-T for longer-range airborne targets. 3) Add a third receiver or a second transmitter frequency to improve localization via multi-static geometry. 4) Explore basic tracker association from the range-Doppler tracks to form short term tracks. 5) Profile processing blocks and consider GPU acceleration for real-time operation. The active hobbyist projects and papers cited below provide code you can adapt quickly.
Final word. Passive radar gives hobbyists a credible, technically rich path into radar concepts without transmitting. It is a good exercise in RF front end design, synchronization, and digital signal processing. Start small, reuse open code, and respect legal boundaries. If you approach it methodically you will be able to build functional passive range-Doppler displays and understand the limits of passive sensing in contested or stealthy environments.