Support for RTL2832U-based DVB-T devices is available via the rtl-sdr and gr-osmosdr libraries. This also provides support for Ettus Research USRP’s if the gr-uhd package has been installed prior to compiling gr-osmosdr. A complete build from scratch that would support all hardware devices would thus include the following steps:
Please visit the new Gqrx website. The information on this page is no longer updated!
Gqrx is a software defined radio receiver for Funcube Dongle (FCD), RTL2832U-based DVB-T devices (RTL-SDR), Universal Software Radio Peripherals (USRP) and Osmo SDR devices. It is powered by GNU Radio and the Qt GUI toolkit.
About a week ago I resumed working on GQRX – an experimental AM/FM/SSB software receiver powered by GNU Radio and using Qt for user interface. This time, however, I am not going to continue working on the Python receiver but create a new receiver from scratch written in C++. It will support Funcube Dongle and USRP/UHD devices.
The Universal Hardware Driver (UHD) for the USRP contains a cool example program that can draw spectrum scope using simple ASCII art. This video shows reception of 8 MHz wide spectrum slices in the broadcast FM band 88 – 108 MHz.
Before getting my hands all dirty with adding UHD driver to Quisk, I decided to take it for a test drive using some pre-recorded samples. I have used a 250 ksps recording of the HO-68 / XW-1 linear transponder downlink that I have recorded on November 9, 2010 using the USRP and the RFX400 daughterboard.
I woke up at 4 AM last night and couldn’t fall into sleep right away, so I got up and started reading emails. To my great surprise there was an email from Matt Ettus announcing the availability of the USRP E100 in mid December. The E100 here is according to the new naming convention used by Ettus: E=embedded, 1=first generation, 00=revision number – or something like that. So it is indeed the Embedded USRP I wrote about in July, which back then was based on some info I picked up on another mailing list and a press release.
Just a quick note that I have successfully installed the Universal Hardware Driver (UHD) for the USRP. The UHD is the next generation hardware driver for the USRP family hardware from Ettus Research and it provides better hardware abstraction and portability as the current drivers.
I already tried to make the switch few weeks ago without success – well, it built fine but without USRP1 support. Now I have realized that it was because I was missing the libusb-1.0 libraries (my current drivers use the old libusb-0.1). After installing the libusb-1.0 devpack it compiled fine including the USRP1 support. Both uhd_find_devices and uhd_usrp_probe detected my USRP1 and the daughterboards that I have currently mounted. I did not have much time to play around with it but it was fun to try the ASCII art spectrum analyzer example that is included with the UHD.
Before you laugh think about how useful this can be over an SSH connection to a remote site 🙂
Switching to GNU Radio next branch was also painless once UHD was installed and in the path. Again, no test runs but GRC comes up with the UHD block. Now on to porting my applications adding UHD support…
Video recording of the HO-68 / XW-1 Chinese amateur radio satellite in linear transponder mode on November 9, 2010. Recorded using the Universal Software Radio Peripheral (USRP) with RFX400 daughterboard and GNU Radio software receiver.
The gqrx software receiver implemented with GNU Radio and Qt GUI is now taking shape and becoming useful. Yesterday evening I went to OZ7SAT and had the USRP+WBX connected to a real antenna tracking amateur radio satellites. The video below shows reception of the evening pass of HO-68, aka. XW-1.
I have been a bit quiet over the last few weeks but don’t you worry, it is only because I have been busy and I can now present you what I have been tinkering with during the last few weeks: An AM, FM, SSB and CW receiver implemented using GNU Radio (python) and Qt graphical user interface.