• rouggy released this 2026-07-23 01:24:34 +07:00 | 342 commits to main since this release

    Changelog

    • chore: release v0.20.9
    • fix: the Flex panel DAX button now toggles the TRANSMIT-bar DAX (transmit set dax=), not the slice RX DAX channel — this is the button that routes TX audio through DAX (WSJT-X); state follows changes made in SmartSDR too
    • feat: DAX selector on the Flex panel — routes the active slice's RX audio to a DAX channel (slice dax=0-8, Off..8 dropdown next to the antenna selection, highlighted when active); changelog updated
    • ui: rebalance the Flex panel columns — RIT/XIT move to the bottom of the Transmit card, antenna RX/TX selection to the top of the Receive card (the Receive column had grown tall with the v4 DSP rows); changelog wording updated
    • feat: multiple amplifiers + SmartSDR v4 DSP filters
    • feat: day batch — upload results surfaced as toasts (silent LoTW failures from the right-click send looked like nothing was sent); live selection count + Select all/Unselect all toggle in the grid toolbar; active filters bypass the row limit (all matches shown, 10k safety cap); NET Control: same right-click menu on worked-before + drag&drop roster<->on-air (drop on roster logs the QSO); compact mode restores previous window size/position; advanced-filter field renamed Station callsign; optional DXCC-style digital-mode grouping (Settings->General) for matrix badges + cluster colouring; changelog 0.20.9 entries (version NOT bumped)
    • fix: PGXL status-bar chip and Station Control widget read OPERATE from the Flex when it reports the amp (the direct GSCP status doesn't carry operate state) — toggle then goes through FlexAmpOperate like the Flex panel; direct TCP link stays as fallback; log distinct raw PGXL status payloads to map unknown fields
    • feat: v0.20.8 — microHAM ARCO rotator native control (GS-232A over LAN TCP or USB serial, no PstRotator); amplifier OPERATE/STANDBY toggle on the status-bar chip for all three amps (PGXL direct operate command now wired + operate state parsed); PGXL operate button in the Station Control widget; NET Control auto-selects the next on-air station after logging and gains a 'Log everyone' button; changelog + version bump
    Downloads
  • rouggy released this 2026-07-22 02:48:23 +07:00 | 350 commits to main since this release

    Changelog

    • chore: release v0.20.8
    • feat: clicking the status-bar amplifier chip toggles OPERATE <-> STANDBY (SPE/ACOM, optimistic flip reconciled by the poll; disabled offline) — PGXL still opens Settings, it has no standby command
    • feat: amplifier controls without a Flex/Icom panel — Station Control widget (SPE/ACOM full control, PGXL fan) + status-bar chip (green OPERATE / orange STANDBY / red offline, click opens Settings); warn with a toast when activating a profile whose MySQL is unreachable instead of silently staying on the old logbook
    Downloads
  • rouggy released this 2026-07-21 23:26:34 +07:00 | 353 commits to main since this release

    Changelog

    • chore: release v0.20.7
    • docs: add Discord server badge to the top of the README (EN/FR)
    • fix: raise MySQL pool 8->16 — 8 starved the instance's own live-sync polling (revision + grid refresh + live_status + chat), so the grid stopped showing other operators' QSOs; 16 avoids the stall and still fits ~15 ops under max_connections=300
    • diag: log slow QSO inserts (>2s) with call/band/mode; rotate the app log to .1 at 10MB instead of deleting it, so the previous session's diagnostics survive
    • fix: log returns as soon as the QSO row is inserted; award_refs/recording/uploads/eQSL now run off the critical path (both manual and UDP) — a busy multi-op MySQL no longer freezes the entry form ~40s waiting on the award_refs UPDATE
    • feat: sync the host CW keyer speed (wkWpm) to the FlexRadio's actual CW speed — including changes made on the radio/SmartSDR, not just the panel slider — so CW-length estimates (auto-call gap) match reality when using Flex CWX
    • fix: logs immediately at its position instead of waiting the full CW-duration estimate first (buffered keyers keep sending; logging never interrupts them) — was delaying the log up to ~10s; only the final segment still waits, for auto-call timing
    • docs: changelog entry for 0.20.7 (multi-op MySQL connection fix, By-Continent stats total)
    • fix: shrink MySQL connection pool (50->8) so a multi-op event doesn't exhaust the shared server's max_connections (Error 1040: Too many connections), which was silently failing the on-air widget/award_refs/grid reads and making the UI look frozen
    • fix: stats By Continent donut totals now match the QSO count (bucket blank/unknown continents as 'Unknown' instead of dropping them; keep the Continents metric counting real continents only)
    Downloads
  • rouggy released this 2026-07-21 16:57:20 +07:00 | 363 commits to main since this release

    Changelog

    • chore: release v0.20.6
    • docs: changelog entry for 0.20.6 (amp card in Flex panel, faster CAT+MySQL startup, no lost QSOs, instant stations-on-air, LOGQSO position, relay fixes)
    • fix: 'stations on air' widget updates instantly after a QSO (UDP/FT8 path now emits qso:logged; publishLiveStatus emits livestatus:updated so the widget re-reads exactly when the shared row changes) — was lagging ~15-45s behind the ON-AIR badge
    • fix: UDP-logged QSOs fall back to the offline outbox on DB failure (were silently lost); speed up MySQL connect (batch migration checks into 1 query, connect direct-to-DB first) — was ~40s on a high-latency link
    • fix: serialise UDP QSO logging (lookup+dedup+insert) so multi-stream MSHV (4 QSOs at once) queues instead of firing concurrent lookups/DB writes that got 'too many requests'
    • fix: auto-call gap respected again (wkSend already waits for the send; runAutoCall no longer double-counts it, so a 4s gap is 4s not ~13s)
    • fix: start CAT before the MySQL logbook connect — Flex/CAT no longer waits ~30s behind a slow remote-MySQL dial at launch
    • fix: cleanly stop CAT (and release relay handles) on shutdown — FlexRadio kept our API client registered, making the next launch take ~30s to reconnect
    • feat: include band in the self-spot toast (Spotted by X on 20m with ...)
    • fix: now logs at its position in the macro (splits the macro there), and ESC/Stop before it completes cancels the pending log
    • fix: pin bottom status bar — root no longer shows a horizontal scrollbar that overlapped it in a small window
    • fix: cache relay-board drivers so Denkovi/USB-serial boards stay connected
    • docs: update README (EN/FR) — SPE Expert amp, Station Control relays, Flex CWX keyer, statistics dashboard, What's new dialog
    • fix: drain SPE status backlog so display is current (was ~15s stale); ON now pulses DTR (0x0B is level-only); power-level cycle waits for real status change
    • fix: SPE card shows 'SPE offline' instead of 'PowerGenius offline'
    • feat: SPE amp ON/OFF buttons and Low/Mid/High power-level control (keystroke codes best-guess from APG, pending hw verification)
    • fix: correct SPE band-code map (00=160m,01=80m,02=60m...confirmed on hw); add output-power bar to SPE amp card
    • feat: show band on SPE amp card, spell out power level (Low/Mid/High), larger status text
    • fix: use official SPE band-code table from the manual (00=60m,01=160m,...)
    • fix: correct SPE status CSV field alignment (leading empty field shifts indices +1); decode band code; OPERATE/STANDBY now reflects real amp state
    • fix: put Mode Split By Band and By Mode side by side on the same row
    • refactor: remove redundant By Band chart, keep Mode Split By Band in its place
    • fix: hide the entire Flex-reported amp card when PowerGenius is not the selected amp type
    • debug: log raw SPE status frame on change (to verify CSV field alignment on real hw)
    • feat: SPE Expert amplifier card in the Flex panel (OPERATE/STANDBY + live status)
    • ui: EN/FR toggle in the What's-new dialog (defaults to UI language)
    • chore: check for updates every 5 minutes (was 10)
    • feat: re-check for updates when opening Help - About (no more stale 'up to date')
    Downloads
  • rouggy released this 2026-07-21 05:21:55 +07:00 | 391 commits to main since this release

    Changelog

    • chore: release v0.20.5
    • feat: Help - What's new button to reopen the changelog anytime
    • feat: What's-new changelog dialog on first launch after an update (EN/FR)
    • fix: activity chart uses rolling chronological windows (real dates), not cyclical
    • feat: stats activity-over-time granularity selector (timeline / day / week / month / year)
    • feat: stats — per-band mode split (CW / phone / data) stacked bar chart
    • ui: compact Stations-on-air rows to single line so 5+ fit without scrolling
    • Revert "fix: UDP-logged QSOs adopt the active profile's station callsign (Club Log upload blocked)"
    • fix: UDP-logged QSOs adopt the active profile's station callsign (Club Log upload blocked)
    • fix: who's-on-air freq/appearance lag — prompt publish on activity + 5s widget poll
    • fix: Stations-on-air widget lagged minutes (timer reset by dbConn object churn)
    • remove CW decoder (audio->text) entirely; fix CWX macro not stopping on call typing
    • feat: SPE Expert amplifier control (serial/TCP) — OPERATE toggle + live status
    • feat: generalize Settings 'Power Genius' into 'Amplifier' (type + serial/IP transport) for SPE Expert
    • ui: label both USB relay backends as 'Denkovi USB' (FT245/D2XX vs serial/COM)
    • feat: Denkovi USB 4/8 (selectable) + generic USB-serial relay board (CH340/LCUS)
    • feat: Denkovi USB 8-relay board (FT245 D2XX bit-bang)
    • feat: Flex CWX type-ahead backspace (cwx erase) — phase 2
    • fix: ESC now stops the active CW engine (Icom/Flex), not just WinKeyer
    • feat: FlexRadio CWX CW keyer (send/stop/speed) — no WinKeyer/SmartCAT needed
    • fix: Antenna Genius buttons ignored clicks while the CW decoder ran
    • chore: DDFM catalog file updated from Publish-to-catalog (address+QTH postal OR-rules, full department reference list)
    • ui: widen the Award management modal (max-w-6xl, 95vw) so the fuller footer fits
    • feat: rename the database from Settings, keeping all config
    • feat: Publish-to-catalog export for awards (edit in UI, version, ship to team)
    • feat: ship DDFM v2 (postal-code OR-rule) via the award catalog so it reaches the team
    • fix: re-materialize award_refs so new matching rules reach existing QSOs
    Downloads
  • rouggy released this 2026-07-20 17:06:32 +07:00 | 418 commits to main since this release

    Changelog

    • chore: release v0.20.4
    • fix: wire up File - Exit (was disabled and had no handler)
    • fix: clear entry-form award refs when the callsign is wiped
    • feat: materialize award references into the QSO row (award_refs column)
    • fix: OmniRig reads VFO A first (FreqA→Freq fallback), fixing IC-7610 CAT
    • fix: offline operators removed from live_status + award-column visibility
    Downloads
  • rouggy released this 2026-07-20 06:25:28 +07:00 | 424 commits to main since this release

    Changelog

    • chore: release v0.20.3
    • feat: rate meter OP/Team display, on-air-only station widget, column-filter count
    • feat: QSO rate meter — per-operator AND team totals
    • fix: auto-update relaunch — clear Mark-of-the-Web + wait for exit
    Downloads
  • rouggy released this 2026-07-20 00:11:06 +07:00 | 428 commits to main since this release

    Changelog

    • chore: release v0.20.2
    • fix: relay auto-control no longer toggles on every launch/close
    • fix: ON AIR badge correct at launch + faster to appear
    • fix: SetExtra used the wrong column name (extras -> extras_json)
    • feat: ON AIR status-bar badge + auto-updater UI (10-min check, progress)
    • feat: in-app auto-updater — download, swap and relaunch
    • feat: live operator status goes offline after 5 min idle, online on log
    • fix: no duplicate logs on repeat Enter + ESC stops the callsign lookup
    • fix: QSL/recording no longer revert a QSO's upload status + faster logging
    • fix: revert upload serialisation — it stranded QSOs at R (regression)
    • fix: IC-7610 VFO A over OmniRig + faster Icom LAN reconnect
    Downloads
  • rouggy released this 2026-07-19 08:12:35 +07:00 | 439 commits to main since this release

    Changelog

    • chore: release v0.20.1
    • fix: restrict RST fields to valid report values
    • feat: modernise the Statistics panel with colour
    • fix: serialise auto-uploads so a burst doesn't 403 and leave QSOs at R
    Downloads
  • rouggy released this 2026-07-19 07:34:23 +07:00 | 443 commits to main since this release

    Changelog

    • chore: release v0.20.0
    • feat: relay auto-control by frequency / band (PstRotator-style)
    • fix: blank ADIF monitor settings panel (hooks in a called-as-function panel)
    • fix: Club Log status R->Y->R flicker on UDP auto-log
    • feat: ADIF monitor — auto-import QSOs from watched external ADIF files
    • feat: header rate/propagation colours + CW macro word space
    • fix: clearer Club Log / FCC ULS upload-download diagnostics
    • chore: regenerate Wails bindings for GetQSORate / QSORate
    • feat: QSO rate meter (10/60 min) in the header
    Downloads