Chapter 1
Installing the Required Bits and Pieces

Explore Software Defined Radio — by Wolfram Donat (5 / 30)

The Pragmatic Programmers
The Pragmatic Programmers
6 min readApr 28, 2021

--

👈 Materials Needed | TOC | Hardware 👉

So you’ve decided to explore the wonderful world of software-defined radio, the world of virtual transistors, analog-to-digital and digital-to-analog converters, and homemade antennas. For that, I say congratulations and welcome! I also say good luck and Godspeed, for here be dragons. I have buckled my armor and girded my loins for the express purpose of guiding you through the turbulent waters of turning your computer into a radio receiver. And if that isn’t a mishmash of metaphors, I don’t know what is. Anyway…

With the proper SDR tools, including software, tuning device, and antenna, you can use your computer to tune into a large swath of the radio spectrum, from 64 MHz — the lower part of the VHF bands — all the way up to the 1700 MHz UHF bands and beyond. There are tools (Airspy HF+, for instance) that will tune into the spectrum all the way down to 1 KHz, and still others, such as HackRF and LimeSDR, that will go higher than 1700 MHz. These are a bit on the expensive side and perhaps beyond the scope of this introductory book, but know that they do exist should you want to explore more of the fringes of the radio spectrum. Instead of turning a tuning dial to change radio stations, as you do with your car radio, with SDR you merely tell the software to tune the device to a specific frequency. This can be done with astonishing levels of precision; some software will allow you to increment or decrement your scan in units of 0.00001 MHz. That’s well beyond what even the most precise, steady-handed person can achieve with a manual tuner. As you can see in the image from http://www.transportation.gov, SDR doesn’t cover a huge portion of the radio spectrum, but having one device able to tune into that many frequencies is very impressive.

Given the right antenna and software, it’s often possible to use the same USB dongle to listen to FM radio stations, CB radio (see sidebar), police and fire scanners, the International Space Station, and even to tune into and visualize the signals from NOAA weather satellites.

images/c01f001.png

Once the signal is acquired, it’s routed from the antenna, through the tuning hardware (most often a USB dongle of some sort) into your computer’s sound card. The sound card acts as a digital-to-analog converter, taking the analog signals and converting them to digital signals which your computer can pipe to the speakers. Some signals, such as those from weather satellites, have an image embedded into the signal being transmitted. With the correct software, you can extract and view those images.

Citizens Band Radio Service

In the United States, Citizen’s Band, or CB, is a two-way, short-distance voice communications service operating near 27 MHz in the shortwave band. It can be used for both personal and business messages. It probably reached its height of usage in the 1970s and early 1980s, but the availability of pagers and, later, cell phones have returned the service to its original users, long-haul truck drivers and hobbyists. Younger readers may not be familiar with it, but just watching an old movie like Smokey and the Bandit may introduce you to nostalgic phrases like “10–4, good buddy” and “chicken lights” and “There was a plain brown wrapper at the 60-yard stick, a bear in the air, and a wreck at the 405. The coops were workin’ hard on your side going west.”

The original CB specs called for AM transmission, but over time channels 36 through 40 became used for SSB communication. To listen to CB conversations, tune to one of the MHz frequencies below on AM. From 27.365 MHz and up, use either LSB or USB.

  • 26.965 | 26.975 | 26.985 | 27.005
  • 27.015 | 27.025 | 27.035 | 27.055
  • 27.165 | 27.175 | 27.185 | 27.205
  • 27.215 | 27.225 | 27.235 | 27.245
  • 27.255 | 27.265 | 27.275 | 27.285
  • 27.295 | 27.305 | 27.315 | 27.325
  • 27.335 | 27.345 | 27.355 | 27.365
  • 27.375 | 27.385 | 27.395 | 27.405

When you’re comfortable with the tools discussed in the book, try listening in and see if there’s any CB traffic in your local area!

Getting started with software-defined radio can be a challenging experience. The SDR world is still a fledgling area with little documentation, despite numerous subreddits, websites (http://www.rtl-sdr.com, for instance), and online/Facebook groups. As I write this, Hackaday is even hosting an online chat with SDR guru Harold Giddings, who goes by the call sign KR0SIV. SDR may be growing in popularity, but it’s still kind of hackerish.

As such, what few SDR software programs exist are often buggy, platform-specific, and — most of all — poorly documented. Dozens of hours of research can lead to nothing but confusion and frustration. When I was getting started, the frustration was often palpable; there’s nothing like following a long set of instructions, step by step, for over an hour, only to find when you finish that it doesn’t work and it’s anyone’s guess as to why.

One thing I learned through my travails and experiments is that it’s important to be pragmatic when it comes to the tools — including the operating system — you decide to use to play with SDR. I’m primarily a Linux guy, for example; if you’ve read any of my other works, you’ll know that I am most comfortable in Ubuntu and Raspbian. I do, however, use both Mac and Windows as well, as I’m not a purist and will happily switch to whatever tool is best for the particular job I’m doing. And I almost always try to keep my books OS-independent, giving instructions for all three major OSes.

However, when it comes to SDR, Windows is still the OS of choice, so we’ll often be using that when it comes to the projects in the book. Linux definitely has some software out there, and I had great success with some of it, but unfortunately, it seems that many of the Linux tools are very hardware dependent; the same piece of software may work fine on your desktop system, but switch to one with a different USB chip and it all may fail. In addition, some tools are just easier to download and use in Windows than in Linux.

As for you Mac junkies, OSX (or MacOS) now has many of the same tools available that Linux has, including rtl-sdr, airpsy, and hackrf. GQRX, the main Linux tool I use in this book, is also available from either its website or via homebrew or macports. However, while I was writing this book, I stayed firmly in the Linux and Windows arenas, so I don’t know how much success you may have with these tools or how easy they may (or may not) be to install. Just know that they exist, and if you try them out and they work well, please let me know!

👈 Materials Needed | TOC | Hardware 👉

Explore Software Defined Radio by Wolfram Donat can be purchased in other book formats directly from the Pragmatic Programmers. If you notice a code error or formatting mistake, please let us know here so that we can fix it.

Unlisted

--

--

The Pragmatic Programmers
The Pragmatic Programmers

We create timely, practical books and learning resources on classic and cutting-edge topics to help you practice your craft and accelerate your career.