Skip to content

Roadmap and Parity

mprattmd edited this page May 31, 2026 · 1 revision

Roadmap and Parity

This page summarizes what's done, what's partial, and what's planned. The authoritative, code-audited trackers live in the repo:


Status legend

  • ✅ done — verified
  • 🟡 partial — usable, with caveats
  • ⏳ in code — wired, but needs live RF / CMS / peer to verify
  • ❌ not started

"Needs RF" = needs the radio on the air; "needs CMS" = needs a reachable Winlink server; "needs peer" = needs another station to connect.


What works today

  • Bluetooth connect (BlueZ raw RFCOMM/SDP) — verified on UV-PRO.
  • Radio status — battery, channel, RSSI, region, GPS-lock telemetry.
  • Live voice RX/TX over Bluetooth audio (SBC) with press-and-hold PTT, mic gain/AGC, speaker volume.
  • APRS — receive/decode/station list; send messages with routes manager + destination picker; per-packet detail; create-APRS-channel helper; fixed/manual position.
  • APRS beaconing — one selector, two mutually-exclusive methods (radio built-in beacon / App-TNC beacon).
  • Map (OpenStreetMap) — markers, per-callsign tracks, time filter, marker sizing, radio + serial GPS markers, center-to-GPS, aprs.fi lookups.
  • GPS — radio position details + request fresh position; serial NMEA source.
  • Terminal — connectionless UI-frame send and connected-mode AX.25 sessions.
  • Packet capture — live list, decode detail, CSV export, load capture.
  • Channel builder — click-to-edit a tile, drag-and-drop, CSV import (CHIRP / RepeaterBook / native) + export, bank selector, load-all-banks, write-to-radio.
  • Contacts / address book with connection setup.
  • Winlink mail — local SQLite store, six folders + counts, compose with CC + attachments, reply/reply-all/forward, drafts, move, backup/restore, traffic log; internet or over-radio sync.
  • BBS host — connected-mode AX.25 mail drop.
  • DSP/audio extras — FFT waterfall, soft-modem (AFSK1200/PSK/G3RUH), WAV record/playback, audio clips, Morse/DTMF generate + local preview.
  • AppImage packaging + GitHub releases; macOS .app build.

Partially done (usable, with caveats)

  • Morse / DTMF — generate + local preview; on-air tone TX pending.
  • Soft-modem decode — wired (AFSK1200/PSK/G3RUH); demod unverified on RF.
  • Audio clips — record/name/play/delete; transmit-clip pending.
  • Multi-radio selector — inline dropdown only; no status-list dialog.

Not yet ported / planned later

Present in the original Windows app, not in the Linux/macOS build today:

  • Text-to-speech and speech-to-text (need portable engines, e.g. Whisper.net)
  • SSTV send/receive
  • AGWPE server
  • YAPP & torrent file transfer
  • Web server
  • ADS-B / dump1090
  • Self-update, detached tabs
  • Connection error dialogs, in-app pairing, radio rename
  • Some radio-settings knobs (dual-watch / scan / GPS-enabled toggles are read-only)

The porting approach

The guiding principle is port, don't reinvent — most gaps already exist as working code in src/. The pattern: move logic into the portable Core (keep the WinForms app building on it, CI-verified on Windows), then build the Avalonia UI. Features are marked ✅ only when verified — offline, on RF, against a CMS, or with a peer.

See Architecture for the layering this builds on.

Clone this wiki locally