Satellites that dropped out of a receiver's NAV-SAT report (set
below horizon, lost signal) were never removed from the sky tab's
store/trail/highlight-timer dicts, only on full receiver removal.
Over a long session this let ghost satellites accumulate without
bound, making table rebuilds and sky-plot rendering progressively
more expensive and the GUI increasingly laggy.
Replaces the static painted legend with real checkboxes (one per
GNSS system, color-swatched to match GNSS_COLORS) so users can
toggle which constellations show in the sky plot and satellite
table, mirroring the existing receiver-source filter checkboxes.
Add the Ver message parser and a fixed UbxQuery (was unused and had a
broken semaphore/state bug) to poll MON-VER once on connect. The CLI
prints hw/sw version and extensions; the GUI polls it per receiver,
pre-fills the read-only ID field with a connection counter and
rewrites it from the MOD= extension once the device answers, and
propagates the resolved display name to the Sky and Plot tabs so they
no longer show the stale placeholder ID.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XM4FNUjhu9x8df5Dp1hHvd
Trail history increased from 1h to 24h (86400 points). Added a spinbox
(0-24h, default 1h) next to 'Show Trails' to control how much trail is
rendered; spinbox is disabled when trails are off.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Removed Trail column from satellite table. Added a single 'Show Trails'
checkbox in the source selector box that enables/disables all trails at once.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Store up to 1 hour of (elevation, azimuth) history per satellite/source
- Trail column in satellite table (checkbox, default off); clicking the
column header toggles all trails on/off
- Trail rendered in GNSS color with alpha fading from 15 (oldest) to 200
(newest), subsampled to max 120 points for render performance
- Trail column fixed at 42 px to avoid checkbox + empty-text visual split
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
One card per receiver showing receiver ID, pDOP, visible satellites and
used satellites. Cards are added/removed dynamically with receivers.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Sky widget always gets the latest data immediately (off-thread render)
- Table rebuilds throttled to ~2 Hz via single-shot QTimer
- Cell values updated in-place when satellite set is unchanged, preserving
scroll position; full rebuild only when satellites appear/disappear
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>