Automatic FM DX decoding

Automatic FM DX decoding

Author: Onno (VK6FLAB) May 11, 2024 Duration: 5:18
Foundations of Amateur Radio

Much is made in our hobby about working DX, that is sending and receiving distant radio signals. How distant is up for debate. Depending on where you are, DX might be outside the continent, outside the country, or in my case you could easily say, anything outside of my state, since the nearest border is about 1,240 km away from here. For giggles, the distance between Albany in the South West and Wyndham in the North East of the state is 2,400 km and that's via radio wave. By car it's 3,570 km. To be clear, we're still inside VK6.

All that to say, DX is in the ear of the beholder.

If that's not enough, there's a group of amateurs who are of the strident opinion that for DX to count it must be a two-way contact. That is, both stations need to hear each other and as such, those amateurs believe that a mode like WSPR, the Weak Signal Propagation Reporter can't possibly be considered DX, even if you can discover that your station was heard on the other side of the planet.

I'm going to skip right over those who tell anyone who will listen that FT8 isn't real radio because it's just computers talking to each other.

This to give you some context when I introduce the next idea, namely FM Broadcast DX. I'm acutely aware that this isn't amateur radio, there's no two-way communication, it's probably not DX and besides, it's computers. That out of the way, let me tell you about something I discovered.

Many, but not all, FM broadcasters transmit multiple signals when you tune to their station. One of those is a signal called RDS, or Radio Data Systems. It's used to show you the name of the station, sometimes what song is playing, what style of station it is and other information like road traffic alerts and emergencies. You can decode this using an RDS decoder.

Recently I was browsing YouTube. I came across a video on the Broken Signal channel that digs into the world of FM-scanning to log any RDS information for the purpose of finding DX stations. The video goes into great detail on how to set this up with Windows, by copying files into various places, updating XML files, configuring sample rates, connecting virtual audio cables, running several tools simultaneously and it goes on to demonstrate how this all hangs together.

While I was impressed with the idea, the implementation didn't speak to me, since I wince at the notion of copying random files into an application installation directory and besides I'm a Linux user.

So, I went hunting.

Turns out that there is an RDS decoder for Linux, called "redsea", written by Oona OH2EIQ. It's on GitHub. Compiling it is pretty straightforward, follow the instructions and it should work as advertised. You'll also need to have "rtl-sdr" installed so you can run a tool called "rtl_fm". Again Oona's instructions should help you out. I will add that I'm assuming that you have a so-called RTL-SDR dongle, it's a cheap USB device that can be coerced into pretending to be a software defined receiver with about 2.2 MHz of bandwidth.

Based on the example shown, I immediately tuned to a local station and RDS information started filling my screen. To let you know how simple this is, you run the "rtl_fm" tool and send its output to "redsea" which decodes the information and displays it on the screen. That's it. No more moving parts, no XML files, no shenanigans with virtual audio cables and the like.

Stage one complete, on to stage two, scanning.

The "rtl_fm" tool has the capability to scan a range of frequencies. I tried this, but didn't really get anywhere, since for the scanner to work you need to set the squelch in order to switch between frequencies, but if you're aiming for a weak signal, it will never be heard if your local FM broadcasters are belting away 24 hours a day.

So, instead I'm scanning each frequency between 87 MHz and 109 MHz, every 10 kHz, for 10 seconds, to see if there's any RDS data to be heard. I send that to a file and when I feel the urge, I can go check to see what I've heard.

I haven't yet put this up on GitHub because I'm considering making it a contribution to the "redsea" project instead of a project of my own.

Now, at this point you might wonder what all the fuss is about. Well, the same method could be used to decode your local amateur repeater idents, or the NCDXF beacons, or any other kind of interesting information. I saw one user link "rtl_fm" to "multimon-ng", a tool I've spoken about before.

You should also check out Oona's website, windytan.com, there's a whole range of signal processing stories to be found, including dealing with flutter distortion on Steamboat Willie and a very cool spiral spectrogram.

I'll leave you with one question. Why haven't you installed Linux yet?

I'm Onno VK6FLAB


For anyone curious about the crackle of a distant voice emerging from the static or the thrill of making a contact across the globe using nothing but radio waves, Foundations of Amateur Radio offers a friendly, steady guide. Hosted by Onno (VK6FLAB) from Australia, this long-running podcast acts as a companion for newcomers navigating the initial, often overwhelming, steps into this vast hobby. Each episode deliberately unpacks a single facet of amateur radio, breaking down technical concepts, equipment, and operating practices into digestible pieces. You'll hear practical advice on how to get started, find your place within the global community, and discover which of the hobby's countless avenues-from building antennas to satellite communication or emergency service-might spark your passion. It’s not about dry theory; it’s about demystifying the process and sharing the genuine rewards that keep enthusiasts engaged for a lifetime. Having evolved from its earlier incarnation in 2011, this podcast builds from the ground up, week by week, creating a solid resource that grows with you. Tune in for a down-to-earth conversation that makes the airwaves feel a little more accessible and a lot more inviting.
Author: Language: English Episodes: 579

Foundations of Amateur Radio
Podcast Episodes
How to make our hobby and community resilient? [not-audio_url] [/not-audio_url]

Duration: 6:37
Foundations of Amateur Radio The other day I was stuck in traffic behind a vehicle proudly proclaiming that it was "electric". I'd seen the model before, just never connected it with being available as an EV. I wondered…
A new year with new services to the public .. in 1905 [not-audio_url] [/not-audio_url]

Duration: 7:18
Foundations of Amateur Radio Recently I spent some quality time digging into the origins of a word in common use. In doing so, I contacted the Postal Museum in the United Kingdom and received a lovely reply that included…
What do you call that .. radio? [not-audio_url] [/not-audio_url]

Duration: 7:37
Foundations of Amateur Radio If you use a word often enough it starts to lose its meaning. The other day, during breakfast, well, coffee, whilst playing one of our start-the-day with a smile word games, the word "RADIO"…
On the origins of the RF circulator [not-audio_url] [/not-audio_url]

Duration: 6:04
Foundations of Amateur Radio Recently I explored the use of a radio device aptly described by a fellow Aussie Electronics Engineer, "ozeng", as "Absolute witchcraft." .. I'm talking about an "RF circulator", one of which…
Going around in circles, one-way. [not-audio_url] [/not-audio_url]

Duration: 6:14
Foundations of Amateur Radio The other day I saw a post by fellow amateur Gary N8DMT who mentioned an "RF circulator" and a PlutoSDR in the same sentence. Amplified by a response from a fellow Aussie Electronics Engineer…
Bald Yak 13, Monitoring the Sun .. small steps [not-audio_url] [/not-audio_url]

Duration: 5:46
Foundations of Amateur Radio The other day I received an email from Frank K4FMH asking me about an idea I'd worked on some time ago, namely the notion that I might monitor solar flux at home using a software defined radi…
When your hobby revolves around electricity ... [not-audio_url] [/not-audio_url]

Duration: 11:53
Foundations of Amateur Radio The other day I went on my first POTA or Parks On The Air adventure, this time I was on my own. If you recall, my power company announced yet another planned network outage and I felt that I…
Preparing for an outing [not-audio_url] [/not-audio_url]

Duration: 4:52
Foundations of Amateur Radio Recently my local power company notified me of a planned network outage, that's code for, we're turning off the power and your choice is to deal with it. If you've been paying attention, you'…
Where is the fun in that? [not-audio_url] [/not-audio_url]

Duration: 4:19
Foundations of Amateur Radio The pursuit of amateur radio is a glorious thing. On the face of it you're forgiven if you think of it as a purely technical endeavour. Far be it for me to dissuade you from that notion, but…
Playing with Radio [not-audio_url] [/not-audio_url]

Duration: 4:31
Foundations of Amateur Radio The other day I came across an article written by programmer, artist, and game designer "blinry" with the intriguing title: "Fifty Things you can do with a Software Defined Radio". Documentin…