RTL-SDR - Raspberry Pi

Server RTL SDR su Raspberry Pi

Il Raspberry Pi può essere configurato come server per ricevitore RTL SDR, sfruttando l’utility rtl_tcp inclusa nel pacchetto driver Osmocom rtl-sdr [1]. Il flusso dati ricevuto dal dongle USB RTL2832U, viene trasmesso con protocollo TCP attraverso la rete, sia essa Ethernet, Wi-Fi o anche Internet e ricevuto da un PC remoto che tramite i soliti software SDR ne decodificherà il contenuto.

Questa utility può tornare utile per diversi scopi:

  • monitorare lo spettro radio in una postazione lontana dal punto in cui è disponibile l’antenna, evitando lunghe calate di cavo coassiale con conseguente attenuazione del segnale utile;
  • monitorare lo spettro radio in una location remota;
  • utilizzare RTL SDR da un punto qualsiasi delle casa;
  • utilizzare RTL SDR anche quando si è fuori casa;
  • evitare di installare sul PC i driver RTL e alleggerirlo dal lavoro di gestione del tuner;
  • semplicemente sperimentare un nuovo utilizzo del Raspberry Pi.

Installazione

Vediamo le fasi che portano all’installazione di driver e utility rtl-sdr sull’ RPi:

Installare le librerie necessarie al funzionamento
sudo apt-get install libusb-1.0-0.dev
sudo apt-get install git
sudo apt-get install cmake
sudo apt-get install build-essential

Scaricare il codice sorgente di rtl-sdr dal repository GitHub
git clone git://git.osmocom.org/rtl-sdr.git
Oppure, se non si vuole usare git, scaricare attraverso un browser l’archivio .zip da GitHub [2] e copiarne il contenuto su RPi nella cartella rtl-sdr sulla home.

Compilare rtl-sdr
cd rtl-sdr/
mkdir build
cd build
cmake ../ -DINSTALL_UDEV_RULES=ON
make
sudo make install
sudo ldconfig

Creare una blacklist per evitare che la chiavetta RTL venga riconosciuta come ricevitore DVB-T e quindi caricato il suo driver standard
sudo nano /etc/modprobe.d/blacklist-rtl.conf

e nel file appena creato inserire le seguenti linee
blacklist dvb_usb_rtl28xxu
blacklist rtl2832
blacklist rtl2830

Spegnere RPi
sudo poweroff

Collegare il dongle RTL-SDR ad una delle porte USB

Accendere RPi

Controllare che la pennetta sia riconosciuta ed il driver attivo
lsusb
rtl_test -t

RTL-SDR - Installazione Raspberry Pi
RTL-SDR – Installazione Raspberry Pi

Avviare il server RTL
rtl_tcp -a indirizzoIP_RPi

RTL-SDR - TCP server
RTL-SDR – TCP server

Uso server RTL-SDR

Una volta avviato, il server rende disponibile, all’indirizzo IP del Raspberry, l’RTL-SDR sulla porta di default 1234 con protocollo TCP. Tramite un software SDR compatibile con il server, ad esempio SDR#, scegliere come sorgente RTL-SDR (TCP), configurare IP e porta e avviare la decodifica. A questo punto le funzionalità sono le stesse di una pennetta RTL collegata in locale.

RTL-SDR Server - SDR#
RTL-SDR Server – SDR#

Riferimenti e Bibliografia

  1. Osmocom rtl-sdr wiki;
  2. rtl-sdr GitHub repository.

Argomenti correlati


Licenza Creative Commons Questa opera è distribuita con:
licenza Creative Commons Attribuzione - Non commerciale - Condividi allo stesso modo 3.0 Italia.

Si declina ogni responsabilità per eventuali errori ed omissioni e gli eventuali danni che ne dovessero conseguire. Per ulteriori informazioni consultare le note legali.

14 Replies to “Server RTL SDR”

  1. gentile pianetaradio.
    Ho molto apprezzato la guida, semplice ma efficace!
    mi chiedevo se fosse possibie istallare sdrsharp o simili direttamente su raspberry.
    dispongo del pi 3 B v1.2 e un piccolo shermo 10 pollici.
    vorrei realizzare una valigetta portatile e gestire sia software gestione radio, sia eventualmente, registrazione e decodifica tipo sstv..
    suggerimenti?
    grazie per l attenzione
    Fausto

    1. Salve Fausto,
      per il tipo di utilizzo che intendi fare, potresti utilizzare una scheda audio su penna USB ed un software per i modi digitali, come ad esempio FLdigi.
      Alla pagina Software Digitale e CW troverai il link per il download del programma.

    2. Salve Fausto, per caso è riuscito a fare l’applicazione che voleva?
      Sono interessato anch’io alla stessa cosa.
      Grazie
      Alberto

  2. Grazie, preciso, sintetico ed a prova di errore… infatti non ho avuto difficoltà e ha funzionato tutto al primo colpo ! Un ringraziamento… trovarne guide così… — 73 iw1cgw.

  3. Buongiorno purtroppo il programma sharp risponde che non comunica , quando avvio il server con l’indirizzo del raspberry la risposta è positiva ma con l’indirizzo della chiavetta 127.0.0.1 mentre nella vostra videata sembra indichi l’indirizzo del raspberry , è giusto che abbia 2 indirizzi diversi ?
    Cordali saluti
    Luigi

    1. Luigi,
      SDR# deve puntare all’indirizzo IP del raspberry dove è collegata la chiavetta RTL.
      127.0.0.1 è l’indirizzo IP del PC locale dove gira SDR#, quindi tale comportamento mi pare strano.

  4. Ottima guida…volevo capire se sul rasperry Pi (io ho il pi3) è possibile far coestistere sia il dognle usb rtl-sdr che quello per l’ADS-B in modo da avere un server sia per l’ascolto radio che per visualizzare aeromobili

    Grazie

  5. Buonasera a tutti.
    Vorrei utilizzare un dongle RTL-SDR per la ricezione dei segnali ADS-B tramite un microcontrollore della Microchip.
    Qualcuno sa come e dove è possibile reperire il protocollo per gestire il dongle?
    Grazie in anticipo

  6. Buonasera,ho installato tutto come dall’ottima spiegazione,ma quando provo ad accedere mi risulta l’errore
    “impossibile stabilire la connessione.rifiuto persistente del computer di destinazione 192.168.x.xxx:1234.
    Come posso risolvere? Vi ringrazio, francesco.

    1. Salve Francesco, se dal lato RaspberryPi il server parte, come pare, senza errori, occorre verificare sul PC client: innanzitutto che RPi sia raggiungibile, ovvero risponda al ping e quindi che non ci sia qualche tipo di firewall o antivirus che blocchi il traffico sulla porta specificata.

  7. Buongiorno,sapete dirmi come posso assegnare una precisa chiavetta RTL-SDR al programma?Usando una chiavetta per dump1090 già configurata vorrei dire al programma Server RTL SDR di collegarsi alla seconda chiavetta RTL-SDR con un determinato numero seriale.Grazie

    1. Ciao Francesco,
      le chiavette rtl-sdr sono identificate dal driver con un numero progressivo, come da elenco generato dal comando rtl_test. Per avviare il server rtl su una specifica chiavetta utilizzare l’opzione -d seguita dal numero di riferimento.

      Ad esempio: per un secondo ricevitore viene assegnato il riferimento 1, il comando da utilizzare è:
      rtl_tcp -d 1 -a indirizzoIP_RPi

  8. Ciao iz8ewd e grazie per la risposta,ho provato e tutto va alla perfezione.Voglio lasciare un piccolo contributo a questa ottima guida.
    Configurazione per fare partire il server in automatico.
    Ho provato con questo codice (-/usr/local/bin/rtl_tcp -d 1 -a $_IP &) . il codice l’ho inserito in (sudo nano /etc/rc.local ) .Spero possa essere utile ad altri utenti che si divertono con il raspy.

Rispondi a iw1cgw Giovanni Annulla risposta

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