diff --git a/App/app/action.c b/App/app/action.c index 22f64b76..27186e6d 100644 --- a/App/app/action.c +++ b/App/app/action.c @@ -425,6 +425,12 @@ void ACTION_FM(void) gMonitor = false; + if (gScanStateDir != SCAN_OFF) { + // Stop the channel/frequency scan before switching to the FM radio. + gScanKeepResult = false; + CHFRSCANNER_Stop(); + } + RADIO_SelectVfos(); RADIO_SetupRegisters(true); diff --git a/App/app/main.c b/App/app/main.c index 2ef9adc1..1550de58 100644 --- a/App/app/main.c +++ b/App/app/main.c @@ -924,6 +924,12 @@ static void MAIN_Key_STAR(bool bKeyPressed, bool bKeyHeld) return; } #endif + if (gScanStateDir != SCAN_OFF) { + // Stop the channel/frequency scan before saving the RX mode for the CTCSS/DCS scan. + gScanKeepResult = false; + CHFRSCANNER_Stop(); + } + // scan the CTCSS/DCS code gBackup_CROSS_BAND_RX_TX = gEeprom.CROSS_BAND_RX_TX; gEeprom.CROSS_BAND_RX_TX = CROSS_BAND_OFF; diff --git a/App/ui/main.c b/App/ui/main.c index a6fe990e..66b1204c 100644 --- a/App/ui/main.c +++ b/App/ui/main.c @@ -1581,7 +1581,11 @@ void UI_DisplayMain(void) } } else { - if(RxOnVfofrequency == frequency && !isMainOnly()) { + if(RxOnVfofrequency == frequency && !isMainOnly() +#if defined(ENABLE_FEAT_F4HWN_SCAN_FASTER) && defined(ENABLE_FEAT_F4HWN_SCAN_RSSI) + && !CHFRSCANNER_HasScanRssiSparkline() +#endif + ) { //UI_PrintStringSmallNormal(">>", 8, 0, line); //memcpy(p_line0 + 14, BITMAP_VFO_Default, sizeof(BITMAP_VFO_Default)); GUI_DisplaySmallest(">>", 8, RxLine == 0 ? 1 : 33, false, true);