SDRoxide je nový softwarově definovaný rádiový (SDR) transceiver s otevřeným zdrojovým kódem, napsaný kompletně v jazyce Rust. Autorem projektu je Josef, OE3JJS. Program běží nativně na Linuxu, macOS a Windows (architektury x86-64 i ARM64), případně jako server, který streamuje kompletní rozhraní do libovolného webového prohlížeče přes WebAssembly. Projekt je aktuálně ve stádiu beta a je vyvíjen aktivně a rychle.
V článku se dočtete
Co přináší SDROXIDE
Hlavní myšlenkou SDROXIDE je sjednotit funkce, které radioamatér dosud musel rozdělit mezi několik samostatných programů – panadaptér, dekodéry digitálnych módov, CW/PSK/RTTY skimmer, logovací softvér a prepojenia s QSL službami. Všetky moduly bežia natívne v jednom procese bez potreby virtuálnych audio káblov alebo externých dekodérov. Rozhranie obsahuje GPU-akcelerovaný vodopád (waterfall) s duálnym VFO, síť neuronové redukce šumu, vestavěné skimmery, kompletní sadu digitálních módů a živý 3D pohled na kosmické počasí.

Podporovaná zařízení
SDROXIDE přistupuje k hardwaru přes osm rodin připojitelných backendů, takže pokrývá široké spektrum běžně používaných SDR přijímačů a TCVR.
| Backend | Podporovaná zařízení | Poznámka |
|---|---|---|
| RTL-SDR | RTL2832U dongly s tunery R820T/T2, R828D | Nativní Rust ovladač, bez SoapySDR a libusb; KV pásmo přes Blog V4 nebo přímé vzorkování; pouze příjem |
| RX-888 | RX-888 a Mk2 (16bitový ADC LTC2208, Cypress FX3) | Nativní Rust ovladač, firmware se nahrává automaticky; vzorkování 0–32 MHz přímo do 129,6 Msps; pouze příjem |
| SoapySDR | HackRF One, LimeSDR a další SoapySDR zařízení | Plný panadaptér, skimmery i interní demodulace; TX podle možností hardwaru |
| OpenHPSDR | Hermes/Apache Labs Ethernet SDR | Protokol 1 i Protokol 2, DDC rychlosti 48 kHz – 1536 kHz |
| TCI | ExpertSDR3 / SunSDR | Přes WebSocket protokol TCI, širokopásmový IQ příjem a řízení výkonu |
| SmartSDR (experimentální) | FLEX-6000 / FLEX-8000 | Připojuje se jako GUI klient přes DAX IQ stream; zatím neověřeno na reálném hardwaru |
| PlutoSDR (experimentální) | ADALM-Pluto (AD9361/AD9363) | Přes IIOD bez potřeby libiio; širokopásmový IQ příjem i vysílání; zatím neověřeno na reálném hardwaru |
| CAT / Audio | Icom (CI-V), Yaesu, Xiegu | Řízení frekvence a módu přes CAT, demodulovaný zvuk přes USB zvukovou kartu |
Pred ktorýkoľvek z týchto backendov je možné zaradiť HF upkonvertor (napríklad Ham It Up, SpyVerter), transvertor alebo LNB offset pro satelitní příjem – výběrem z přednastaveného seznamu nebo přímým zadáním posunu v hertzech.
Video: SDROXIDE v praxi
Všechny módy, jeden program
Každý mód běží jako nativní Rust modem přímo v procesu programu – bez externích dekodérů a bez potřeby virtuálních audio kabelů mezi programy. Hlasové módy pokrývají LSB, USB, AM, SAM, DSB, NFM a WFM. CW dekodér automaticky rozpoznává rychlost signálu a nabízí také klávesnicové vysílání s předběžným psaním (type-ahead). FT8/FT4 běží jako auto-sekvenční QSO engine se světovou mapou a automatickým logováním. JS8 podporuje všechny čtyři rychlosti a je kompatibilní s JS8Call.

FreeDV RADE přináší neuronový digitální hlas čitelný hluboko pod prahem běžného SSB. Klasické klávesnicové módy PSK31 a RTTY jsou podporovány obousměrně. Skupina slabosignálových MFSK módů zahrnuje Olivia, THOR a FSQ (s vrstvou FSQCALL). Hellschreiber pokrývá varianty Feld Hell, Slow, X5, X9, FSK245, FSK105 a Hell80. SSTV podporuje příjem i vysílání ve formátech Scottie, Martin a Robot. Doplňkovými módy jsou weather fax (WEFAX) s automatickým startem/stopem podle rozvrhu stanic, RIFP pro paketový přenos obrázků a RF Paint pro vykreslování textu a obrázků přímo na vodopád.
Další funkce
SDROXIDE obsahuje čtyři mechanismy pro redukci šumu, každý se třemi úrovněmi intenzity – RNN (RNNoise), DFNR (DeepFilterNet3 s hloubkou 6/12/24 dB), SPEC (libspecbleach) a vestavěný spektrální NR. Součástí je i impulsní Noise blanker a adaptivní notch filtr (ANC) pro potlačování konstantních tónů (například během ladění).
Vestavěné skimmery pro CW, PSK31 a RTTY označují dekódované volací znaky přímo na vodopádu v celé viditelné šířce pásma. Program podporuje paměťové kanály i skenování v rozsahu frekvencí s kroky 5/6,25/8,33/10/12,5/25 kHz, prohledávání podle FFT na IQ rádiích, prahem v dB nebo squelchi a režimy CARRIER/TIMED/MANUAL pro pokračování po zastavení. Dekódování CTCSS a DCS je k dispozici na FM módu včetně volitelného tónového squelchu.
Desetislotový voice Keyer ovládá vysílání z panelu, numerické klávesnice, MIDI padu, nožního spínače nebo přes Hamlib, se soubory WAV 48 kHz mono. Program nabízí také jednoklikové nahrávání přijímaného zvuku na disk. Zvláštní kapitolou je živý 3D pohled na kosmické počasí – sluneční soustava se sluncem, Zemí a Měsícem na reálné efemeridě, aurorální ovál podle modelu NOAA OVATION, sledování satelitů přes SGP4 s tabulkami přeletů, data o CME z NASA CCMC DONKI a propagační panel s MU Kp/A, tokem F10.7 a třídou rentgenového záření GOES.
Skena bandplan strip, RIT/XIT markery, live TX monitor trace a broadcast-station labels jsou vykreslovány přímo na vodopádu – operátor tak vidí kontext pásma bez přepínání mezi okny.
Tabulka specifikace SDROXIDE
| Kategorie | Specifikace |
|---|---|
| Renderer vodopádu | GPU (wgpu), spektrální křivka nad vodopádem, plná snímková frekvence |
| Velikost FFT | 2048/4096/8192/16384/32768 |
| Barevná schémata | Classic, Viridis, Gray, Icom, Neon, Synthwave, Matrix, Tron |
| Redukce šumu | RNN, DFNR (DeepFilterNet3), SPEC (libspecbleach), vestavěný spektrální NR – každý ve třech úrovních |
| AGC | Off / Slow / Med / Fast, s hang funkcí |
| VFO | A/B se split, swap a copy; sub-receiver na neaktivním VFO; RIT a XIT ±9999 Hz v krocích po 5 Hz |
| Skenování | Paměťové a rozsahové skenování, kroky 5–25 kHz, FFT sweep na IQ rádiích |
| Vysílání | PTT, TUNE nosná, drive a tune-drive, mikrofónny zisk, meter výkon/SWR/ALC, ham-band TX lockout predvolene zapnutý |
| Operační systémy | Linux, macOS, Windows – x86-64 a ARM64 |
| Způsoby provozu | Nativní desktopová aplikace, –server (WebAssembly do prohlížeče), –connect (nativní vzdálený klient), –console (ASCII vodopád) |
| Bez hardwaru | –siggen vestavěný generátor signálu, –file přehrávání surových CF32 IQ dat, –probe výpis možností zařízení |
Remote provoz
SDROXIDE nabízí tři způsoby provozu z jednoho binárního souboru. Nativní desktopová aplikace se spouští přímo proti lokálnímu SDR nebo CAT zařízení pro nejnižší latenci. Server-to-browser režim (spuštěn příkazem SDRoxide --server) streamuje celé rozhraní do libovolného prohlížeče v síti bez nutnosti instalace na straně klienta. Nativní remote klient (SDRoxide --connect host:4950) umožňuje ovládať vzdialenú stanicu z plnohodnotného desktopového klienta – takzvané „Shack-from-anywhere“ řešení.

Přihlášení je zabezpečeno jménem a heslem, které je vyžadováno při každém vzdáleném připojení – v prohlížeči, u –connect klienta i ve 3D zobrazení. Změna hesla se projeví bez nutnosti restartu a neautentifikované připojení nikdy nezabere místo v klientském pořadu. Autoři zdůrazňují, že přihlášení není šifrováním: mimo důvěryhodné lokální sítě se doporučuje provozovat server za VPN nebo za HTTPS reverzním proxy.
Download: macOS, Windows, Linux, Webklient
SDROXIDE je dostupný pro Linux, macOS a Windows na architekturách x86-64 i ARM64. Výchozí (DEFAULT) sestavení funguje bez další instalace závislostí – vhodné pro CAT rádia, síťová FlexRadio a ADALM-Pluto zařízení, RTL-SDR dongly i RX-888, jejichž ovladače a firmware jsou zabudovány přímo v binářce. Sestavení se SoapySDR přidává podporu širokopásmových SoapySDR zařízení (HackRF, LimeSDR a podobné), pro které je třeba mít nainstalovány knihovny SoapySDR a ovladač konkrétního rádia.
Program lze sestavit i přímo ze zdrojového kódu příkazem cargo install --git https://github.com/dividebysandwich/SDRoxide, na Arch Linuxu je dostupný balíček přes AUR příkazem páru -S sdroxide. Kompletní binářky, kontrolní součty a seznam všech vydání jsou k dispozici na stránce GitHub Releases projektu.
Uživatelská příručka je publikována na GitHube a je zabudována přímo v aplikaci – vyvolatelná klávesou F1.
Závěr
SDRoxide je mladý, ale funkčně mimořádně ambiciózní projekt, který se snaží nahradit celý ekosystém samostatných SDR programů jediným nativním řešením napsaným v Rustu. Kombinace panadaptéru, digitálních módů, skimmerů, logování a 3D vizualizace kosmického počasí v jednom procesu je pro radioamatéra praktickým zjednodušením shacku. Jelikož se jedná o software v beta stadiu s aktivním vývojem, autoři doporučují zatím jej nepoužívat pro kritický provoz a chyby hlásit přes GitHub Issues. Zdrojový kód, binářky pro všechny platformy i kompletní dokumentace jsou volně dostupné na sdroxide.com a na GitHube projektu dividebysandwich/SDRoxide.
