Software Defined Radio (SDR) has recently became a popular technology in the telecommunications industry. Its many advantages, including flexibility, reconfigurability and reliability, approve its wide use in radio frequency (RF) communication devices of today and tomorrow. As more and more integrated radio solutions became available, cheap universal SDR devices have appeared with wide tuning range and high sampling rates.
In this thesis, design and implementation of an SDR receiver application, OpenWebRX is presented. OpenWebRX has the following features:
– It can be used as a communication receiver for analog modulations (AM/FM/SSB).
– It can use USB dongles based on RTL2832U IC as input RF front-end.
– It allows multiple users to connect via a web interface, on which it displays a real-time waterfall display.
– It allows users to select different channels within the bandwidth of the sampled signal acquired from the RF front-end. The selected channel is demodulated and the resulting audio is streamed to the browser of the user, where it is played back on the sound card. Users can set receiver parameters (channel frequency, modulation mode, filter envelope) independently.
– The web interface supports multiple browsers and uses modern browser features introduced in HTML5.
The digital signal processing (DSP) functions were placed in a separate library, libcsdr. It contains functions for digital downconversion, filtering and demodulation of AM/FM/SSB signals.
The purpose of the software is to enable amateur radio operators to set up receiver stations that are remotely accessible through the Internet. Both OpenWebRX and libcsdr are released under open-source licenses to let others modify, improve or support it later.
By the time of finishing this thesis, OpenWebRX is already being tested in real-world use by several amateur radio operators.