From c61f9d46d1f7bca3561c058f87fba23a659f43e6 Mon Sep 17 00:00:00 2001 From: DiSlord Date: Thu, 2 Jul 2020 21:30:42 +0300 Subject: [PATCH] Fix apply additional delays twice in some cases --- sa_core.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/sa_core.c b/sa_core.c index e29cf17..8b2d862 100644 --- a/sa_core.c +++ b/sa_core.c @@ -1642,13 +1642,14 @@ sweep_again: // stay in sweep loop when output mo RSSI = perform(break_on_operation, i, frequencies[i], setting.tracking); // Measure RSSI for one of the frequencies - // ----------------- delay between points if needed ---------------- - - if (setting.additional_step_delay_us && (MODE_INPUT(setting.mode) || setting.modulation == MO_NONE)) { // No delay when modulation is active - if (setting.additional_step_delay_us < 30*ONE_MS_TIME) // Maximum delay time using my_microsecond_delay - my_microsecond_delay(setting.additional_step_delay_us); - else - osalThreadSleepMilliseconds(setting.additional_step_delay_us / ONE_MS_TIME); + // Delay between points if needed, (all delays can apply in SI4432 fill) + if (setting.measure_sweep_time_us == 0){ + if (setting.additional_step_delay_us && (MODE_INPUT(setting.mode) || setting.modulation == MO_NONE)) { // No delay when modulation is active + if (setting.additional_step_delay_us < 30*ONE_MS_TIME) // Maximum delay time using my_microsecond_delay + my_microsecond_delay(setting.additional_step_delay_us); + else + osalThreadSleepMilliseconds(setting.additional_step_delay_us / ONE_MS_TIME); + } } // if break back to top level to handle ui operation