Also known as: software-defined radio, SDR
Software-defined radio (SDR) moves the functions that were once fixed hardware — tuning, filtering, demodulation — into software operating on digitised IQ samples.1 The hardware does only enough to convert a slice of spectrum into numbers; every choice that used to be soldered in place — which modulation, which channel spacing, which error-correcting code — becomes a line of code that can be changed without touching the radio.
How it works
An SDR front-end does the analog work that cannot be done in software: an antenna and a low-noise amplifier raise the signal above the noise, a mixer driven by a local oscillator shifts the wanted band down toward baseband, and an analog-to-digital converter samples it into a stream of complex IQ numbers. From that point on everything is arithmetic. Software re-tunes by mixing the samples with a numerically controlled oscillator inside a digital down-converter, isolates a channel with a digital filter, reduces the rate by decimation, recovers symbols, and applies forward error correction — all on the same samples, all changeable at run time.
Because the differences between radio systems now live in code rather than in metal, one device can decode many incompatible protocols. The same RTL-SDR that follows a P25 control channel can, with different software, demodulate broadcast FM, decode ADS-B aircraft position reports, or track weather-satellite imagery. The physical hardware is close to interchangeable; the intelligence is the program.
Variants
SDR front-ends differ mainly in how they get a band down to something the ADC can sample:
- Superheterodyne — one or more analog mixing stages down to a fixed intermediate frequency before digitising. Common in higher-end receivers for its selectivity.
- Direct-conversion / zero-IF — mix straight to baseband as quadrature IQ. Cheap and wideband, but prone to a DC spike and IQ imbalance. Many mass-market SDRs use a low-IF offset to sidestep the DC problem.
- Direct sampling — no mixer at all; the ADC digitises the RF directly. Used by high-dynamic-range HF receivers and by RTL-SDR’s HF “direct sampling” mode.
In practice
The practical envelope of an SDR is set by three numbers: the sample rate (which fixes the instantaneous bandwidth you can watch at once, per the Nyquist theorem), the ADC’s dynamic range (how far a weak signal can sit below a strong neighbour before it is lost), and the CPU budget (wide captures produce a firehose of samples). Free frameworks such as GNU Radio make the software half approachable by wiring DSP blocks into a flow graph; purpose-built decoders like GopherTrunk trade that generality for a tuned, protocol-specific pipeline.
Relevance to SDR
GopherTrunk is the software half of an SDR, specialised for digital trunked radio: it consumes the IQ stream, channelises the control and voice channels, demodulates the C4FM / CQPSK symbols, and decodes the trunking control messages. The hardware (e.g. RTL-SDR, Airspy) is almost interchangeable. It decodes clear and scrambled traffic but not keyed encryption, and being a receiver it does no transmitting or beamforming.
Sources
-
Software-defined radio — Wikipedia, on the architecture that moves radio functions into software. ↩