Raspberry Pi als TCP-RTL-SDR-Server im Netzwerk verwenden.
(für RTL-2832U USB-Sticks)
wie z.B.
RTL-SDR Blog V3 oder NESDR SMArt von NooElec
Ich gehe davon aus, das der Pi bereits im Netzwerk integriert, ein
sauberes RaspberryPi OS lite auf der Karte und SSH aktiviert ist.
Auf dem Raspberry muss nun auf die Console zugegriffen werden.
Wichtig! eigentlich muss man den Zusatz
-get nicht mehr
verwenden. In diesem Falle aber doch, ansonsten gibt es spätestens ab
der
libusb Fehlermeldungen.
Zuerst das
OS auf den neuesten Stand bringen.
sudo apt-get
update
sudo apt-get full-upgrade
jetzt alles runterladen und
installieren was gebraucht wird, um den RTL-2832U USB
Stick Treiber zu compilieren.
sudo apt-get
install git
sudo apt-get install cmake
sudo apt-get install libusb-1.0-0.dev
sudo apt-get install build-essential
Treiber compilieren und installieren
git clone https://gitea.osmocom.org/sdr/rtl-sdr.git
cd rtl-sdr/
mkdir build
cd build
cmake ../
make
sudo make install
sudo ldconfig
Damit das OS nicht die DVB-T Treiber
lädt, wird noch eine Blacklist erstellt.
Sonst wird der SDR Stick nicht als
dieser erkannt. Bzw. wird blockiert.
sudo nano
/etc/modprobe.d/raspi-blacklist.conf
Folgende Zeilen kommen dort
rein.: Wichtig! Groß- und
Kleinschreibung beachten!
blacklist
dvb_usb_rtl28xxu
blacklist rtl2832
blacklist rtl2830
blacklist rtl2832U
blacklist rtl2838
blacklist RTL28xxU
blacklist RTL2832U
abspeichern und exit
Jetzt den Raspberry rebooten.
sudo reboot
Den Server starten:
Shell auf der Console oder Shell per SSH öffnen und
folgende Zeile eingeben:
sudo rtl_tcp -a xxx.xxx.xxx.xxx
x = IP Adresse vom Raspberry
voila.. das dingens sollte
laufen. Fenster geöffnet lassen.
Strg c oder Fenster schließen beendet den Server. |
|
Nach dieser Aktion kann man nun vom PC aus auf den SDR-Stick zugreifen.
Dazu muss die SDR Software auf dem PC lediglich auf TCP eingestellt
werden.
Die IP vom Raspberry eintragen, port nummer 1234 (xxx.xxx.xxx.xxx:1234)
Man Simuliert praktisch eine physische USB Verbindung zwischen PC und
USB-RTL-Stick.
Mehrere RTL-SDR USB Sticks an einem Raspberry gleichzeitig
betreiben. Nur Raspberry Pi5 evtl. auch ein
Pi4!
Die meisten, wenn nicht alle, RTL-SDR Sticks haben von Hause
aus die gleiche Seriennummer, nämlich 00000001.
Das kann beim simultanen Betrieb von mehreren Sticks zu problemen
führen.
Ich empfehle die Videos sich vorher anzuschauen! Oben rechts auf dieser
Seite sind die links dorthin.
Der Befehl zum umprogrammieren der Seriennummer lautet
z.B.:
rtl_eeprom -d 1 -s 00000002
Erklärung: -d =
device
-s =
Seriennummer
Dies würde dem zweiten USB Stick die Seriennummer 00000002 geben. Man
beachte, der Devicezähler beginnt mit 0! Der erste USB-Stick ist also
Device 0.
Da man nicht mehrere Dongles nicht auf dem gleichen Port laufen lassen
kann, muss man für jeden Dongle eine rtl_tcp instanz mit einem anderen
zugewiesenen Port starten.
Für jede neue Instanz muss ein neues Fenster geöffnet werden.
Aufruf des rtl_tcp servers mit einem spezifischen RTL dongles auf einem spezifischen
port
rtl_tcp -d 1 -p 1235 -a xxx.xxx.xxx.xxx
Erklärung: -d = device -p =
port -a = Ip Adresse des Raspberry
Unter der Annahme man hätte drei Sticks, und möchte alle drei
gleichzeitig starten wollen, würde das ganze so aussehen. (Jede Instanz
benötigt ein neues Fenster!) Dafür braucht man aber einen Raspberry 5,
vielleicht reicht auch ein Raspberry 4. Der 5er schafft es. Ich habe es
selber ausprobiert.
Beispiel:
rtl_tcp -d 0 -p 1234 -a 192.168.178.45
rtl_tcp -d 1 -p 1235 -a 192.168.178.45
rtl_tcp -d 2 -p 1236 -a 192.168.178.45
Da mir das eingeben mit der Zeit zu müßig wurde habe ich kleine
batchdateien geschrieben. So brauche ich zum starten des rtl_tcp servers
für z.B. HF Empfang (100kHz-30MHz) nur noch HF eingeben. Für UHF/VHF
gebe ich nur noch UHF ein und für Sat gebe ich SAT ein. Ich habe also
drei batchdateien mit den namen: HF
UHF SAT
Das ganze wird dann so gemacht.:
Beispiel:
Man startet auf dem Pi eine Console. Geht in das Verzeichniss
/usr/bin und startet mit
sudo nano den Editor.
Im Editor gibt man dann folgende Zeile ein.
sudo rtl_tcp -d 0 -p 1234 -a 192.168.178.45
mit Strg+O kann man dieses dann mit dem Namen seiner Wahl abspeichern.
Strg+X beendet dann den Editor.
Damit diese Datei auch ausführbar ist, muss man der Datei noch
entsprechende Rechte geben.
Unter der Annahme die Datei heisst HF, wird eingegeben:
sudo chmod 755 HF
755 = alle user
750 = aktueller user
Wie kann ich den Server nun mit dem Windowsrechner und der SDR
Software dort erreichen?
AirSpy SDR#
oben rechts im Auswahlmenue
Source
und dort
RTL-SDR TCP auswählen.
Im Zahnrad oben
erscheint dann RTL-TCP Settings. Bei Host gibt man die IP des
Raspberrys ein. Bei Port den entsprechenden Port. Bei Samplerate
empfehle ich 2048 MSPS.
RTL AGC ein Häkchen setzen.
Danach kann man entweder AGC Tuner anwählen oder verwendet den
Schieberegler für die Gain.
SDR++ wird entsprechend konfiguriert.
RaspberryPi3B+ und 5G WIFI
Der Raspberry 3, 3B und 3B+ hat da so seine Probleme. Ich habe schon vieles
ausprobiert.
1. Der Raspberry sollte seinen Zugangspunkt in unmittelbarer Nähe haben.
Bei mir sind es ca. 90cm bis zum Repeater.
2. Der Kanal sollte so niedrig wie möglich sein. Kanal 36 - 38
sind Ideal. Kanal 40 ist bereits Grenzwertig. Darüber kommen keine
unterbrechungsfreien Verbindungen mehr zustande.
Ich habe extra einen Repeater neben dem Balkonfenster positioniert. Da
meine Raspberrys draussen auf dem Balkon in einem
Kunststoffschaltschrank sitzen.