Satellite WebSDR

QRV zijn op de lineaire satellieten, maar dan op een andere manier

Ik kwam onlangs een nieuwe URL van de Maasbree WebSDR tegen. Op poort 8909 zit een volwaardige WebSDR met ongekende mogelijkheden om met AMSAT en andere satellieten te experimenteren. Niet alleen voor ontvangst, maar wat zou het mooi zijn om er ook full-duplex gebruik van te kunnen maken!

De afgelopen periode ben ik veel bezig geweest met de CAT-aansturing van de QMX+ door hiervoor Python-programma’s te schrijven. Naast eenvoudige bediening, zoals het opslaan en versturen van memories, heb ik ook de mogelijkheid toegevoegd om vanuit het DX Cluster en de SOTA-, POTA- en WWFF-platforms de QMX+ direct af te stemmen door op een spot te klikken. Zie: https://github.com/pa3ang/QMX-Controller/

Mijn laatste toevoeging was het aansluiten van de Maasbree WebSDR als een soort CATSync. Omdat ik CATSync niet aan de praat kon krijgen onder Linux Mint, heb ik uiteindelijk zelf maar een programma gemaakt. Weliswaar met behulp van ChatGPT, maar het uitzoeken en debuggen heeft toch behoorlijk wat inspanning gekost.

De verbinding werkt in twee richtingen voor frequentie, band en mode en communiceert rechtstreeks via de JavaScript van de website.

Toen ik dat eenmaal had gerealiseerd, kon de volgende creatie eigenlijk niet uitblijven. De satelliet-WebSDR gebruiken om bijvoorbeeld RS-44 en FO-29 te beluisteren, af te stemmen op een station, dit station met de ingebouwde trackingfunctie van de WebSDR te blijven volgen en vervolgens met een Python-script, rekening houdend met de Doppler-verschuiving, de juiste TX-uplinkfrequentie naar mijn IC-705 te sturen.

Op deze manier kan ik volledig transceive en full-duplex verbindingen maken. Te mooi om waar te zijn? Het werkt echt! Inmiddels heb ik op deze manier al tientallen succesvolle QSO’s gemaakt. En dat alles zonder speciale antennes voor LEO- en MEO-satellieten of een elevatierotor. Ik gebruik hiervoor gewoon een verticale ½λ-dipool voor 2 meter en 70 centimeter.

Het Python-script leest de afgestemde ontvangst-/downlinkfrequentie van de WebSDR en berekent de bijbehorende Doppler-correcties voor de downlink en uplink. Vervolgens wordt de juiste uplinkfrequentie, samen met de mode (LSB), naar de IC-705 gestuurd. Tijdens het testen en debuggen bleek echter dat er per satelliet een vaste offset bestaat tussen de up- en downlinkfrequentie. Bij RS-44 is deze offset -2400 Hz en bij FO-29 +1600 Hz. Waar deze verschillen vandaan komen, is mij op dit moment niet duidelijk. Omdat de offset per satelliet verschilt en een vaste waarde lijkt te zijn, ligt het niet voor de hand dat dit door de Dopplerberekeningen van het Python-script wordt veroorzaakt. De berekende Dopplerwaarden komen namelijk spot on overeen met die van andere satellietvolgprogramma’s.

In het scherm van de satelliettracker zijn alle belangrijke parameters overzichtelijk weergegeven. Daarnaast kan eenvoudig worden overgeschakeld naar CW of een Carrier (RTTY).

De Maasbree SDR kan dus de signalen blijven tracken. Hieronder twee afbeeldingen van zo’n actie.

RS-44, twee stations naast elkaar.
ISS, FM signaal wordt goed ontvangen.

De communicatie met de WebSDR is zeer eenvoudig. In feite wordt alleen de ontvangstfrequentie uitgelezen. De bediening van de website en het maken van de benodigde keuzes gebeurt gewoon door de gebruiker op de WebSDR zelf.

Het Python-script doet verder niets met de bediening van de WebSDR, maar stuurt alleen de berekende frequentie en mode naar de IC-705. Hiervoor moet de set in de VFO-modus staan en niet in Split- of Duplex-modus!

Het python script is nog in verdere ontwikkeling (september 2026) maar staat op https://github.com/pa3ang/Satellite-Tracker.