From ec8bf04baa088f34fb658268297d5b31310fdfb0 Mon Sep 17 00:00:00 2001 From: gullradriel <3157857+gullradriel@users.noreply.github.com> Date: Mon, 22 May 2023 23:24:46 +0200 Subject: [PATCH] looking glass: correct max_hold computation with new modes (#1047) --- firmware/application/apps/ui_looking_glass_app.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/firmware/application/apps/ui_looking_glass_app.cpp b/firmware/application/apps/ui_looking_glass_app.cpp index ece4cc896..8f6dc76e4 100644 --- a/firmware/application/apps/ui_looking_glass_app.cpp +++ b/firmware/application/apps/ui_looking_glass_app.cpp @@ -144,9 +144,13 @@ void GlassView::add_spectrum_pixel(uint8_t power) { // save max powerwull freq if (spectrum_data[xpos] > max_freq_power) { max_freq_power = spectrum_data[xpos]; - max_freq_hold = f_center + ((looking_glass_range)*xpos) / SCREEN_W; + if (mode == LOOKING_GLASS_SINGLEPASS) { + max_freq_hold = f_min + (xpos * looking_glass_range) / SCREEN_W; + } else // if( mode == LOOKING_GLASS_SLOWSCAN || mode == LOOKING_GLASS_FASTSCAN ) + { + max_freq_hold = f_min + (offset * each_bin_size) + (xpos * looking_glass_range) / SCREEN_W; + } } - int16_t point = y_max_range.clip(((spectrum_data[xpos] - raw_min) * (320 - (108 + 16))) / raw_delta); uint8_t color_gradient = (point * 255) / 212; // clear if not in peak view