Preskočiť na hlavný obsah

Fobos SDR s Agile firmware v programe SkyRoof cez SoapySDR

SkyRoof je open-source 64-bitová aplikácia pre Windows určená rádioamatérom a záujemcom o príjem rádioamatérskych satelitov. Jej hlavnou výhodou je spojenie satelitného trackingu a SDR prijímača v jednom programe.

Program dokáže v reálnom čase sledovať polohu satelitov, počítať ich prelety nad stanovišťom a zobrazovať ich v niekoľkých pohľadoch. Zároveň pracuje so SDR prijímačom a zobrazuje širokopásmový waterfall pre VHF/UHF satelitné pásma. Stopy jednotlivých satelitov sú priamo vo waterfalle označené názvami a frekvenčná stupnica aj hranice transpondérov sa priebežne korigujú podľa Dopplerovho posunu.

SkyRoof obsahuje aj SDR prijímač pre SSB, CW a FM, podporuje RIT a automatické Dopplerovo sledovanie frekvencie. Okrem toho umožňuje napríklad:

  • predpovedať prelety vybraných satelitov,
  • zobrazovať Sky View, Earth View, časovú os a zoznam preletov,
  • posielať audio alebo I/Q dáta do externých programov cez VAC alebo UDP,
  • dekódovať vybrané telemetrické signály FSK, AFSK, GFSK, GMSK a BPSK,
  • odosielať dekódované rámce do siete SatNOGS,
  • dekódovať SSTV a SSDV,
  • pracovať s Codec2 hlasovými správami,
  • ovládať externý transceiver cez CAT,
  • ovládať anténny rotátor.

Program môže fungovať aj bez SDR prijímača ako satelitný tracker a plánovač preletov, ale práve spojenie trackingu so SDR z neho robí zaujímavý nástroj pre praktický satelitný príjem.

Oficiálna stránka projektu:
https://ve3nea.github.io/SkyRoof/

Vcelku dobrý opis možností programu na: 

https://cq.sk/skyroof-satelitny-tracking-a-sdr-v-jednom-programe/ 


Fobos SDR s Agile firmware v SkyRoof

Pri skúšaní programu SkyRoof 1.52 som chcel okrem Airspy Mini a PlutoSDR použiť aj Fobos SDR od RigExpertu s Agile firmware.

SkyRoof používa pre prístup k SDR zariadeniam rozhranie SoapySDR, takže Fobos by mal byť použiteľný prostredníctvom príslušného SoapySDR modulu.

V praxi však SkyRoof Fobos spočiatku vôbec neponúkal medzi dostupnými SDR zariadeniami, hoci HDSDR, SDR Console aj SDRangel ho bez problémov rozpoznávali ako:

Fobos SDR(agile)
HW: r.3.0.0
FW: v.3.2.0

Najskôr preto bolo potrebné zistiť, či je problém v SkyRoofe alebo už na úrovni SoapySDR.

Kontrola SoapySDR

Prvý test:

SoapySDRUtil --check=fobos

vrátil:

Checking driver 'fobos'... PRESENT

To znamenalo, že modul FobosSDRSupport.dll bol nainštalovaný a SoapySDR ho dokázal načítať.

Nasledujúci test:

SoapySDRUtil --find="driver=fobos"

však skončil výsledkom:

No devices found! driver=fobos

SoapySDR teda poznal ovládač Fobos, ale samotný prijímač s Agile firmware prostredníctvom neho nevidel.

Príčina problému

V počítači bola nainštalovaná verzia:

SoapyFobosSDR v1.0.1 beta

Táto verzia bola určená pre pôvodné Fobos API libfobos a podporu Agile firmware ešte neobsahovala.

Po aktualizácii Git repozitára sa ukázalo, že novšia verzia obsahuje commit:

1e2a33b libfobos-sdr-agile support

a súbor versions.txt už uvádzal:

v.1.1.0
- added support for fobos-sdr-agile

V novej verzii sa pre detekciu zariadení používajú obe API:

class="sh-fn">fobos_rx_list_devices(...)
class="sh-fn">fobos_sdr_list_devices(...)

Agile zariadenie je následne identifikované ako:

Fobos SDR(agile)

Toto bol rozhodujúci rozdiel oproti verzii 1.0.1.

Kompilácia SoapyFobosSDR 1.1.0 vo Windows

Zdrojový kód SoapyFobosSDR bol aktualizovaný na verziu 1.1.0 a následne bolo potrebné vytvoriť nový 64-bitový modul:

FobosSDRSupport.dll

Pri kompilácii sú potrebné vývojové súbory oboch Fobos API.

Pre klasický libfobos:

fobos.h
fobos.lib

a pre Agile API:

fobos_sdr.h
fobos_sdr.lib

V mojom prípade boli použité:

libfobos 2.4.0
libfobos-sdr-agile 3.1.0

Po nastavení správnych include ciest a knižníc v CMake prešiel build úspešne a vznikol nový:

FobosSDRSupport.dll

Overenie novej verzie

Nový modul bol najskôr vložený do PothosSDR:

C:\Program Files\PothosSDR\lib\SoapySDR\modules0.8

Kontrola ovládača:

SoapySDRUtil --check=fobos

opäť ukázala:

Checking driver 'fobos'... PRESENT

Rozhodujúci test však už tentoraz dopadol správne:

SoapySDRUtil --find="driver=fobos"

Výsledok:

Found device 0
  driver = fobos
  label = Fobos SDR(agile)
  manufacturer = RigExpert
  serial = serial number

Tým bolo potvrdené, že celý reťazec funguje:

Fobos SDR
    ↓
Agile firmware
    ↓
libfobos-sdr-agile
    ↓
SoapyFobosSDR 1.1.0
    ↓
SoapySDR 0.8
    ↓
SkyRoof

Integrácia do SkyRoof

SkyRoof umožňuje doplniť aj SDR zariadenia, ktoré nie sú priamo súčasťou jeho inštalácie, pokiaľ pre ne existuje kompatibilný 64-bitový SoapySDR modul pre ABI 0.8.

V mojej inštalácii sa Soapy moduly nachádzajú v:

C:\HamApps\Afreet\SkyRoof\lib\SoapySDR\modules0.8

Po nahradení pôvodného FobosSDRSupport.dll novou verziou 1.1.0 sa v okne SDR Devices objavil:

Fobos SDR(agile)

SkyRoof následne prijímač normálne otvoril a zobrazil signály vo waterfalle.

Šírka pásma – ďalšia téma na experimentovanie

Po úspešnom spustení Fobosu SkyRoof nastavil:

SampleRate        : 8.0 MHz
MaxBandwidth      : 3.1 MHz
HardwareBandwidth : 3.41 MHz
Frequency         : 436.5 MHz

Z toho je zrejmé, že 3,1 MHz nie je obmedzenie Fobos SDR. Fobos v tomto prípade pracuje so sample rate 8 MS/s, ale SkyRoof používa internú maximálnu pracovnú šírku približne 3,1 MHz.

Táto hodnota zodpovedá filozofii programu, ktorý je primárne určený na pokrytie rádioamatérskych satelitných úsekov VHF a UHF pásiem. Fobos však umožňuje podstatne širší príjem, takže úprava maximálnej šírky zobrazovaného pásma v SkyRoof bude predmetom ďalšieho experimentovania.

Praktický záver

Ak Fobos SDR s Agile firmware funguje v HDSDR, SDR Console alebo SDRangel, ale SoapySDR a SkyRoof ho nevidia, nemusí byť problém v USB ovládači, firmware ani v samotnom prijímači.

Ako prvé sa oplatí vykonať:

SoapySDRUtil --check=fobos
SoapySDRUtil --find="driver=fobos"

Ak prvý príkaz hlási:

PRESENT

ale druhý:

No devices found!

treba skontrolovať verziu SoapyFobosSDR.

Pre Fobos s Agile firmware je potrebná verzia:

SoapyFobosSDR 1.1.0

alebo novšia verzia obsahujúca podporu libfobos-sdr-agile.

Staršia verzia 1.0.1 sa síce v SoapySDR úspešne zaregistruje, ale Agile zariadenie ešte nedokáže detegovať. Po aktualizácii a prekompilovaní modulu funguje Fobos SDR v SkyRoofe cez SoapySDR korektne.


Zdroje

Poznámka: konkrétne cesty k súborom zodpovedajú jednej Windows inštalácii a na inom počítači sa môžu líšiť.

Komentáre

Obľúbené príspevky z tohto blogu

FUNcube Dongle Pro+ AVÍZO

Nová generácia SDR prijímača FUNcube Dongle Pro+ uzrie svetlo sveta od druhej polovice októbra 2012. FUNcube Dongle Pro+ bol prvý krát predstavený verejnosti 15.septembra 2012 na seminári AMSAT-UK International Space. Celú prezentáciu si môžete pozrieť cez odkaz nižšie. Prezentácia má 40 minút a je v anglickom jazyku. http://www.batc.tv/vod/AMSAT%20session2.flv Avizované parametre novej rady FCD Pro+ - pokrýva všetky amatérske pásma od 136 kHz po 23cm, - krok ladenia PLL oscilátora 0,5 Hz, - 192 kHz vzorkovacia frekvencia, - 11 diskrétnych pásmových filtrov, - SAW filtre s veľmi ostrou charakteristikou pre pásma pre 2m a 70cm,  - nie je treba extra ovládače, - predpokladaná dostupnosť v druhej polovici októbra 2012,

Dream pod Windows 11: prečo sa nedá spustiť a ako som to vyriešil

  O príjem digitálneho vysielania DRM (Digital Radio Mondiale) na krátkych vlnách sa zaujímam už dlhšie. Programov na dekódovanie veľa nie je — v praxi prichádzajú do úvahy Sodira a Dream , teda aspoň pod Windows 11. Sodira mi pracovala bez problémov, no Dream sa mi pod Windows 11 nepodarilo ani spustiť. Keďže som chcel mať možnosť porovnať oba programy, rozhodol som sa zistiť príčinu. Problém: „no Qt platform plugin could be initialized“ Po spustení dream.exe sa objavila iba chybová hláška: This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem. Opakovaná inštalácia, ktorú hláška odporúča, samozrejme nepomohla. Postupne som preveril obvyklé príčiny: Visual C++ Redistributable — build dream-2.2-win32-vs2017 je 32-bitová aplikácia, takže potrebuje x86 runtime. Ten som mal nainštalovaný (Microsoft Visual C++ 2015-2022 Redistributable x86), systém bol teda v poriadku. Súbory zablokované po ...

MixW4 je už dostupný ...

Známy multimode terminálový program MixW je už dostupný pre registrovaných používateľov vo svojej štvrtej generácii. Cena registrácie MixW4 je dvojciferná suma + dph = trojciferná suma v EUR. No uvidíme, čo to dokáže za tie peniaze a v čom je rozdiel oproti predchádzajúcim verziám.