SDRoxide to nowe radio definiowane programowo (SDR) to transceiver open source napisany w całości w języku Rust. Autorem projektu jest Josef, OE3JJS. Program działa natywnie w systemach Linux, macOS i Windows (zarówno na architekturach x86-64, jak i ARM64) lub jako serwer, który przesyła cały interfejs do dowolnej przeglądarki internetowej za pośrednictwem WebAssembly. Projekt jest obecnie w fazie beta i jest aktywnie i szybko rozwijany.
W artykule przeczytasz
Co przynosi SDROXIDE?
Główną ideą SDROXIDE jest ujednolicenie funkcji, które radioamatorzy musieli dzielić pomiędzy kilka odrębnych programów - adapter pan, 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, redukcję szumów za pomocą sieci neuronowej, wbudowane skimmery, pełny zestaw trybów cyfrowych i podgląd pogody kosmicznej w czasie rzeczywistym w 3D.

Obsługiwane urządzenia
SDROXIDE uzyskuje dostęp do sprzętu za pośrednictwem ośmiu rodzin wtykowych zapleczy, obejmujących szeroką gamę powszechnie używanych odbiorników SDR i TCVR.
| Zaplecze | Obsługiwane urządzenia | Notatka |
|---|---|---|
| RTL-SDR | Klucze RTL2832U z tunerami R820T/T2, R828D | Natywny sterownik Rust, brak SoapySDR i libusb; pasmo HF przez Blog V4 lub bezpośrednie próbkowanie; tylko odbiór |
| RX-888 | RX-888 i Mk2 (ADC LTC2208 16-bit, Cypress FX3) | Natywny sterownik Rust, automatyczne przesyłanie oprogramowania układowego; próbkowanie 0–32 MHz bezpośrednio do 129,6 Msps; tylko odbiór |
| SoapySDR | HackRF One, LimeSDR i inne urządzenia SoapySDR | Pełny panadapter, skimmery i wewnętrzna demodulacja; TX zgodnie z możliwościami sprzętowymi |
| OpenHPSDR | Hermes/Apache Labs Ethernet SDR | Zarówno protokół 1, jak i protokół 2, częstotliwość DDC 48 kHz – 1536 kHz |
| TCI | ExpertSDR3 / SunSDR | Za pomocą protokołu WebSocket TCI, odbiór szerokopasmowego IQ i zarządzanie wydajnością |
| SmartSDR (eksperymentalny) | FLEX-6000 / FLEX-8000 | Łączy się jako klient GUI za pośrednictwem strumienia DAX IQ; nie zostało to jeszcze zweryfikowane na rzeczywistym sprzęcie |
| PlutoSDR (eksperymentalny) | ADALM-Pluton (9361/9363 r. n.e.) | Za pośrednictwem IIOD bez potrzeby libiio; szerokopasmowy odbiór i transmisja IQ; nie zweryfikowano jeszcze na rzeczywistym sprzęcie |
| KOT / Audio | Icom (CI-V), Yaesu, Xiegu | Kontrola częstotliwości i trybu za pomocą CAT, demodulowany dźwięk za pomocą karty dźwiękowej USB |
Pred ktorýkoľvek z týchto backendov je možné zaradiť HF upkonvertor (napríklad Ham It Up, SpyVerter), transvertor alebo LNB przesunięcie dla odbioru satelitarnego – poprzez wybranie z listy wstępnie ustawionych wartości lub bezpośrednie wprowadzenie przesunięcia w hercach.
Wideo: SDRoxide w praktyce
Wszystkie tryby, jeden program
Każdy tryb działa jako natywny modem Rust bezpośrednio w procesie programowym – bez zewnętrznych dekoderów i bez konieczności stosowania wirtualnych kabli audio między programami. Tryby głosowe obejmują LSB, USB, AM, SAM, DSB, NFM i WFM. Dekoder CW automatycznie wykrywa prędkość sygnału i oferuje również transmisję z klawiatury z funkcją wpisywania z wyprzedzeniem. FT8/FT4 działa jako automatyczny sekwencjonujący moduł QSO z mapą świata i automatycznym logowaniem. JS8 obsługuje wszystkie cztery prędkości i jest kompatybilny z JS8Call.

FreeDV RADE zapewnia neuronowy głos cyfrowy, czytelny znacznie poniżej progu standardowego SSB. Klasyczne tryby klawiatury PSK31 i RTTY są obsługiwane dwukierunkowo. Rodzina trybów MFSK dla słabego sygnału obejmuje Olivia, THOR i FSQ (z warstwą FSQCALL). Hellschreiber obsługuje warianty Feld Hell, Slow, X5, X9, FSK245, FSK105 i Hell80. SSTV obsługuje odbiór i transmisję w formatach Scottie, Martin i Robot. Dodatkowe tryby obejmują faks pogodowy (WEFAX) z automatycznym uruchamianiem/zatrzymywaniem zgodnie z harmonogramem stacji, RIFP do pakietowej transmisji obrazów oraz RF Paint do rysowania tekstu i obrazów bezpośrednio na wodospadzie.
Inne funkcje
SDROXIDE zawiera cztery mechanizmy redukcji szumów, każdy z trzema poziomami intensywności – RNN (RNNoise), DFNR (DeepFilterNet3 z głębokością 6/12/24 dB), SPEC (libspecbleach) i wbudowany spektralny NR. Zawiera również impulsowy korektor szumów i adaptacyjny filtr wycinający (ANC) do tłumienia tonów stałych (na przykład podczas strojenia).
Wbudowane skimmery dla CW, PSK31 i RTTY wskazują zdekodowane znaki wywoławcze bezpośrednio na wodospadzie w całym paśmie widzialnym. Program obsługuje skanowanie kanałów pamięci i zakresu częstotliwości z krokiem 5/6,25/8,33/10/12,5/25 kHz, skanowanie FFT w radiach IQ, próg dB lub blokadę szumów oraz tryby CARRIER/TIMED/MANUAL do wznawiania po zatrzymaniu. Dekodowanie CTCSS i DCS jest dostępne w trybie FM, w tym opcjonalna blokada szumów tonowych.
Dziesięcioslotowy klucz głosowy steruje transmisją z panelu, klawiatury numerycznej, pada MIDI, przełącznika nożnego lub za pośrednictwem biblioteki Hamlib, z plikami WAV mono 48 kHz. Program oferuje również nagrywanie odebranego dźwięku na dysk jednym kliknięciem. Specjalny rozdział to trójwymiarowy widok pogody kosmicznej na żywo – Układ Słoneczny ze Słońcem, Ziemią i Księżycem na prawdziwych efemerydach, owal zorzy polarnej według modelu NOAA OVATION, śledzenie satelitów za pomocą SGP4 z tabelami przelotów, dane CME z NASA CCMC DONKI oraz panel promocyjny z MUF interpolowanym z sieci jonozonowej GIRO, indeksem Kp/A, strumieniem F10.7 i klasą rentgenowską GOES.
Skanowanie pasm planu pasma, znaczniki RIT/XIT, śledzenie monitora TX na żywo i etykiety stacji nadawczych są nanoszone bezpośrednio na wodospad, co pozwala operatorowi zobaczyć kontekst pasma bez konieczności przełączania się między oknami.
Tabela specyfikacji SDROXIDE
| Kategoria | Specyfikacja |
|---|---|
| Renderer wodospadowy | GPU (wgpu), krzywa widmowa powyżej wodospadu, pełna liczba klatek na sekundę |
| Rozmiar FFT | 2048 / 4096 / 8192 / 16384 / 32768 |
| Schematy kolorów | Klasyczny, Viridis, Gray, Icom, Neon, Synthwave, Matrix, Tron |
| Redukcja szumów | RNN, DFNR (DeepFilterNet3), SPEC (libspecbleach), wbudowany spektralny NR – każdy w trzech poziomach |
| AGC | Wyłączony / Wolny / Średni / Szybki, z funkcją zawieszenia |
| VFO | A/B z podziałem, zamianą i kopiowaniem; pododbiornik na nieaktywnym VFO; RIT i XIT ±9999 Hz w krokach co 5 Hz |
| Łów | Skanowanie pamięci i zasięgu, kroki 5–25 kHz, przemiatanie FFT w radiach IQ |
| Nadawczy | PTT, TUNE nosná, drive a tune-drive, mikrofónny zisk, meter výkon/SWR/ALC, ham-band TX lockout predvolene zapnutý |
| Systemy operacyjne | Linux, macOS, Windows – x86-64 i ARM64 |
| Tryby pracy | Natywna aplikacja desktopowa, –server (WebAssembly do przeglądarki), –connect (natywny zdalny klient), –console (wodospad ASCII) |
| Bez sprzętu | – wbudowany generator sygnału siggen, – odtwarzanie plików z surowymi danymi CF32 IQ, – lista możliwości urządzenia probe |
Zdalna obsługa
SDROXIDE oferuje trzy tryby działania z jednego pliku binarnego. Natywna aplikacja desktopowa działa bezpośrednio na lokalnym urządzeniu SDR lub CAT, zapewniając najniższe opóźnienie. Tryb serwer-przeglądarka (uruchamiany poleceniem SDRoxide --server) przesyła cały interfejs do dowolnej przeglądarki w sieci bez konieczności instalacji po stronie klienta. Natywny klient zdalny (SDRoxide --connect host:4950) umožňuje ovládať vzdialenú stanicu z plnohodnotného desktopového klienta – takzvané „ShackRozwiązanie „z dowolnego miejsca”.

Logowanie jest zabezpieczone nazwą użytkownika i hasłem, które są wymagane przy każdym połączeniu zdalnym – w przeglądarce, w kliencie –connect oraz w widoku 3D. Zmiana hasła następuje bez konieczności ponownego uruchamiania komputera, a nieuwierzytelnione połączenie nigdy nie zajmuje miejsca w sesji klienta. Autorzy podkreślają, że logowanie nie jest szyfrowane: poza zaufaną siecią lokalną zaleca się uruchomienie serwera za pośrednictwem sieci VPN lub odwrotnego proxy HTTPS.
Pobierz: macOS, Windows, Linux, klient internetowy
SDROXIDE jest dostępny dla systemów Linux, macOS i Windows, zarówno na architekturach x86-64, jak i ARM64. Domyślna kompilacja działa bez żadnych dodatkowych zależności – jest odpowiednia dla radiotelefonów CAT, sieciowych urządzeń FlexRadio i ADALM-Pluto, kluczy RTL-SDR oraz odbiorników RX-888, których sterowniki i oprogramowanie układowe są wbudowane bezpośrednio w plik binarny. Kompilacja z SoapySDR dodaje obsługę szerokopasmowych urządzeń SoapySDR (HackRF, LimeSDR i podobnych), do których wymagane są biblioteki SoapySDR oraz sterownik specyficzny dla danego radia.
Program można również skompilować bezpośrednio z kodu źródłowego, korzystając z polecenia instalacja ładunku --git https://github.com/dividebysandwich/sdroxide, w Arch Linux pakiet jest dostępny przez AUR za pomocą polecenia para -S sdroxidePełne pliki binarne, sumy kontrolne i lista wszystkich wydań są dostępne na stronie projektu w serwisie GitHub Releases.
Instrukcja użytkownika jest opublikowana w serwisie GitHub i jest bezpośrednio wbudowana w aplikację. Dostęp do niej można uzyskać, naciskając klawisz F1.
Wniosek
SDRoxide to młody, ale funkcjonalnie niezwykle ambitny projekt, który próbuje zastąpić cały ekosystem oddzielnych programów SDR jednym natywnym rozwiązaniem napisanym w języku Rust. Połączenie panadaptera, trybów cyfrowych, skimmerów, rejestrowania i wizualizacji pogody kosmicznej 3D w jednym procesie to praktyczne uproszczenie Shack dla radioamatorów. Ponieważ jest to oprogramowanie w fazie beta, z aktywnym rozwojem, autorzy zalecają na razie nieużywanie go do operacji krytycznych i zgłaszanie błędów za pośrednictwem GitHub Issues. Kod źródłowy, pliki binarne dla wszystkich platform oraz pełna dokumentacja są dostępne bezpłatnie na stronach sdroxide.com i https://www.sdroxide.com/. Projekt GitHub dividebysandwich/sdroxide.
