The OS running on my Raspberry PI 2 is Arch Linux. It was also successfully
tested on Raspbian Jessie, and compiled and ran without problems.
The software does not use qwt and can be compiled using either Qt5 or Qt4.
The sources of the dab-rpi contain a subdirectory with sources for an extremely simple client for handling the sound output (the client is available as an executable in the Windows distribution.
The DAB software on the Raspberry PI 2 is functionally equivalent to the DAB software for Linux and Windows. It is optimized to use the 4 computing cores and has - as stated earlier - a smaller GUI. It does support the same set of devices.
The precompiled Windows programs contain an executable using the sdr-j-dab-rpi sources and configured for use with SDRplay, AIRSPY, DABSticks and the extIO option. The Linux version can be configured for SDRplay, AIRspy, DABsticks, and UHD Ettus research (the last one not tested by me).
The 7.1 version of the smallband sw-receiver
underwent - again - a major restructuring.
For use of the software under Windows, handling of Winrad compatible dll's is still limited to those devices with an extIO dll that provides data using a regular soundcard.
Direct support for the Elektor card and for the pmSDR under Windows disappeared, since using the extIO-XXX dl for these devices is an excellent alternative.
The SDRplay and DABsticks are supported directly, both for Linux and Windows, the Elad-s1 is supported under Linux. Under Linux the direct support for the Elektor card and the pmSDR is still available.
The source tree of the sw receiver contains components to setup a (very simple) SDRplay mini-server for use with a "remote" handler in the sw-receiver. The mini server runs on any Linux system (I have it running on the Raspberry PI 2 and an old laptop with Ubuntu 14.04), and allows me to listen to SW and experiment with decoders while sitting in the "lazy chair".
As before, for configuration purposes (the ".ini" file has to be told where to find the plugins for the input handling and for the decoders), a small configuration utility is included. This utility will set the paths for the different plugins in the ".ini" file. (When starting the program from within the "windows-bin-sw" directory (for Windows) the plugins will be found directly.)
New is an experimental DRM decoder, a decoder for DRM transmissions (currently audio only). Its "version number" (0.1) shows that it is in an early stage of development. The figure below shows the reception of a british DRM program using a pmSDR device through an extIO-PMSDR.dll and an EMU 202 external soundcard under Windows.
The sw-receiver is cross-compiled for 32 bits and runs in 32 bits and
64 bits Windows and under Linux.
While Windows users can use the DRM decoder directly, Linux users have to do some extra work in creating an adapted faad library to get the decoder running (but of course, the software can be installed without DRM decoder).
The current version of the FM software underwent only few minor changes,
the display showing the spectrum of the decoded signal is left out to save
some space on the screen.
The 0.99 version of the FM software is - for Windows - cross-compiled for 32 bits and is equipped with improved - though still experimental - support for devices for which an extIOXXX.dll exists (We do require a reasonable inputrate, i.e. 192000 is the absolute minimum). The picture below shows a band of 1.536 Mhz, using the the extIO_SDRplay.dll plugin with an SDRplay device with a samplerate of 2M.
extIO-XXX dll's under Windows were tested for the SDRplay and the DABstick
as "fast" devices,
and pmSDR as device with a soundcard as AD converter.
For Windows there is - next to extIO-XXX dll support, "hard-wired" support for the SDRplay, the AIRSPY, DABsticks and a filereader.
For Linux "hard-wired" support can be configured for any combination of the AIRSPY, the SDRplay and DABstick. Support for the pmSDR and filereading is standard "hard-wired" in the Linux version.
The Windows distribution contains - as was the case in the previous release - a 32 bits fm receiver and a so-called "mini". The mini version now has a hard-wired connection with a device, i.e. a close coupling between device and program. For Linux one can configure support for one of AIRSPY, SDRplay or DABstick. For windows there are just 3 precompiled versions, one for each of the supported devices. The device can be recognized by the name of the mini.
For building the fm receiver under Linux
a ".pro" file
is available, configurable for the selected devices.
For building the fm-mini the "pro" file is easy configurable for the selected device. A CMakeLists.txt file is available, configuring requires some editing.
The spectrumwidth can be selected - depending on the selected device -
within the small control window for the selected device.
Automatic stepping through a user-defined range of frequencies,
with a user-defined speed and stepsize is also possible.
The spectrum width for DABsticks is limited to 3 MHz, Airspy provides you with either 2.5 or 10 Mhz wide spectra.
The manuals can be downloaded here,
dab receiver, the
and one for the
It is assumed that the handling of the spectrumviewer can be done without an additional manual and there is no separate manual for the DAB software on the Raspberry PI 2. The FM manual is still the 0.98 version, observable differences between 0.98 and 0.99 are small.
An informal description of the synchronization in the DRM decoder is given in this description, the document is still a draft.
The executables for Windows are packed as always in a
"zip" file. There are two files, one is
for dab, a
zipped folder for the DAB program, the FM program and the spectrumviewer,
together some dll's,
and the other one is for
the sw-receiver together with the
plugins for input and decoders.
The zip files contain the executables and many of the required basic dll's. For device specific software, such as the SDRPlay one has to install software libraries from the supplier (for the SDRPlay that is www.sdrplay.com, for the AIRSPY it is. https://github.com/airspy/host/releases . Note that for execution, basic dll's for MS support, such as the msvcr100.dll are also required!!. Furthermore, for running software with a particular extIOXXX.dll, one should obtain that extIOXXX.dll and install the extIOXXX.dll in the windows-bin-xx folder.
The source for each of the programs is available from github.
Download is "git clone https://github.com/JvanKatwijk/XXX"
where XXX is any of
The README file for the "sdr-j-dab" contains information on how to build. The software can be build using Qt4 and Qt5, Ubuntu 14.04 does not seem to support the combination Qt5/qwt, Qt4/qwt can be used.
The manuals contain a list of the names of the required libraries. The manual for DAB and the manual for swreceiver contain a validated check for the availability of the required libraries used in Fedora 21 and Ubuntu 15.04.
For device specific libraries, i.e. for the SDRplay, the AIRSPY,
and for the Elad-s1 one has to install software available from
the supplier of the device.
For the SDRplay one should load software from www.SDRplay.com, there are simple install scripts for Windows, Linux and Raspberry PI 2. Note that for both Windows and Linux the most recent API (i.e. version 1.7) should be installed.
For the AIRSPY a dll for windows and sources for the library under Linux can be downloaded from https://github.com/airspy/host/releases . Be aware of the required patches that are mentioned and should be applied on Ubuntu, Arch Linux on the Raspberry PI 2, and probably others.
For DABsticks one has to install the osmocom library, available from www.osmocom.org, note however that many Linux distributions provide a package for these dongles.
For the Elad-s1, the library software is available from ecom.eladit.com.
The software is developed as hobby project and is available under a GPL,
and as the license state:
SDR-J 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.
I am grateful to SDRplay ltd for providing me the possibility to
use the SDRplay and to Benjamin Vernoux for providing me
the possibility to use the AIRSPY, both wonderful devices.
Suggestions and contributions (material and immaterial) are welcome.
Pijnacker, november 2015
Jan van Katwijk
Lazy Chair Computing