Welle.io, il DAB con Linux

Come creare una radio DAB con Linux e una chiavetta SDR USB

Finestra principale di Welle-io

C'è una cosa che rimpiango degli anni 80: quei bellissimi sintonizzatori e sintoamplificatori che permettevano di ascoltare degnamente la FM. Oggetti belli, muscolosi, perfetti e performanti. Alcuni erano solo sintonizzatori e, quindi avevano bisogno di un amplificatore per essere ascoltabili, al contrario dei «sintoamplificatori» che si portavano dietro un po di tutto...

La FM continua a vivere ma, tra poco, si passerà alla modernità del DAB... E qui cominciano i problemi... ed il problema consiste nel fatto che non esistono i sintonizzatori ed i sintoamplificatori (economici) per il DAB e, se esistono, costano talmente tanto che uno evita di ascoltare la radio...

E per un radioamatore, questa rinuncia, è troppo!

DAB? Ecco che Linux ci aiuta!

Certamente, voi due o tre che state leggendo questa pagina avrete letto quell'altra paginetta dedicata al sistema Linux trasformato in una SDR (software defined radio) grazie a GNURadio e GQRX... o come ricevere Oscar-100 con il nostro sistema preferito... Oppure come realizzare una perfetta stazione multimediale usando Linux ed una moderna scheda sonora USB.

In quest'ultima pagina disponibile sul mio sito, ho anche accennato alla possibilità di ricevere il DAB mediante un apposito software: Welle-io.

Welle-io è un software che usa una comunissima chiavetta USB (io uso una chiavetta SDR nata per ricevere la TV ma che io ho dirottato ad altri usi) del costo di pochissimi euro per ricevere e decodificare le trasmissioni del DAB (Digital Audio Broadcast). Installare il software in una distribuzione derivata da Debian (io uso la consueta Q4OS) è davvero semplice:

$ sudo apt install welle.io

In pochissimi secondi il software è installato e il gestore dei pacchetti «APT» risolve anche eventuali dipendenze mancanti... Per lanciare il programma basta cliccare l'icona che si trova tra i programmi, nel gruppo «Multimedia». Il programma dispone di due comandi: welle-io, la versione grafica «a finestre» e welle-cli, che usa la «command line interface», cioè la linea di comando.

Lanciandolo da shell prompt si ottiene:

$ welle-cli 
welle-cli 2.4+ds
InputFactory:Input device:auto
Airspy: Open airspy
Airspy: airpsy_open () failed: AIRSPY_ERROR_NOT_FOUND(-5)
RTL_SDR: Open rtl-sdr
RTL_SDR: Found 1 devices. Uses the first working one
usb_claim_interface error -6
RTL_SDR:  Opening rtl-sdr failed
[INFO] [UHD] linux; GNU C++ version 12.2.0; Boost_107400; UHD_4.3.0.0+ds1-5
usb_claim_interface error -6
SoapySDR: Found device "audio 'UMC202HD 192k Input 1' "
SoapySDR: Found device "audio 'Monitor of UMC202HD 192k Line A' "
SoapySDR: Found device "audio 'UMC202HD 192k Input 2' "
SoapySDR: Found device "audio 'Monitor of Audio interno Stereo' "
SoapySDR: Found device "rtlsdr 'Generic RTL2832U OEM :: 00000001' "
OFDM-processor:restart
...
...

Mentre, in ambiente grafico desktop, si ottiene la finestra indicata all'inizio di questa pagina...

Tutto perfetto, quindi... Una sola nota aggiuntiva: lanciato la prima volta, esattamente come succede per la TV digitale, bisogna «sintonizzare» le varie stazioni che «trasmettono» in digitale sui canali della «vecchia» TV analogica VHF (ve la ricordate? Quella con le antenne più grandi rispetto alla UHF ammicco). Una volta fatta la sintonizzazione dei canali presenti (ci metterà qualche secondo per completare la scansione) sarà possibile ascoltare il DAB ed il DAB+ con Linux!!! E senza spendere un centesimo in più!

Bello, no?

E poi, possono esserci dei problemi...

Sono speaker in una radio locale che, da più di un anno, trasmette anche sul DAB per gran parte della Puglia: pertanto anche Radio Skylab è sul digitale... però, dopo un riassestamento dei canali, la stazione non era più sintonizzabile e, con lei tutte le stazioni sul canale «5B» (sì, perché con il DAB un solo canale con un'ampiezza di più o meno due MHz può portare in onda diversi stream digitali, corrispondenti, ciascuno ad una diversa emittente).

Welle-io ha un «analizzatore di spettro incorporato e, attivandolo, il canale era vuoto, senza alcuna «portante»... In questa situazione non restava che «risintonizzare» ma l'operazione non modificava nulla ed il canale 5B era sempre, irrimediabilmente, vuoto.

In questa situazione è necessario agire «in profondità»; ho verificato che il software scrive in una directory sua posta nella directory nascosta «.config» disponibile nella home utente; la dir contiene un solo file:

.config/welle.io/welle.io.conf

Ho chiuso welle, rimosso il file e rilanciato la sintonia.

Tutto ha funzionato!

A questo punto, non trovando il file, Welle-io lo ha ricreato salvandoci i risultati della nuova scansione e, questa volta la radio dove collaboro è stata correttamente identificata sul nuovo canale dove era stata attestata:

Lo spettrogramma del canale ottenuto da Welle-io

Oltre allo spettrogramma, disponibile abilitando da menu le funzioni «avanzate», il software mette a disposizione anche il visualizzatore dei «Null Symbols» che sarebbero i «picchi» dei flussi delle stazioni presenti sul canale:

Lo spettro dei flussi disponibili sul canale

Ovviamente si tratta di informazioni assolutamente indisponibili con altri sistemi di ricezione: e qui vale la pena sottolineare la superiorità del software libero rispetto alle tante (e costose) soluzioni commerciali.

Come sempre, con un po' di ingegno, si risolvono i tanti, piccoli problemi della nostra sfera digitale...

Uno sguardo alle frequenze

A completamento e per mio personale promemoria, ecco le frequenze della Radio DAB, che sono comprese nella cosiddetta «Banda III» lasciata libera dai canali TV con il passaggio al Digitale Terrestre.

Questa è la banda di frequenza principale utilizzata per la radio DAB in quasi tutta l'Europa. I canali sono suddivisi in blocchi (ad esempio, 5A, 5B, 5C, ecc., per un totale di 38 canali), ognuno con una propria frequenza specifica.

A differenza delle trasmissioni radio FM, in cui ogni stazione ha una singola frequenza, il DAB utilizza un sistema di blocchi o multiplex. Un multiplex è un insieme di servizi radio (come più stazioni) trasmessi su un singolo blocco di frequenze. Facendo i «conti della serva» si passa dai 20 MHz (da 88 a 108 MHz) della vecchia banda FM, ai quasi 65 MHz della Banda III... Ipotizzando quattro stazioni per slot, il DAB può permettersi di mandare in aria almeno 150 stazioni che possono essere diffuse localmente o a livello nazionale... Chiaramente, maggiore è il numero di stazioni per singolo slot, minore è la qualità dello stream audio trasmesso:

Frequenze e Canali Radio DAB - Banda III
CanaleFrequenza (MHz)
5A174.928
5B176.640
5C178.352
5D180.064
6A181.936
6B183.648
6C185.360
6D187.072
7A188.928
7B190.640
7C192.352
7D194.064
8A195.936
8B197.648
8C199.360
8D201.072
9A202.928
9B204.640
9C206.352
9D208.064
10A209.936
10B211.648
10C213.360
10D215.072
11A216.928
11B218.640
11C220.352
11D222.064
12A223.936
12B225.648
12C227.360
12D229.072
13A230.784
13B232.496
13C234.208
13D235.776
13E237.488
13F239.200
Valid XHTML 1.0 Transitional