Avere una radio online mi ha sempre affascinato sin da quando sono apparsi i primi ricevitori WEBSDR, anche prima che uscissero questi nuovi prodigi della tecnologia moderna mi divertivo a collegarmi con il ricevitore installato nella sede RAI di Roma, via internet! Ero giovane studente universitario ed ancora le connessioni domestiche erano cosa assai rara, i più fortunati potevano permettersi il 56k, non proprio indicato per questo genere di attività. Nei momenti di pausa allora ne approfittavo per recarmi in aula computer, li si che si andava veloci con l’ISDN!!! hi, tiravo fuori le mie cuffie del walkman e iniziavo l’attività di radioascolto. Era un ricevitore con un’interfaccia abbastanza misera e grezza, permetteva di collegarsi e governare le frequenze uno alla volta. Così quei pochi minuti che mi concedevo di pausa li passavo quasi totalmente ad aspettare (ed ascoltare) il mio turno che, una volta arrivato, vi assicuro dava enormi soddisfazioni. Oggi (sono passati 20 anni) tutto è cambiato, si riescono a fare cose davvero straordinarie ed alla portata di tutti, anche economicamente.

Il progetto che ho sviluppato per questo sito è la realizzazione di un ricevitore radio SDR messo in streaming grazie al Software del geniale András Retzler sviluppatore di OpenWebRX. Innanzitutto mi sono procurato una raspberry Pi3 B+, un dongle RTL-SDR.COM Blog V3 e del materiale di recupero: un case dell’alimentatore di un vecchio PC compreso di ventola ed un paio di alimentatori (uno per la raspberry ed uno per la ventola). Ho dovuto installare due alimentatori perché la raspberry ha un’uscita a 5V mentre la ventola del vecchio alimentatore è da 12V. L’ho voluta riutilizzare perché, a mio parere, più performante di una ventolina da 5V che avrebbe raffreddato a malapena la raspberry (il dongle scalda tanto).

Mi sono procurato un pezzo di plastica dura da un vecchio alimentatore di un portatile e ne ho ricavato la basetta per poter inserire la dongle USB.

 

L’alimentazione

 

Vista dall’interno

 

Ed eccola qua!

 

 

INIZIAMO!

Sistemato il tutto ho iniziato con agganciarlo alla rete wifi ed ho eseguito il processo di installazione della chiavetta prima e di OpenWebRX poi.

 

Iniziamo dalla chiavetta.

Si trova facilmente su internet, io l’ho presa da Amazon, come la raspberry, arrivate insieme il giorno dopo a casa.

Il primo pensiero è stato come far funzionare questo dongle sulle frequenze HF, difatti la RTL-SDR Blog V3 copre da 24 Mhz a 1800 Mhz.

Avendola provata con vari software come ad esempi Gqrx, per poterla convertire in HF bisogna attivare il Q-Branch. Dopo svariate ricerche sono riuscito a trovare le dipendenze giuste per attivare le frequenze HF.

Quindi bando alle ciance ed iniziamo:

Sulla raspberry avviate il terminale e digitate i comandi sotto riportati:

sudo apt-get update
sudo apt-get upgrade

lasciamo aggiornare. Ci possono volere alcuni minuti.

Per il tipo di rtl-sdr che abbiamo utilizzato bisognerà attivare il campionamento diretto con OpenWebRX, il Q-Branch appunto.

Questi comandi di installazione sono dedicati alla rtl-sdr dongle.

Quindi eseguiamo i seguenti comandi:

git clone https://github.com/keenerd/rtl-sdr
cd rtl-sdr/ && mkdir build && cd build
cmake ../ -DINSTALL_UDEV_RULES=ON
make && sudo make install && sudo ldconfig

 ATTENZIONE, RIPETO SOLO PER LA CHIAVETTA RTL-SDR Blog V3

 

Per altri tipi di chiavette potete provare queste:

git clone git://git.osmocom.org/rtl-sdr.git
cd rtl-sdr/
mkdir build
cd build
cmake ../ -DINSTALL_UDEV_RULES=ON
make
sudo make install
sudo ldconfig
cd ../..

 

possiamo provare se il dongle è stato correttamente installato lanciando il seguente commando:

sudo rtl_test -t

Dopo aver installato la chiavetta andremo ad installare il software di gestione OpenWebRX in questo modo:

Scarichiamo OpenWebRX e libcsdr

git clone https://github.com/simonyiszk/openwebrx.git
git clone https://github.com/simonyiszk/csdr.git

Ora compiliamo libcsdr

cd csdr make sudo make install

Se necessario cambiamo il file di configurazione con il seguente comando

nano ../openwebrx/config_webrx.py

Questo file può essere modificato  anche successivamente aprendo la cartella /pi/openwebrx   e modificare il file config_webrx.py

Ora nel file di configurazione andremo ad aggiungere lo switch -D             ATTENZIONE, RIPETO SOLO PER LA CHIAVETTA RTL-SDR Blog V3

A seconda della banda che vogliamo ricevere dovremo settare -D come segue:

D1 significa che il dongle è impostato per il campionamento diretto dall’ingresso 1 / I.
D2 significa che il dongle è impostato per il campionamento diretto dall’ingresso 2 / Q. (E’ il nostro uomo)
D3 significa che il dongle è impostato sul campionamento diretto no-mod.

Andremo a modificare quindi la seguente riga in  config_webrx.py:

start_rtl_command="rtl_sdr -D2 -s {samp_rate} -f {center_freq} -p {ppm} ...

Ora lanciamo il programma:

cd ../openwebrx

./openwebrx.py

Se lanciando cd ../openwebrx vi restituisce un messaggio di errore portatevi sulla cartella OpenWebRX, tasto destro e cliccare su apri da terminale. A questo punto il programma dovrebbe partire.

 

Per poter utilizzare il client (il “programma” vero e proprio) aprite su un browser l’indirizzo di rete della vostra raspberry tipo http://192.168.1.__:8073 e date invio.

Ho notato che se si entra in modalità sicura utilizzando il protocollo https, OpenWebRX non funziona.

Bisogna accedere alla pagina con il classico http anche se tra poco verrà tolto di mezzo.

Per allora abbiamo già pronta la soluzione fornita dal buon Benjamin, HB3YIW:

Imposta Nginx per HTTPS sullo stesso host, quindi utilizzalo come proxy inverso.

Esempio di configurazione di Nginx:

location /openwebrx/ {
    proxy_pass http://127.0.0.1:8073/;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header        Host            $host;
    proxy_set_header        X-Real-IP       $remote_addr;
    proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header        X-Forwarded-Proto $scheme;
}

In htdocs/openwebrx.jsopenwebrx.py, sostituire  ws://con wss://.

In config_webrx.py impostare:

server_hostname="nginx-host.example.com/openwebrx/"

Disabilitare l’accesso alla porta 8073  iptables in modo che i client possano connettersi solo tramite HTTPS.

Questo è tutto.

Ovviamente per un buon funzionamento la maggior parte del lavoro la fa un componente che non ho ancora menzionato… L’ANTENNA!!! NOTA DOLENTE…

Ho installato una SIGMA SE 1500 ma non ha avuto l’effetto sperato, proverò altre soluzioni, visitate ogni tanto la pagina, prima o poi avrete piacevoli aggiornamenti…

Spero di avervi stuzzicato abbastanza da iniziare anche Voi  alla realizzazione di questo progetto, a mio parere molto interessante…

e di condividere se vorrete le vostre esperienze, e spero anche modifiche ed aggiustamenti in un progetto sicuramente migliorabile.

Potete provare il funzionamento QUI

Potete acquistare la raspberry QUI

 

0 commenti

Lascia un Commento

Vuoi partecipare alla discussione?
Fornisci il tuo contributo!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *