- Notifications
You must be signed in to change notification settings - Fork554
Software defined radio receiver powered by GNU Radio and Qt.
License
GPL-3.0, Apache-2.0 licenses found
Licenses found
gqrx-sdr/gqrx
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Gqrx is an open source software defined radio (SDR) receiver implemented usingGNU Radio and theQt GUI toolkit.Currently it works on Linux and Mac with hardware supported by gr-osmosdr,including Funcube Dongle, RTL-SDR, Airspy, HackRF, BladeRF, RFSpace, USRP andSoapySDR.
Gqrx can operate as an AM/FM/SSB receiver with audio output or as an FFT-onlyinstrument. There are also various hooks for interacting with externalapplications using network sockets.
Gqrx is distributed as a source code package and binaries for Linux and Mac.Many Linux distributions provide gqrx in their package repositories.Alternate Mac support is available throughMacPorts andHomebrew.Windows support is available throughradioconda.
It is strongly recommended to run thevolk_profile
utility beforerunning gqrx. This will detect and enable processor-specific optimisations andwill in many cases give a significant performance boost.
The first time you start gqrx it will open a device configuration dialog.Supported devices that are connected to the computer are discoveredautomatically and you can select any of them in the drop-down list.
If you don't see your device listed in the drop-down list it could be because:
- The driver has not been included in a binary distribution
- The udev rule has not been properly configured
- Linux kernel driver is blocking access to the device
You can test your device using device specific tools, such as rtl_test,airspy_rx, hackrf_transfer, qthid, etc.
Gqrx supports multiple configurations and sessions if you have several devicesor if you want to use the same device under different configurations. You canload a configuration from the GUI or using the-c
command line argument. Seegqrx --help
for a complete list of command line arguments.
Tutorials and howtos are being written and published on the websitehttps://gqrx.dk/
See the bug tracker on Github:https://github.com/gqrx-sdr/gqrx/issues
There is a Google group for discussing anything related to Gqrx:https://groups.google.com/g/gqrxThis includes getting help with installation and troubleshooting. Pleaseremember to provide detailed description of your problem, your setup, whatsteps you followed, etc.
Please stick around and help others with their problems. Otherwise, if onlydevelopers provide user support there will be no more time for furtherdevelopment.
The source code is hosted on Github:https://github.com/gqrx-sdr/gqrx
To compile gqrx from source you need the following dependencies:
- GNU Radio 3.8, 3.9, or 3.10 with the following components:
- gnuradio-runtime
- gnuradio-analog
- gnuradio-audio
- gnuradio-blocks
- gnuradio-digital
- gnuradio-fft
- gnuradio-filter
- gnuradio-network (GNU Radio 3.10 only)
- gnuradio-pmt
- The gr-iqbalance library (optional)
- Drivers for the hardware you want to have support for:
- UHD driver via gr-uhd
- FUNcube Dongle and FUNcube Dongle Pro+ driver fromhttps://github.com/dl1ksv/gr-funcube
- RTL-SDR driver fromhttps://gitea.osmocom.org/sdr/rtl-sdr
- HackRF driver fromhttps://github.com/mossmann/hackrf
- Airspy driver fromhttps://github.com/airspy/airspyone_host
- SoapySDR fromhttps://github.com/pothosware/SoapySDR
- RFSpace driver is built in
- gnuradio-osmosdr fromhttps://gitea.osmocom.org/sdr/gr-osmosdr
- pulseaudio or portaudio (Linux-only and optional)
- Qt 5 or Qt 6 with the following components:
- Core
- GUI
- Network
- Widgets
- Svg (runtime-only)
- cmake version >= 3.2.0
Gqrx can be compiled from within Qt Creator or in a terminal:
For command line builds:
$ git clone https://github.com/gqrx-sdr/gqrx.git gqrx.git$ cd gqrx.git$ mkdir build$ cd build$ cmake ..$ make
On some systems, the default cmake release builds are "over-optimized" andperform poorly. In that case try forcing -O2 using
export CXXFLAGS=-O2
before the cmake step.
For Qt Creator builds:
$ git clone https://github.com/gqrx-sdr/gqrx.git gqrx.git$ cd gqrx.git$ mkdir buildStart Qt CreatorOpen gqrx.git/CMakeLists.txt fileAt the dialog asking for build location, select gqrx.git/buildclick continueIf asked to choose cmake executable, do soclick continueclick the run cmake buttonclick doneoptionally, on the Projects page, under Build Steps/Make/Additional arguments,enter -j4 (replacing 4 with the number of cores in your CPU).Use Qt Creator as before
Debug logging can be enabled by setting theQT_LOGGING_RULES
environmentvariable:
QT_LOGGING_RULES="*.debug=true;plotter.debug=false;qt.*.debug=false" gqrx
To turn on plotter debugging as well, use the following command:
QT_LOGGING_RULES="*.debug=true;qt.*.debug=false" gqrx
Gqrx is designed and written by Alexandru Csete OZ9AEC, and it is licensedunder the GNU General Public License.
Some of the source files were adapted from Cutesdr by Moe Weatley and thesecome with a Simplified BSD license.
The following people and organisations have contributed to gqrx:
- Alex Grinkov
- Alexander Fasching
- Andrea Merello
- Andrea Montefusco, IW0HDV
- Andy Sloane
- Anthony Willard
- Anton Blanchard
- AsciiWolf
- Bastian Bloessl
- Ben Reese
- Bob McGwier, N4HY
- Brandonn Etheve
- charlylima
- Chris Kuethe
- Christian Lindner, DL2VCL
- Clayton Smith, VE3IRR
- Dallas Epperson
- Daniil Cherednik
- Darin Franklin
- Davide Gerhard
- Dominic Chen
- Doron Behar
- Doug Hammond
- Edouard Lafargue
- Elias Önal
- Federico Fuga
- Frank Brickle, AB2KT
- Frank Werner-Krippendorf, HB9FXQ
- Ganael Laplanche
- Gisle Vanem
- Göran Weinholt, SA6CJK
- Grigory Shipunov
- Gwenhael Goavec-Merou
- Herman Semenov
- James Yuzawa
- Jaroslav Škarvada
- Jeff Long
- Jiawei Chen
- Jiří Pinkava
- Joachim Schueth, DL2KCD
- Jon Bergli Heier
- Josh Blum
- Kate Adams
- Kenji Rikitake, JJ1BDX
- Kitware Inc.
- Konrad Beckmann
- Luna Gräfje
- luzpaz
- Marco Savelli
- Markus Kolb
- Michael Dickens
- Michael Lass
- Michael Tatarinov
- Moe Weatley
- Nadeem Hasan
- Nate Temple
- Nick Robinson, KE5YWP
- Nokia
- Oliver Grossmann, DH2WQ
- Pavel Milanes, CO7WT
- Pavel Stano
- Phil Vachon
- Radoslav Gerganov
- Rob Frohne
- Ron Economos, W6RZ
- Ruslan Migirov
- Russell Dwarshuis, KB8U
- Ryan Volz
- Shuyuan Liu
- Stefano Leucci
- Sultan Qasim Khan
- Sylvain Munaut
- Tarmo Tanilsoo
- Tomasz Lemiech
- Timothy Reaves
- Valentin Ochs
- Vesa Solonen
- Vincent Pelletier
- Vladisslav P
- Will Scales
- Wolfgang Fritz, DK7OB
- Youssef Touil
- Zero_Chaos
Some of the icons are from:
- The GNOME icon theme CC-SA 3.0 by GNOME icon artists
- Tango icon theme, Public Domain by The people from the Tango! project
- Mint-X icon theme, GPL by Clement Lefebvre
Also thanks to Volker Schroer and Alexey Bazhin for bringing Funcube DonglePro+ support to GNU Radio and Gqrx.
Let me know if somebody is missing from the list.
Alex OZ9AEC
About
Software defined radio receiver powered by GNU Radio and Qt.