Here is a project I have been working on for some time now -- a DRM (DDigital Radio), and FM (Stereo) transmitter "inspired" by HD Radio. Using JACK, you can send both standard analog and digital radio with the BladeRF. The digital decodes in Dream, and the FM works perfectly on every receiver I have tested. Instructions on how to use after the screenshots.
Download & Use
To run this flowgraph, you will need to build gr-drm (Stable branch), and be using GNURadio 3.7 or above. I have tested this on Ubuntu 14, and Arch Linux, and it runs with no issue on my Intel i7 4770k.
[UPDATE 4/13] The latest version of the flowgraph is available right here. (GRC)
- Compile gr-drm and ensure it is working by running the flowgraphs as explained in its readme.
- Be sure your config.conf has the following in it:
Code: Select all
[audio] audio_module = jack
- Open a JACK based GUI like qjackctl,
- For FM, I use an external FM processor called "Stereo Tool". This generates an MPX signal. You do not have to use this, and if you will not, set the FM Audio source to your preferred sample-rate, and adjust the rational resampler accordingly. (Graph runs at 288sps).
- Now run the IBOC.grc. In JACK, you should see three inputs: DRM-L, DRM-R, and FM. Connect your music players to it. (For convention, DRM-R, and FM should have the same source; though they don't have to).
Here's a screenshot of the FFT sink showing the IBOC signals. Digital A and B on the right and left, and standard FM in the middle.
...and here is a screenshot from my Windows PC running SDR#. (This is a WAV capture)
I am very new to GNURadio, so if there is room to make this even more efficient--please let me know.