About QRadioLink
QRadioLink is a GNU/Linux multimode SDR (software defined radio) transceiver application using the Internet for VOIP communication (radio over IP), built on top of GNU radio,
which allows experimenting with software defined radio hardware using different digital and analog radio signals and a Qt5 user interface.
Its primary purpose is educational (demonstrating radio communications to children at schools), but it can also be customized for low power data communications on various ISM frequency bands.
It can also be used as an amateur radio SDR transceiver for experimentation.
Possible applications:
- ISM band communications
- Raspberry Pi hobby RF communications
- Radio over IP, Internet linking of semi-duplex or full duplex remote radio nodes
- homebrew radio hotspot for digital voice modes in amateur radio bands
Alternatives to QRadioLink
Free software projects that work on Linux and have similar features to QRadioLink are listed below.
- FreeDV is a Digital Voice mode for HF radio. The application works for Windows, Linux and OSX and allows any SSB radio to be used for low bit rate digital voice. It is the original free software Codec2 implementation. It does not require a SDR and works with any analog radio.
- SvxLink is a great project which inspired the radio linking features of QRadioLink. The Qtel component is a full-featured Echolink GUI client. It does not require using a SDR and can work with any FM radio.
- Gqrx is an open source software defined radio receiver (SDR) powered by the GNU Radio SDK and the Qt graphical toolkit. Gqrx inspired the use of GNU radio in QRadioLink and some features, code and architecture were copied verbatim from Gqrx as the best alternative available. Despite the graphical resemblance to it, Gqrx is much more suitable for the purpose of general SDR receiver. There are several trade-offs made in QRadioLink to emphasize CPU performance to the detriment of signal quality. One such tradeoff is the use of an audio sample rate of 8000 Hz in QRadioLink compared to the more faithful 48000 Hz in Gqrx. Other major differences are lack of Wide FM stereo, RDS decoding, lack of waterfall persistence, lack of I/Q samples recording and lower SSB / AM performance in QRadioLink. Gqrx is also more user friendly and has a wide support community.
- SDRangel is a full SDR transceiver for SSB, FM, DMR, D-Star, C4FM and DVB-S. It can use only SDR hardware but it supports a large number of them.
- Mumble is what QRadioLink uses under the hood. It is a great alternative for people who don't want to use SDR radios.
- Codec2 GMSK is a great and free software alternative to D-Star on VHF-UHF handheld radios. It only requires a radio capable of 9600 baud packet.
- OP25 is a free software implementation of D-Star, DMR and C4FM (Yaesu digital voice standard). It works with FM radios capable of 9600 baud packet as well as SDRs.
- Charon is a stand-alone OFDM transceiver with batman-adv mesh networking capabilities. The IP modem in Charon is very advanced and can be embedded on the PlutoSDR. It is the base for several amateur radio mesh networks. Only works with SDR hardware.
- MMDVM extremely robust free software implementation of D-Star, DMR and C4FM (Yaesu digital voice standard). Works with RaspberryPi, Arduino and any radios capable of 9600 baud packet.
Features
- Transmit at all supported sample rates
- VOIP (Radio-over-IP) connection between two or more stations operating in simplex or semi-duplex mode
- Direct VOIP talk-around (only requires connection to a VOIP server and no radio)
- Radio forwarding over VOIP - forward analog or digital radio to VOIP connection and viceversa
- Wideband audio streaming over the Internet using the Opus audio codec
- Configurable VOIP bitrate
- Audio recording for local audio output in FLAC (free lossless audio compression) format
- Compatible with the Mumble client application
- Remote control via network (requires a telnet client or similar program, can be scripted)
- Remote control via Mumble private text messages
- Run headless (no graphical user interface) for terminal usage on embedded platforms like the Raspberry Pi or similar boards without any screen
- Transmit and receive analog FM, SSB, AM, digital voice, text messages, digital video, IP protocol.
- Full duplex DQPSK 250 kbit/s and 4FSK 100 kbit/s IP radio modems with configurable TX/RX offsets
- Analog and digital mode repeater - in full duplex mode only, same mode or mixed mode repeater (e.g. FM to Codec2 and viceversa, or FM to Opus and viceversa)
- Repeater linking via VOIP and Mumble - a group of repeaters can be linked by sharing the same Mumble channel. This feature is still experimental and WIP.
- Full duplex and simplex operation
- Fast tune reverse repeater shift using dedicated button
- Split operation (transmit on other frequency than the receive frequency with no shift limitation, used mostly for repeater operation)
- Memory channels (store frequency, name, TX shift, operating mode, squelch value, volume, TX power, RX gain, TX and RX CTCSS) and memory channel scan
- Mixed mode operation (receive one mode and transmit another)
- Digital voice codecs: Codec2 700 bit/s, Codec2 1400 bit/s, Opus 9600 bit/s
- Digital voice modem bitrates over the air from 1 kbit/s to 10 kbit/s
- FreeDV digital voice modulator and demodulator (currently supports only 1600, 700C, 700D and 800XA modes)
- Wideband digital voice streaming over the Internet with the Opus audio codec
- Digital modulation: FreeDV 1600, FreeDV 700C, FreeDV 700D, FreeDV 800XA, BPSK, DQPSK, 2FSK, 4FSK
- Analog modulations: FM (12.5 kHz), narrow FM (6.25 kHz), SSB, AM, Wide FM (broadcast, receive-only)
- Simple, low resolution video mode (JPEG encoded) operating at 10 frames per second in 300 kHz bandwidth, now with sound using the Opus codec at 9400 kbit/s
- Configurable filter widths for analog modes (AM, FM, SSB)
- CTCSS encoder and decoder for analog FM
- VOX mode with configurable VOX level
- USB FTDI (FT232) relay control support (for RF switches, power amplifier and filter control). Boards with up to 8 relays are supported.
- Automatic carrier tracking and Doppler effect correction. The system can track Doppler shifts of up to 5-10 kHz, depending on mode. It requires a CNR of at least 10-12 dB, more for FSK modes than for PSK modes.
- Supported hardware: Ettus USRP bus devices, RTL-SDR, ADALM-Pluto (PlutoSDR), LimeSDR-mini, LimeNET-Micro, BladeRF, other devices
supported by gr-osmosdr (HackRF, RedPitaya, others not tested)
Note: QRadioLink uses code from the gr-cessb GNU radio out of tree module. Since this module is not packaged by some distributions, the code is included in the application.