fix(waterfall): pace TX/FFT-fallback rows to radio line_duration (#2666). Principle I.#2667
Merged
Merged
Conversation
…). Principle I. The TX waterfall scrolled faster than RX because TX (and the RX FFT-fallback path after native tiles time out) pushed one row per panadapter FFT frame (~25 fps), while RX native tiles arrived at the radio's line_duration cadence (default 100 ms = 10 rows/sec). Throttle pushWaterfallRow() to m_wfLineDuration ms/row using a last-row timestamp so FFT-derived rows scroll at the same rate as native tiles. line_duration is the FlexLib-authoritative rate set via "display panafall set <wfId> line_duration", so reusing it is both correct and protocol-faithful (no new client-side FPS knob). Reset the timestamp on TX entry and on setWfLineDuration() so the first row after a state/rate change renders immediately. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
ten9876
approved these changes
May 14, 2026
ten9876
left a comment
Collaborator
There was a problem hiding this comment.
Approved. Correct architectural diagnosis (two waterfall row producers running at different cadences — native RX at line_duration via radio tiles, FFT-derived TX+fallback at FFT fps). Throttle in pushWaterfallRow paces FFT-derived rows to match; native RX bypasses the gate. Two reset triggers (TX entry, line_duration change) handle the edge cases correctly.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #2666
What was changed
fix(waterfall): pace TX/FFT-fallback rows to radio line_duration (#2666). Principle I.
Files modified
src/gui/SpectrumWidget.cppsrc/gui/SpectrumWidget.hGenerated by AetherClaude (automated agent for AetherSDR)