About

About QRadioLink

QRadioLink is a VOIP (radio over IP) GNU/Linux SDR (software defined radio) transceiver application using Internet for communication, 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, but it can also be customized for low power data communications on various ISM frequency bands. It can also be used as a low power amateur radio SDR transceiver for demonstrating radio communications to children at schools.

Night mode

Possible applications:

Alternatives to QRadioLink

Free software projects that work on Linux and have similar features to QRadioLink are listed below.

Important: starting with GNU radio version 3.8 QRadioLink will not work anymore due to the dependency on the gr-osmosdr package which is removed from most Linux distributions


Features

Note: QRadioLink currently uses only the default Gnuradio blocks, but that could change in the future.


FAQ

Why does the user interface appear different from the screenshots on my computer?
The screenshots are taken under KDE, a native Qt desktop environment. With GTK based desktops, the Qt theme can behave differently. I have not mastered yet these subtle differences. Your help is welcome.

I am trying to use the official Mumble server package, but it does not seem to work with QRadioLink
The best response I can come up with is that the official Mumble protocol reference possibly ommits some steps required to connect to the latest version of the official server. My Mumble client is written according to this document, but it uses the umurmur server package for this reason. Your help in resolving this issue is also welcome.

Why is there no Android APK for QRadioLink?
Because QRadioLink is not a native Android application and needs a GNU/Linux Android container and userspace. For this reason the user interface is rather clunky for a mobile device and needs a rewrite. You can expect that to happen once KDE Plasma mobile becomes stable. While the application is not native, the performance is similar to a native application, but there is some overhead from the visualisation layers, especially if you use a VNC display instead of an X server. For most modes, expect at least 50% CPU usage on 3-4 cores running at 1.2 GHz.

I am running QRadioLink on a very limited CPU power platform, what can I do?
The FFT and waterfall widgets are not active if you disable the FFT checkbox. No FFT is performed on the data by GNU radio and no UI painting is happening. When you switch FFT on, that code becomes active and the application takes a performance hit which is proportional to the sample rate, FFT size and the FPS. Reduce them to the minimum for lowest CPU demand. You should run volk_profile before running the application for optimization.

I have issues forwarding the VoIP digital audio to the radio and viceversa
If your SDR receives an FM or other analog signal there is no transcoding involved and the voice packets encoded with Opus are sent directly to connected clients. If your SDR receives a digital voice signal like Codec2, the audio is transcoded first before being sent to the VoIP network. Audio artefacts and delays may be present in this case.

Can QRadioLink be used headless (with no graphical user interface on the Raspberry Pi?
Yes, starting with version 0.8.2, QRadioLink can be used as a terminal application (possibly daemonized) without X11 or any screens. Remote operation in this case is possible either via commands sent through Mumble as private messages, or via the embedded telnet server, for which you will need a telnet client or similar application to connect with. No authentication or security features are implemented at the moment, so you should not expose the configured remote port to the Internet and instead use SSH to connect to the system and telnet from there. If you are not using local audio, you will need to also enable VOIP forwarding.

Is there a Windows version?
No. QRadioLink only works on Linux systems at the moment. However, it is not impossible to port to the Windows operating system if someone is interested to do the work, with only a few parts that are very Linux specific (including some calls into Linux kernel API). However, Windows users should keep in mind that QRadioLink is a very simple educational tool for hobbyist and learning users and cannot achieve or even wants to achieve what professional SDR applications can perform on Windows. To avoid disappointment, I am recommending some professional products with first grade suppport for the Windows OS: FlexRadio SmartSDR and SDRConsole.