Skip to content

AlbrechtL/welle.io

Repository files navigation

This repository contains the implementation of a SDR DAB/DAB+ receiver.
Please see the project website https://www.welle.io for a user oriented documentation.

welle.io is fork from dab-rpi and sdr-j-dab which is now qt-dab https://github.com/JvanKatwijk/qt-dab.

Table of contents

Usage

The command line parameter are:

Parameter Description
h Show help
v Show version
D Input device. Possible is: auto (default), airspy, rtl_tcp, rtl_sdr, rawfile, soapysdr
M DAB mode. Possible is: 1,2,3 or 4, Default: 1
I rtl_tcp server IP address. Only valid for input rtl_tcp
P rtl_tcp server IP port. Only valid for input rtl_tcp
F I/Q RAW file. Only valid for input rawfile.
B I/Q RAW format. Possible is: u8 (unsigned int 8 bit, qt-dab RAW files), s16le (signed int 16 bit little endian, qt-dab SDR files), default: u8. Only valid for input rawfile.

Example usage:

# welle.io -D rtl_tcp -I 192.168.1.1 -P 1000
# welle.io -D rawfile -F test.sdr -B s16le

Supported Hardware

The following SDR devices are supported

Building

General Information

The following libraries and their development files are needed:

  • QT 5.7 (don't use QT 5.8 because of this bug)
  • FFTW3f
  • libfaad
  • librtlsdr
  • libusb

Ubuntu Linux 16.04 LTS

This sections shows how to compile welle.io on Ubuntu 16.04 LTS.

  1. Install QT 5.7 including the QT Charts module by using the the "Qt Online Installer for Linux" https://www.qt.io/download-open-source/

  2. Install the following packages

# sudo apt install libfaad-dev libfftw3-dev librtlsdr-dev libusb-1.0-0-dev mesa-common-dev libglu1-mesa-dev libpulse-dev
  1. (optional) Compile and install the airspy library. For details please see https://github.com/airspy/host/#how-to-build-the-host-software-on-linux.
    If you don't install the airspy library you have to disable the airspy for the welle.io build. Open welle.io.pro and outcomment the following line.
#CONFIG += airspy
  1. Clone welle.io
# git clone https://github.com/AlbrechtL/welle.io.git
  1. Start QT Creator and open the project file "welle.io.pro" inside the folder "welle.io".
  2. Build welle.io
  3. Run welle.io and enjoy it

Windows 10

A compiled version can be found at https://github.com/AlbrechtL/welle.io/releases

This sections shows how to compile welle.io on Windows 10. Windows 7 should also be possible but is not tested.

  1. Install QT 5.7 including the QT Charts and mingw modules by using the the "Qt Online Installer for Windows" https://www.qt.io/download-open-source/
  2. Clone welle.io https://github.com/AlbrechtL/welle.io.git e.g. by using TortoiseGit.
  3. Clone the welle.io Windows libraries https://github.com/AlbrechtL/welle.io-win-libs.git.
  4. Start QT Creator and open the project file "welle.io.pro" inside the folder "welle.io".
  5. Build welle.io
  6. Run welle.io and enjoy it

macOS

To build for macOS, you need to install the dependencies with macports first, assuming you have macports installed:

# sudo port install fftw-3-single faad2 rtl-sdr libusb
  1. Install Qt 5.7 with Qt Creator directly from Qt website, not through macports.
  2. Clone welle.io
# git clone https://github.com/AlbrechtL/welle.io.git
  1. Open welle.io.pro with QT Creator.
  2. Make sure in Qt Creator, "Projects, Build&Run, Run" that the checkbox "Add build library path to DYLD..." is off.
  3. Build and run.

Raspberry Pi 2 and 3

To build and run welle.io on a Raspberry Pi 2 and 3 with GPU acceleration, please visit this repository: https://github.com/AlbrechtL/dab-rpi_raspbian_image (outdated)

Limitations

  • CMake is not maintained (not working)

Development

You can join the welle.io development. Please visit the wiki to find more information.