From 095893952656652679b58d7dbfb90611606496cf Mon Sep 17 00:00:00 2001 From: Belousov Oleg Date: Thu, 30 Jul 2026 15:14:03 +0300 Subject: [PATCH] Fixed the issues #3280 --- firmware/application/ui/ui_spectrum.hpp | 2 ++ firmware/baseband/filtered_spectrum_collector.cpp | 6 ++++++ firmware/baseband/spectrum_collector.hpp | 1 + 3 files changed, 9 insertions(+) diff --git a/firmware/application/ui/ui_spectrum.hpp b/firmware/application/ui/ui_spectrum.hpp index b201930d0..df17aa8d8 100644 --- a/firmware/application/ui/ui_spectrum.hpp +++ b/firmware/application/ui/ui_spectrum.hpp @@ -72,6 +72,8 @@ class AudioSpectrumView : public View { class FrequencyScale : public Widget { public: + /* Receives a frequency offset in Hz for key/touch selection. With live + * tuning enabled, encoder events instead pass the raw encoder delta. */ std::function on_select{}; void on_show() override; diff --git a/firmware/baseband/filtered_spectrum_collector.cpp b/firmware/baseband/filtered_spectrum_collector.cpp index a8837a550..0fbeb7c9b 100644 --- a/firmware/baseband/filtered_spectrum_collector.cpp +++ b/firmware/baseband/filtered_spectrum_collector.cpp @@ -51,6 +51,12 @@ bool FilteredSpectrumCollector::feed( sampling_rate_ = channel.sampling_rate / capture_decimation_; capture_ready_ = true; EventDispatcher::events_flag(EVT_MASK_SPECTRUM); + if (is_streaming()) { + capture_ready_ = true; + EventDispatcher::events_flag(EVT_MASK_SPECTRUM); + } else { + capture_ready_ = false; + } return true; } return false; diff --git a/firmware/baseband/spectrum_collector.hpp b/firmware/baseband/spectrum_collector.hpp index 89d17142e..3f36d0696 100644 --- a/firmware/baseband/spectrum_collector.hpp +++ b/firmware/baseband/spectrum_collector.hpp @@ -51,6 +51,7 @@ class SpectrumCollector { const int32_t filter_transition); protected: + bool is_streaming() const { return streaming; } void set_filter( const int32_t filter_low_frequency, const int32_t filter_high_frequency,