Raspberry PI als SDR Server im Netzwerk

Der Raspberry PI kann mit einfachen Mitteln zum SDR Server im Netzwerk werden und damit Funksignale an einen Client über IP senden. Dafür reicht ein einfacher DVB-T USB-Stick mit dem RTL2832U-Chipsatz.

Für den eigentlichen Server reichen wenige Zeilen Code, die wir im Folgenden darstellen möchten. Wichtig ist beim Betrieb als Server, dass der Raspberry Pi nur das Signal empfängt und über IP bereitstellt. Die eigentliche Verarbeitung, die CPU-Last kostet, erfolgt erst auf dem Client.

Installation des SDR Server

Nachfolgend kurz die Kommandos, die auf der Shell ausgeführt werden müssen. Das erste Kommando lädt allgemein Pakete herunter, die für den weiteren Verlauf gebraucht werden:

Eine kurze Erklärung dazu:

  • git: Versionsverwaltungssystem für Softwareprojekte, hier sind die Source-Dateien für den Server bereitgestellt
  • cmake: Tool für die Erstellung von Software. Es generiert zusätzliche Dateien, die von dem eigentlichen Compiler später genutzt werden
  • libusb-1.0-0.dev: USB-Programmierbibliothek
  • build-essentials: Wird benötigt, um Pakete zu erzeugen

Das zweite Kommando lädt den Programmcode für benötigte Software, um den DVB-T USB-Stick zu steuern. Der Befehl erstellt ein neues Verzeichnis, in diesem Fall „rtl-sdr“ und lädt die Quelldateien unter der angegebenen URL in dieses Verzeichnis.

Wir wechseln in das neue Verzeichnis, erstellen den Ordner „build“ und wechseln in diesen.

Wir führen „cmake“ auf dem darunter liegenden Ordner aus. Das Resultat landet in dem Ordner „build“, den wir eben angelegt haben.

Compilieren des Codes und anschließendes Installieren der Software.

Der Befehl „ldconfig“ steuert die Verwaltung der Bibliotheken, die im System verwendet werden und mit dem nachfolgenden Befehl werden die Verweise auf diese Bibliotheken aktualisiert:

Für die Kommunikation mit dem Stick muss noch eine Datei kopiert werden. „udev“ ist dabei ein Gerätedienst, der die Geräte im Verzeichnis /dev dynamisch verwalten kann. Wir müssen dazu zunächst in das darüber liegende Verzeichnis wechseln und anschließend die Datei kopieren:

Erster Start des SDR Server

Jetzt muss eigentlich nur noch das Programm gestartet werden. Da das Ganze über das LAN funktionieren soll, muss die IP mit angegeben werden:

Also zum Beispiel:

Die Software startet und der Raspberry PI ist nun ein „SDR Server“.

Im Standard läuft der SDR Server auf dem Port „1234“. Dieser wird auch auf dem Raspberry PI beim Starten des Programms angezeigt. Wir können die Wahl des Ports auch beeinflussen, indem wir den Parameter -p verwenden:

In diesem Fall würde der SDR Server jetzt auf dem Port 1337 erreichbar sein.

Manchmal startet der SDR Server nicht korrekt, da das Modul dvb_usb_rtl28xxu blockiert ist. Wenn dieses Problem auftritt, kann das Modul mit folgendem Befehl aus dem Speicher entfernt werden:

Client-Verbindung einrichten

Das Ganze lässt sich jetzt relativ simpel über das Programm SDR# steuern. Dazu muss in der Liste der Eintrag RTL-SDR / TCP gewählt – und unter „Configure“ die IP und der passende Port gesetzt werden.

Damit sollte die Verbindung erfolgreich aufgebaut sein.

Wer das Tool zum ersten Mal nutzt, sollte etwas mit den Einstellungen spielen und darauf achten, dass die Werte „RF-Gain“ oder „Filter bandwidth“ passend zum erfassten Signal gesetzt sind.

In Teil 2 dieses Tutorials erfahren Sie, wie man mit einem derartigen software-defined-Radio (SDR) auch Tetra-Funk empfangen und auswerten kann.

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht.