Build a GRAVES meteor radar station

The French Air Force’s GRAVES transmitter sits near Dijon and hammers 143.050 MHz into the southern sky. When a meteor ionises the upper atmosphere the radar energy bounces toward Scotland and shows up as a bright streak in a waterfall plot. Here’s the exact recipe we use to turn a £35 RTL-SDR into the PNGs you just saw on the homepage slider.

Core kit

  • RTL-SDR Blog V3, Airspy Mini, or any SDR capable of 143 MHz
  • 4 or 5 element Yagi cut for 2 m (≈1.95 m boom) aimed due south
  • Low-loss coax (LMR-400/eco-flex) & lightning arrestor
  • Tripod or gable bracket keeping the yagi at ~30° elevation

Control side

  • Pi 4 / low-power mini PC running Ubuntu or Raspberry Pi OS
  • RTL-SDR drivers (rtl-sdr) and SoapySDR support
  • SoX or GnuRadio for audio processing
  • Imagemagick (or sox ... spectrogram) for PNG output

Spectral cosmetics

  • Tune to 143.050 MHz CW/USB with ~2 kHz span
  • Gain between 28–38 dB with bias-tee on (Blog V3 only)
  • Average 15–20 s per frame so pings stretch nicely
  • Save PNGs at 600×400 for fast uploads

Five-step flow

  1. Install rtl-sdr, SoX, and ImageMagick: sudo apt install rtl-sdr sox imagemagick.
  2. Verify reception with rtl_test and aim the yagi until GRAVES shows up as a constant carrier.
  3. Pipe IQ samples into a spectrogram. This gives 20 s PNGs every loop:
rtl_fm -M raw -f 143.050M -s 192k -g 35 \ 
| sox -t raw -r 192k -b 16 -e signed -c 1 - -n spectrogram \
    -x 600 -y 300 -z 60 -w hanning -o graves-$(date +%Y%m%d_%H%M%S).png
  1. Drop a simple cron job that prunes anything older than 48 h so the storage directory stays lean.
  2. Point Nebula’s uploader (or your own script) at storage/app/public/feeds or POST the PNGs to the intake API.

Why GRAVES?

It is a megawatt-class continuous wave transmitter pointed upward. We are not listening to meteors directly—we’re watching the radar reflection streak through a narrow slice of spectrum. The method works even under thick cloud, so stations in the west of Scotland still contribute when cameras are rained off.

How do I automate uploads?

Use a tiny Bash loop with inotifywait, or let Nebula’s CLI handle it: nebula-feed push ~/captures/graves/*.png --station=AYR-GRV. Either way the PNG lands in public/storage/feeds and the homepage slider picks up the newest dozen files.

What does a good ping look like?

Meteor reflections show as curved, quickly descending streaks that last under a second. Satellites and planes are slower, almost horizontal lines. If every frame looks like a barcode your gain is too high; if you only see noise, re-check the antenna azimuth.

Return to the main feed →