Digital Radio Monodial (DRM) radio is a type of digital shortwave radio signal that is used by international shortwave radio broadcasters. It provides superior audio quality compared to AM signals by using digital audio encoding. With an upconverter, good antenna, and decoding software the RTL-SDR software defined radio can receive and decode DRM signals.
This tutorial is also applicable to other software defined radios that can receive HF, such as the softrock and funcube dongle.
Examples of DRM Decoding
YouTube user Superphish shows DRM reception with his Ham-it-up upconverter, and rtl-sdr.
YouTube user vu2ufg shows another example of DRM reception with the rtl-sdr.
Tutorial: How to Receive and Decode DRM Signals
To receive DRM with rtl-sdr, you will need four things
- An rtl-sdr dongle working with SDRSharp.
- An HF upconverter such as the ham-it-up.
- The DREAM DRM decoding software with AAC decoder.
- Virtual Audio Cable or VB-Cable
We will assume you have a rtl-sdr dongle with HF upconverter, and have set it up with SDRSharp and an audio piping utility such as virtual audio cable or VB-Cable which allows the audio to be passed from SDRSharp to the decoding software. If you have not set these up, check out the Buy RTL-SDR and Quickstart pages, and head to the virtual audio cable download page (trial), or the VB-Cable download page (free).
You will most likely require the paid version of virtual audio cable, as the trial version injects someone speaking “trial version” into the audio every now and then, which may disrupt decoding. However digital signals are quite tolerant to interference like this, and decoding may still work even with the trial version. The free VB-Cable can also be used as an alternative to virtual audio cable.
The sampling rate of your audio piping method must be set to 48000 samples/sec. To set this in Windows, right click your device in the Windows sound recording tab, go to properties and under the advanced tab, set the sample rate to 48000Hz. Do the same to the same device under the Playback tab as well.
Now, head to the DREAM download page, download DREAM and extract the zip file into a folder. DREAM is a free opensource DRM decoder.
Due to software licence reasons the required audio decoder can not be shipped with the DREAM binary file. You can follow the instructions on the download page to compile your own faad2_drm.dll decoder. As not everyone has compiling experience, a precompiled faad2_drm.dll download for windows can be found at this megaupload link. Note that using this file in some countries may not be legal due to patent laws. Place the faad2_drm.dll file into your DREAM folder.
Now you can open SDRSharp, set virtual audio cable as the output audio device, and then tune to a DRM signal. DRM signals use upper side band (USB), and have a bandwidth of 10KHz, so apply these settings to SDRSharp as well. AGC can be left on, but it may need to be experimented with in order to get the best decoding performance. You should also experiment with the filter order. I have usually found a large filter order of 100+ to work well.
A DRM signal looks like this (left) on the waterfall, placed next to a normal shortwave AM signal (right).
Now, open DREAM and then go to Settings->Sound Card->Signal Input->Device and set virtual audio cable as the input device. Also, ensure that Settings->Sound Card->Signal Input->Sample Rate is set to 48000Hz.
Try to get the green “Level [dB]” bar in DREAM to be near the center by adjusting the volume settings in SDRSharp. If everything is set up correctly, you should see three green bars underneath the volume meter and start seeing information about the DRM radio station you are tuned to in the window, and also begin to hear some audio.
- To receive DRM signals you will need a good HF antenna, placed up high. A simple long wire strung across your attic may work well. Look up “random wire antenna”. Also a magnetic loop antenna may be a good choice.
- RTL-SDR tends to place imaged broadcast AM signals into some DRM signals. This can cause decoding to completely fail. Some people suggest trying a filter.
- If you hear no audio when decoding, check that you have placed faad2_drm.dll into the DREAM folder correctly.
- DRM is a digital signal, so it is either working or it is not working at all.