Real-World Computing: Radio

For most of its history, radio has been exclusively a hardware problem. Only recently have general-purpose computers become fast enough to handle many of the tasks traditionally reserved for various combinations of resistors, capacitors, and inductors.

Software Defined Radio

A software defined radio takes the radio frequency signal (actually an intermediate frequency signal, which is the same shape as the radio frequency signal but a lower frequency), and performs all processing on the waveform in software. Not only does this allow new types of processing that are difficult or impossible to do in hardware, but it allows the software radio to be easily and quickly reconfigured at will.

The military has been using software defined radio equipment for several years now, and recently some free software (alas, no free hardware!) projects have arisen.

Audio Signal Processing

Related to software processing of RF signals, is software processing of audio signals. Most of the time, audio information broadcast over radio is intended for human consumption. Music and voice leave the final processing up to the human brain. However, sometimes it is useful to include computer readable information along with the normal audio signal. This technique is used by the US Government Emergency Alert System (EAS), and the US National Weather Service NOAA Weather Radio.

The two systems listed above have been designed to use essentially the same encoding mechanism for encoding emergency or weather alert information. The digital information is sent using a technique called Audio Frequency Shift Keying (AFSK), where two different tones are used to encode a binary 0 or 1 bit. The encoding method used transmits digital data at a speed of about 520 baud, or about 65 characters per second.

I have developed a system that monitors the NOAA Weather Radio continuously, watching for weather alerts. See the NOAA Weather Radio page for more information.


Greg Hewgill <greg@hewgill.com>