Long time ago, in the 50-ies and early 60-ies of the previous century, building your own radio was fun. One started with a crystal receiver, experimenting with the simplest one, one with a razorblade and a a piece of a pencilpoint. With a long wire connected as antenna, headphones coupled to the "detector", receiving something was a wonderful experience.
Then, adding a first tube, a second tube and in the end a full superhet for long waves, medium waves and a lot of shortwave bands was ready. And, of course as soon as a new issue of the favorite hobby magazine was out, the design changed, and most of the radio was rebuild. The glowing of the tubes, the soft noise and static when starting up the new design was a real pleasure. Happily enough there is still a lot of interest in historical radios.
Radio technique has gone a long way since! National broadcasts on medium waves are gone, apart from local, usually LPAM transmissions MW is basically empty. Even FM is considered old-fashioned and the (near) future is digital, digital TV, digital radio, digital telephones, etc etc. From time to time there are ads on radio and TV, telling you that it is time to switch from FM to DAB and A country like Norway shut down the FM stations in favour of DAB.
While the techniques for digital radio are interesting, there is no way that - using basic components as transistors or tubes and a handful of resistors, coils and capacitors - you can build your own radio. What you can do however, is now program your radio. After all, digital techniques ask for programming.
After getting retired, I picked up my soldering iron again, but soon decided that electronics now is not the electronics from 60 years ago. Since I have a background in software development, I read some articles on SDR and was immediately triggered to do some programming myself. Acquiring a so-called "Elektor" SDR device with analog output, and with a frequency range from (almost) 0 to 30 Mhz was a start. While control was over a USB connection, output was analog and was fed into the soundcard of the computer.
it was the start of a large number of programs. Decoders for AM and some amateur modes were quickly built and gave many hours of pleasure. The swreceiver, discussed in the section DRM receiver is essentially a descendant.
The next device was a pmSDR, a device with a range of up to 55 MHz, again with control using an USB connection and analog output to the soundcard. Using the 3-d overtone of the oscillator, receiving radio in the the FM band, and even amateurs on the 2 Meter amateur band, was possible, So next a first receiver with an FM decoder was developed. Nowadays, working with the elektor card or the pmSDR would be slightly more complex since later generations of laptops do not provide an input capable of handling 192000 audio samples per second.
The fun really started with the acquisition of a DAB stick, now a much larger range of frequencies and a much larger bandwidth could be received and both the control and the data was through USB.
Of course, one of the first projects to use the bandwidth was a spectrumviewer (a predecessor of the one shown below)
Next a very first version of a DAB decoder was built (picture left), which evolved to the current version (picture right). SDRplay donated kindly an SDRplay device, an excellent device with a range from a few KHz to 2 GHz and 12 bits samples, and having two devices made me redesign the software to allow easy interfacing to other devices.
Later on, some more SDR devices already had entered the house, and the Raspberry RPI 2 arrived. There is an obvious difference in computing power between an x64 PC and an RPI 2, so restructuring of the DAB software was required to have the DAB software run smoothly on the RPI 2. The cpu of the RPI has 4 cores and the load should be reasonably balanced over these 4 cores.
Further developments lead to Qt-DAB as it is now, and quite a number of derived programs. Basically from the start, questions came for making a command line version. This eventually lead to the dab-cmdline set of programs.
From DX-ers a request came for a version that could scan the band and report on the contents of the channels. Different scanners were developed, one with GUI, the other command line driven. The current version of Qt-DAB has itself an extensive scanning facility.
In the mean time attention was paid to DRM (Digital Radio Mondiale). While DAB is transmitted in the 170 .. 230 MHz band, DRM is transmitted in Medium and Shortwave (DRM+ is transmitted in the FM band).
DRM differs substantially from DAB - after all the bandwidth for a DAB transmission is 1.5 MHz, for most DRM transmissions 10 KHz - but the underlying technology, i.e. how do I get the bits back that are encoded in an analog radio signal looks superficially similar to that of DAB (For a variety of reasons, DRM decoding is significantly more complex than DAB decoding). Just to get an understanding of the system, a DRM decoder - and later a DRM+ decoder - was developed as well.
Where I live I receive - on a simple whip - 4 or 5 DAB ensembles but - using an in-house loop antenna - only a couple DRM transmissions during an hour of so. Since DRM is transmitted on shortwave, it was originally made part of my shortwave radio system. Being unsatisfied with the (DRM) result, a redesign and reimplementation was made which lead to the drm-receiver (the drm decoder is ported back to the swradio).
This site is mainly on my software for Digital Radio, in particular DAB and DRM, but also on some of my other software.
First, a section gives a short glimpse over Broadcasting in general, and introduces the various types of software receivers I am working on.
A next section discusses the most recent version of the FM software, a section discusses Qt-DAB, the extended DAB decoder, and a section discusses the DRM receiver and shortly the swreceiver.
Since I have written a number of plugins for the SDRuno environment, a section gives an overvieew on these plugins.
Long times ago, I wrote Algol 60 compiler, which, obviously does not relate in any way to SDR, but is described in a section labeled Other software. Finally, just to give an impression with the type of devices I am working with, there is a small section on My devices.
Feel free to contact me, the section Contact contains a form for that.
In most of my software existing dynamic libraries (Linux) and dll's (windows) are used, e.g. libraries for audio output, fft, handling "wav" files, Reed-Solomon correction, decoding AAC and xHE-AAC, converting samplerates, etc etc, all available under a GPL-V2 or V3. All rights are gratefully acknowledged, and my software is itself also made available under a GPL-V2 licence.
It is - obviously - nice if (some of) the software is useful,
there are no guarantees, however.
If the software does not fit your purpose,
it might just not be the software you are looking for,
read the license, that states (a.o):
the SDR-J software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
If, however, the software seems useful and you have suggestions for improving and/or extending it, feel free to contact me, suggestions are always welcome (although no garantees are given that they will be applied.)
The development of this - and other - SDR-J software is a hobby (see the "https://github.com/JvanKatwijk" repositories), a "spare time" project (being retired makes that there is some spare time). As with all hobby projects, support (such as suggestions for improvements, and additions, suggestions for modifications etc) and contributions (such as code improvements or extensions, providing me with a yet unsupported device, etc) are welcome.
I am grateful to SDRplay ltd for providing me the possibility to use different versions of the SDRplay RSP devices such that DAB and DRM software could be developed.
Further, to Robin Getz (Analog Devices) for making an Adalm Pluto available, a wonderful device to experiment with. Thanks to Benjamin Vernoux for making an AIRSPY device available, to Great Scott Gadgets for making an HACKRF device available, and to Jan Willem Michels for making an LimeSDR device available.
Pijnacker, March 2023
Jan van Katwijk
Lazy Chair Computing