Gqrx / C++ update June 4, 2011: After establishing the basic framework for a GNU Radio receiver written in C++ it was time to start working on the GUI framework. As you may recall the GUI will be written in Qt and I am hoping that it will simplify porting the application to Mac OS X.
gnuradio
GQRX C++ Edition
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.
Simple APT decoder prototype
I have wanted to implement a simple APT decoder for the NOAA weather satellites in GNU Radio for quite some time now, in particular since the USRP equipped with a TVRX or WBX daughterboard and a GNU Radio FM receiver can be an extremely good receiver for this purpose. Today I have spent some time looking at the details of decoding APT and actually ended up with a working prototype implemented using the GNU Radio Companion.
Funcube Dongle smoke testing
As I tweeted last Friday, I managed to get a Funcube Dongle this time! The dongles were packaged over the weekend and shipped Monday this week. I could pick up mine at the local post office earlier today. Initial smoke testing using Linux and GNU Radio has been very encouraging for further experiments.
Test driving Quisk SDR
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.
GQRX updates
I have had some time to hack on the GQRX receiver – my experimental AM/FM/SSB receiver implemented in Python (GNU Radio) and qith Qt GUI. Most notably, I have implemented audio recording, playback and squelch.
Qt GUI working on Mac OS X
Thanks to a tip from @blackthorne I have the gr-qtgui component of GNU Radio working on Mac OS X Snow Leopard as well. As reported earlier, previous installations worked well except the Qt GUI part which gave errors like the one reported in my email.
HO-68 / XW-1 linear transponder with GNU Radio, USRP and RFX400
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.
GQRX receiving the HO-68 satellite
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.
A patch to fix audio_alsa_sink[hw:0,0]: snd_pcm_hw_params failed
Last night, while I was preparing for the AMSAT-OZ satellite weekend, I noticed that my gqrx receiver didn’t work very well on my laptops. Every time I tried to change operating mode the receiver stopped with a runtime error:
audio_alsa_sink[hw:0,0]: snd_pcm_hw_params failed: File descriptor in bad state
terminate called after throwing an instance of 'std::runtime_error'
what(): check topology failed on audio_alsa_sink(1) using ninputs=1, noutputs=0
This happened on both my Acer and my MacBook Pro; both running the lates git of GNU Radio v3.3.1git-96-g1fa9a8ea. This was bad news because I was hoping to show off my new software receiver with Qt GUI during the weekend. Fortunately, there is an easy workaround that eliminates the problem.