Today, I started to code my new SDR diversity recorder and receiver. This is something I have wanted for a long time.
So, last December, I bemoaned the fact that there was no dual channel baseband recorder available. My goal was to be able to record an hour of two-channel I/Q data, so I could experiment with diversity reception at a later time. This would be especially useful for Medium Wave DX.
You can see my design above. First, I need a radio driver (purple) to produce two synchronized channels using my wideband loop array antenna. This will be followed by my input processor (blue) which does three things.
First, it provides a buffered data queue for later processing. Second, you see a File Recorder (green) which will save the two channels of baseband to disk. And third, my Diversity Controller (light blue) will let me combine the channels to manipulate amplitude and phase.
A separate File Player will let me play back the to channels previously recorded, instead of the Radio Driver.
SDR Diversity Recorder is a Front End
Finally, my SDR core receiver will use DSP to filter and demodulate the signals. It will operate as a single channel receiver, with the diversity achieved in the front end.
How hard will this be to achieve? My main challenge will be writing a Radio Driver for each of my Afedri, RSPduo and Anan receivers. I have not done this before. Fortunately, there is good API documentation, especially for the RSPduo.
The res of my new SDR diversity recorder will work with any of the receivers, as long as I standardize my approaches and interfaces.
I had so much fun writing my Morse Decoder, this project seems like a natural next step.