From b8e209c6c8290c02f93856af2836a502d21bdc49 Mon Sep 17 00:00:00 2001 From: Armel FAUVEAU Date: Sun, 11 Feb 2024 23:18:34 +0100 Subject: [PATCH] Fix EOT sound alert --- audio.c | 21 ++++++++++++--------- audio.h | 3 ++- ui/main.c | 22 ++++++++++++++++++---- 3 files changed, 32 insertions(+), 14 deletions(-) diff --git a/audio.c b/audio.c index d06a30c..f29738d 100644 --- a/audio.c +++ b/audio.c @@ -43,8 +43,9 @@ void AUDIO_PlayBeep(BEEP_Type_t Beep) Beep != BEEP_880HZ_200MS && Beep != BEEP_880HZ_500MS && #ifdef ENABLE_FEAT_F4HWN + Beep != BEEP_400HZ_30MS && + Beep != BEEP_600HZ_30MS && Beep != BEEP_800HZ_30MS && - Beep != BEEP_1000HZ_30MS && #endif !gEeprom.BEEP_CONTROL) return; @@ -99,12 +100,16 @@ void AUDIO_PlayBeep(BEEP_Type_t Beep) ToneFrequency = 880; break; #ifdef ENABLE_FEAT_F4HWN - case BEEP_800HZ_30MS: - ToneFrequency = 800; + case BEEP_400HZ_30MS: + ToneFrequency = 400; BK4819_WriteRegister(BK4819_REG_70, BK4819_REG_70_ENABLE_TONE1 | ((1 & 0x7f) << BK4819_REG_70_SHIFT_TONE1_TUNING_GAIN)); break; - case BEEP_1000HZ_30MS: - ToneFrequency = 1000; + case BEEP_600HZ_30MS: + ToneFrequency = 600; + BK4819_WriteRegister(BK4819_REG_70, BK4819_REG_70_ENABLE_TONE1 | ((1 & 0x7f) << BK4819_REG_70_SHIFT_TONE1_TUNING_GAIN)); + break; + case BEEP_800HZ_30MS: + ToneFrequency = 800; BK4819_WriteRegister(BK4819_REG_70, BK4819_REG_70_ENABLE_TONE1 | ((1 & 0x7f) << BK4819_REG_70_SHIFT_TONE1_TUNING_GAIN)); break; #endif @@ -148,14 +153,12 @@ void AUDIO_PlayBeep(BEEP_Type_t Beep) Duration = 200; break; #ifdef ENABLE_FEAT_F4HWN + case BEEP_400HZ_30MS: + case BEEP_600HZ_30MS: case BEEP_800HZ_30MS: BK4819_ExitTxMute(); Duration = 30; break; - case BEEP_1000HZ_30MS: - BK4819_ExitTxMute(); - Duration = 30; - break; #endif case BEEP_440HZ_500MS: case BEEP_880HZ_500MS: diff --git a/audio.h b/audio.h index 6b14df8..c7f98cb 100644 --- a/audio.h +++ b/audio.h @@ -35,8 +35,9 @@ enum BEEP_Type_t BEEP_440HZ_40MS_OPTIONAL, BEEP_880HZ_40MS_OPTIONAL, #ifdef ENABLE_FEAT_F4HWN + BEEP_400HZ_30MS, + BEEP_600HZ_30MS, BEEP_800HZ_30MS, - BEEP_1000HZ_30MS, #endif BEEP_880HZ_60MS_TRIPLE_BEEP }; diff --git a/ui/main.c b/ui/main.c index 06815e4..ba22074 100644 --- a/ui/main.c +++ b/ui/main.c @@ -486,16 +486,30 @@ void UI_MAIN_TimeSlice500ms(void) BK4819_ToggleGpioOut(BK4819_GPIO6_PIN2_GREEN, true); } - if(RXBlinkLedCounter > 6) + if(RXBlinkLedCounter <= 6) { if(gSetting_set_eot == 1 || gSetting_set_eot == 3) { - AUDIO_PlayBeep(BEEP_800HZ_30MS); - SYSTEM_DelayMs(300); + AUDIO_PlayBeep(BEEP_400HZ_30MS); + } + } + else + { + if(gSetting_set_eot == 1 || gSetting_set_eot == 3) + { + if(RXBlinkLedCounter <= 8) + { + AUDIO_PlayBeep(BEEP_600HZ_30MS); + } + else + { + AUDIO_PlayBeep(BEEP_800HZ_30MS); + } + SYSTEM_DelayMs(200); } else if(gSetting_set_eot == 2) { - SYSTEM_DelayMs(350); + SYSTEM_DelayMs(400); } } }