DecoDXLog je staničný log od IU8LMC, napísaný v C++20 s rozhraním Qt6/QML. Patrí do rodiny aplikácií Decodium – spolu s dekodérom Decodium a programom DecoRTTY zdieľa rovnaký vizuálny jazyk, rovnaké klávesové skratky a rovnakú filozofiu práce. Databázou je SQLite v režime WAL, čo znamená offline-first prístup bez externého servera: celý log, všetky profily, histórie revízií a stavy QSL žijú v jednom súbore na disku. Program je dostupný pod licenciou GPL-3.0, zdrojové kódy sú verejné na GitHube (github.com/iu8lmc/DecoDXLog). Aktuálna verzia je 0.5.2.
V článku sa dočítate
Príjem QSO z Decodium, WSJT-X a JTDX
DecoDXLog prijíma zalogované QSO cez UDP na porte 2237 (predvolená hodnota, konfigurovateľná, multicast voliteľný) od Decodium, WSJT-X, JTDX a kompatibilných programov. Preferovanou správou je LoggedADIF, ktorá prenáša všetky ADIF polia bez straty; ak nedorazí do 1,5 sekundy, program prejde na záložný formát QSOLogged. Obe varianty sa neduplikujú – do logu sa zapíše vždy jedno QSO. Duplicity sú konfigurovateľné: predvolené okno je ±2 minúty pre digitálne módy a ±10 minút pre ručné záznamy, pričom sa dá nastaviť osobitne pre každý mód.
Stav UDP klienta je neustále viditeľný – program zobrazuje, kto je pripojený, na akej frekvencii a v akom móde pracuje a či je TX aktívny. Ak Decodium prestane posielať správy, DecoDXLog upozorní operátora varovným hlásením.
FT2 ako mód prvej triedy
FT2 je v DecoDXLog natívne podporovaný mód. V ADIF sa eviduje ako MODE=MFSK, SUBMODE=FT2 a v celom rozhraní sa zobrazuje skratkou FT2 – nie ako generický MFSK. Táto integrácia siaha hlbšie: v schéme databázy existuje dedikovaný FT2 Award panel, ktorý je vždy viditeľný a sleduje počet DXCC entít a lokátorov potvrdených práve v tomto móde, vrátane stavu potvrdení cez LoTW. Simulátor na testovanie bez rádia (decodxlog_udpsend) predvolene vysiela QSO v móde FT2, čo ukazuje, kde sú vývojárske priority autora.
Callbook, DXCC a automatické dopĺňanie
Program podporuje dve callbook služby: QRZ.com XML API a HamQTH. Prihlasovacie údaje sú uložené v systémovom úložisku kľúčov (Windows Credential Manager, macOS Keychain, Secret Service na Linuxe) – v konfiguračnom súbore sa ukladá výlučne meno používateľa. Výsledky dotazov sa uchovávajú v pamäti jeden deň, takže opakované QSO s rovnakou stanicou nevyžadujú sieťovú komunikáciu.
Pri každom novom QSO callbook doplní iba prázdne polia – meno, QTH, šesťznakový lokátor, adresu, štát, kraj a zóny. Ak primárna callbook služba daný nominatív nepozná alebo neobsahuje polohu stanice, program sa opýta automaticky aj druhej a obe odpovede zlúči. QSO zalogované cez UDP si doplnia tieto údaje bezprostredne po uložení, bez zásahu operátora.
Určovanie DXCC entity prebieha z databázy cty.csv od AD1C (country-files.com), ktorá je priamo zahrnutá v spustiteľnom súbore a dá sa aktualizovať z nastavení programu. Na každé importované alebo prijaté QSO sa automaticky doplnia: entita DXCC, krajina, CQ zóna, ITU zóna a kontinent. Ak operátor pracuje novú DXCC entitu alebo nové pásmo, program to hlási priamo pri logovaní textom NEW DXCC a NEW DXCC ON pásmo.
Diplomy, štatistiky a mapa
DecoDXLog 0.5.2 vypočítava nasledujúce diplomy priamo z logu:
| Diplom | Popis |
|---|---|
| DXCC | Entity DXCC podľa zoznamu AD1C |
| DXCC Challenge | Pásmové sloty 160–6m (11 pásiem), cieľ 1000 |
| FT2 Award | DXCC a lokátory potvrdené v móde FT2 |
| WAC / WAAC | Všetky kontinenty, resp. africké entity |
| WAZ | 40 CQ zón |
| WAS | 50 amerických štátov |
| WPX | Prefixy nominatívov |
| WAJA / AJD | 47 japonských prefektúr / 10 japonských districtov |
| JCC / JCG | Japonské mestá a okresy (z poľa CNTY) |
| IOTA, POTA, SOTA, WWFF | Medzinárodné aktivačné programy |
| Lokátory | Mriežkové polia, pracované a potvrdené |
Pre každý diplom program zobrazuje tabuľku pásmových slotov (● potvrdené, ○ pracované) vrátane celkových súčtov za každé pásmo. Zoznam chýbajúcich entít, zón alebo štátov je k dispozícii na jeden klik. Štatistiky sú v samostatnom okne a zahŕňajú QSO podľa roku, mesiaca, hodiny UTC, pásma, módu a kontinentu. Zaujímavou funkciou je mapa tepla pásmo/hodina, ktorá z vlastného logu operátora vizuálne ukazuje, kedy bolo dané pásmo otvorené – užitočný nástroj pri plánovaní prevádzky. Svetová mapa obsahuje pobrežné línie z databázy Natural Earth (verejná doména, priamo v spustiteľnom súbore), šedú líniu podľa aktuálnej polohy Slnka, pracované lokátory a farebne odlíšené spoty z clustra.
Logbook, filtrovanie a správa QSO
Tabuľka logu zobrazuje voliteľné stĺpce vrátane CQ zóny, ITU zóny, IOTA, štátu, kraja a stĺpcov QSL stavu (L Q C E). Každý QSO záznam má históriu revízií: každá úprava vytvára novú revíziu, staré verzie sú dostupné a obnoviteľné. Vymazanie je mäkké – QSO ostáva v histórii a dá sa vrátiť. ADIF import a export sú bezstratové: polia bez priradenia v schéme sa ukladajú do adif_extra a pri exporte vychádzajú identicky. Logbook podporuje filtrovanie podľa pásma, módu, mesiaca, dátumového rozsahu, entity DXCC, stavu QSL, profilu stanice a štítkov; filtre sa dajú ukladať pod menom a opätovne aplikovať. Ručné aj hromadné akcie na vybraných riadkoch zahŕňajú pridanie alebo odobranie štítku a export do ADIF. Klávesnica pokrýva všetky hlavné funkcie: Ctrl+N nové QSO, Ctrl+F hľadanie, Ctrl+I import, Ctrl+E export, Ctrl+K cluster, Ctrl+T aktivácia.
DX Cluster, rotátor a CW keyer
Okno DX Clustra (Ctrl+K) integruje viacero zdrojov naraz: telnetové uzly DX Spider a CC Cluster, Reverse beacon Network pre CW/RTTY aj FT8/FT4, HamAlert (prihlasovacie heslo v systémovom úložisku) a POTA aktivácie. Prihlasovanie prebieha automaticky pod nominatívom profilu vo formáte CALL-2, takže Decodium môže mať vlastnú paralelnú session na tom istom uzle. Každý spot je v reálnom čase porovnaný s logom a označený stavom: NEW DXCC, nové pásmo, nový mód, nový slot, už pracovaný, nepotvrdená entita, alebo používateľ LoTW. Filtre pokrývajú pásmo, mód, stav, kontinent DX stanice aj spottujúcej stanice, zdroj, nominatívy s wildcard, minimálny SNR skimmera a vek spotu; filtre sa dajú ukladať pod menom. Pravidlá upozornení pracujú s hlasovými oznamami cez systémové hlasy OS (taliančina a angličtina, fonetická abeceda). Dvojité kliknutie na spot priamo nastaví frekvenciu a mód v Decodiu.
Rotátor je integrovaný cez protokol DecoRotor na WebSocket porte 8765 alebo cez štandardný rotctld na porte 4532; program sa nikdy nepripája priamo na sériovú linku. Ovládacia plocha reprodukuje celú stránku „Controllo“ z DecoRotoru vrátane stupnicovej koruny, azimuálnej mapy s kruhovými vzdialenosťami, šiestich priamych pamätí a punta na stupne alebo lokátor. Smer antény je zobrazený aj na mape s clusterovými spotmi.
CW keyer a dekodér sú zabudované priamo v programe. Panel CW obsahuje osem makier na klávesoch F1–F8 (premenné {CALL}, {MYCALL}, {RST}, {NR}, {EXCH}), riadok pre okamžitý vstup textu a dekodér, ktorý číta audio výstup rádia, automaticky vyhľadá nosný tón a priebežne sa prispôsobuje rýchlosti operátora. Komunikácia s rádio prebieha cez Hamlib/rigctld; program vie rigctld aj sám spustiť, ak pozná model rádia a sériový port.
Contest a QSL funkcie
Contestový režim sa aktivuje klávesovou skratkou Ctrl+T (aktivácia POTA/SOTA/WWFF/IOTA) alebo Ctrl+Shift+T (contestové okno s prúdovým logovaním). Program zobrazuje duplicity v reálnom čase, sleduje tempo QSO za posledných 10 minút aj za poslednú hodinu, počíta QSO/h a zobrazuje, koľko spojení ešte chýba na valídnu aktiváciu (10 QSO pre POTA, 4 pre SOTA). Export do formátu Cabrillo 3.0 obsahuje hlavičku s kategóriami, lokátorom, skóre a soapbox; frekvencie sú v kHz, módy podľa Cabrillo konvencie (CW/PH/RY/DG/FM). Contestová session prežije reštart programu – je uložená priamo v logu.
QSL odosielanie pokrýva LoTW (podpis ADIF cez nainštalovaný TQSL, certifikát ostáva na mieste), QRZ Logbook (API kľúč), eQSL (meno a heslo) a Club Log (e-mail, heslo, nominatív, API kľúč). Každý z týchto servisov sa dá nastaviť na automatické odosielanie po každom QSO alebo spúšťať ručne. Stav QSL pre každú službu je uložený v samostatnej tabuľke a zobrazený v logu stĺpcami L (LoTW), Q (QRZ), C (Club Log), E (eQSL). Sťahovanie potvrdení z LoTW prebieha z lotwreport.adi, len nové záznamy od posledného syncu, manuálne alebo automaticky každých 6, 12 alebo 24 hodín. Párovanie QSO s potvrdeniami zodpovedá metodike LoTW: nominatív, pásmo, skupina módov a čas v tolerancii ±30 minút.
DecoDXLog Cloud a otvorený zdrojový kód
DecoDXLog Cloud je voliteľná synchronizačná vrstva medzi viacerými počítačmi. Na rozdiel od klasického cloud logu synchronizuje nielen QSO, ale aj profily stanice a všetky nastavenia – tému, jazyk, filtre, konfiguráciu clustra, zoznam zálohovacích adresárov, adresy susedných programov. Druhý počítač po prvej synchronizácii nájde identickú stanicu, nie len jej podobizeň. Prihlásenie prebieha nomináciou a heslom; program ukladá len token v systémovom úložisku kľúčov. Heslá externých služieb (QRZ, LoTW, Club Log, eQSL, HamQTH, HamAlert) sa synchronizujú zašifrované: šifrovanie je AES-256-GCM s kľúčom odvodeným cez PBKDF2 z hesla Cloud účtu; server pozná heslo len ako odtlačok Argon2, samotný šifrovaný blok bez tohto hesla neotvoriť. Program funguje aj úplne offline – Cloud je voliteľný, nie podmienka.
Zdrojový kód je dostupný na adrese github.com/iu8lmc/DecoDXLog pod licenciou GPL-3.0. Projekt zahŕňa 22 skupín automatizovaných testov pre jadro programu a 73 testovacích prípadov pre cloudovú službu. Kompilácia na Windows vyžaduje Qt ≥ 6.5 s modulmi Quick, QuickControls2, Sql, Network a Test; na správu závislostí slúži CMake + Ninja v prostredí MSYS2. CI pipeline na GitHube produkuje pri každom commite artefakt decodxlog-windows-x64 pripravený na spustenie bez inštalácie.
Zdrojový kód, dokumentácia a aktualizácie sú dostupné na github.com/iu8lmc/DecoDXLog. Stránka projektu s prehľadom funkcií je na ft2.it/decodxlog/.
