Binaural CW Receiver with GNU Radio and USRP

Today I felt like doing an experiment that is not quite on my TODO list – a binaural CW receiver. A binaural CW receiver is a receiver that gives a spatial feeling while you are tuning. As I understand it, you have to use stereo where the signals move from one side to the other as you tune and are in the middle when you are tuned to the frequency.

I have never looked at the topic before today so I have really no idea what’s the right way to implement this, but I figured that the easiest way to achieve this using my existing GNU Radio receiver is to separate the left and right channels using a low pass and a high pass filter respectively and let them overlap at the centre. Here is a short demo of the result:

Obviously, there are many parameters to tune, in particular the amount of overlap and the sharpness of the filters and I didn’t spend much time trying different combinations. I just let them overlap 100 Hz around the centre and make the transition width 400 Hz.

You can get the GRC file here.