Een korte, taakgerichte handleiding om van een Raspberry Pi Zero 2 W en een goedkope SDR-dongle een netwerk-luisterstation te maken voor kortegolf en omroep: de radio en het decoderen draaien op de Pi, en je bedient hem vanaf een laptop, tablet of telefoon in je thuisnetwerk. Niets hiervan vraagt een licentie of een zender.
Voor de luisterworkflow zelf zie de
Luister-quickstart; voor de volledige uitleg per
knop zie USER_MANUAL.md; voor het waarom van deze fork zie de
README.
English: pi-zero-2w-swl.en.md. Français: pi-zero-2w-swl.fr.md. Italiano: pi-zero-2w-swl.it.md. PDF: pi-zero-2w-swl.nl.pdf.
Vetgedrukte namen zoals SETTINGS en SWL LOG zijn knoppen en velden zoals ze op het scherm staan. Commando’s in grijze vakken typ je in de shell van de Pi.
Lees dit eerst. De Pi Zero 2 W is een luisterknooppunt, geen desktop. Zijn vier kleine cores en 512 MB RAM dragen de ontvanger, de decoders en de opname met gemak; ze dragen niet de brede lanes (ADS-B, VDL2, AIS, DAB) of de grafische interface op volle detail. Houd de samplerate laag, blijf bij de smalle modes, en laat de browser het tekenwerk doen.
swl), zet SSH
aan en vul je wifi-gegevens in als je geen kabel gebruikt. Start de Pi.ssh pi@swl.local
sudo apt update && sudo apt full-upgrade -y
sudo apt install -y libasound2-dev libopus-dev
Je installeert geen compiler. De uitgebrachte build is een kant-en-klaar binair bestand.
De Zero 2 W is 64-bit (armv8), dus hij draait de aarch64-compat-build voor
Raspberry Pi OS Bookworm. Download hem op de Pi zelf:
cd /tmp
wget https://github.com/madmedicnl/sdroxide-brown/releases/latest/download/sdroxide-linux-aarch64-compat.AppImage
chmod +x sdroxide-linux-aarch64-compat.AppImage
./sdroxide-linux-aarch64-compat.AppImage --version
--version hoort het SDR Oxide Brown-buildnummer te tonen. Weigert hij te
starten met GLIBC_2.39 not found, dan heb je het verkeerde bestand — je wilt
die met -compat in de naam.
Zet hem waar je hem bij naam kunt aanroepen:
mkdir -p ~/bin
mv sdroxide-linux-aarch64-compat.AppImage ~/bin/sdroxide
chmod +x ~/bin/sdroxide
Een .deb mag ook: op dezelfde releasepagina staat
sdroxide-linux-aarch64-compat.deb; installeer met
sudo apt install ./sdroxide-…-aarch64-compat.deb en het commando is dan gewoon
sdroxide.
De udev-regels doen ertoe. Een Linux-gebruiker heeft rechten nodig om een USB-SDR te openen. Heb je de
.debgeïnstalleerd, dan staan ze al goed. Met de AppImage kopieer je de regels uit depackaging/linux/-map van de repository naar/etc/udev/rules.d/, en dan:sudo udevadm control --reload && sudo udevadm triggeren trek de dongle eruit en stop hem terug. Zonder dit ziet de Pi de dongle wel, maar kan hij hem niet openen.
Dit heb je maar één keer nodig, om de radio in te stellen; daarna draait de Pi headless.
DISPLAY=:0 ~/bin/sdroxide
(Heb je helemaal geen desktop, ga dan naar Deel 4 en doe de installatie vanuit de browser.)
--swl op de opdrachtregel
doet hetzelfde voor één run.)Dit is het punt van de oefening: de Pi houdt de radio, en elk scherm dat je hebt kan hem gebruiken.
Stop het venster-instantie, en start dan de server:
~/bin/sdroxide --server --port 4950
De browserclient wordt vanaf dezelfde poort geserveerd. Open op elk apparaat in hetzelfde netwerk:
http://swl.local:4950
Je krijgt het hele programma in de browser — afstemmen, de waterfall, de SCHEDULE- en SWL LOG-vensters, de decoders, het ontvangstlogboek. De Pi doet het ontvangen en het decoderen; de browser doet het tekenwerk, en precies daarmee blijft een bord van 512 MB bruikbaar.
Een native sdroxide op een andere computer kan hem ook aansturen, met
sdroxide --connect swl.local:4950.
Om de server bij het opstarten te starten en te laten draaien, maak je een kleine service:
sudo tee /etc/systemd/system/sdroxide.service >/dev/null <<'EOF'
[Unit]
Description=sdroxide SWL listening server
After=network-online.target sound.target
Wants=network-online.target
[Service]
User=pi
ExecStart=/home/pi/bin/sdroxide --server --swl --port 4950
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl enable --now sdroxide
Controleer met systemctl status sdroxide, en volg het log met
journalctl -u sdroxide -f.
Goed op een Zero 2 W:
Slecht of onmogelijk op een Zero 2 W:
systemctl status sdroxide) en of je het adres van de Pi gebruikt
(http://swl.local:4950, of het IP dat hostname -I toont).linux-aarch64-compat-build voor de Pi.Goede ontvangst en goede DX! 73