diff --git a/firmware/application/apps/ui_mictx.cpp b/firmware/application/apps/ui_mictx.cpp index 1d8e46367..01c926068 100644 --- a/firmware/application/apps/ui_mictx.cpp +++ b/firmware/application/apps/ui_mictx.cpp @@ -350,6 +350,12 @@ MicTXView::MicTXView( &tx_button, &tx_icon}); + // disable key repeat on select + initial_switch_config_ = get_switches_repeat_config(); + SwitchesState config = initial_switch_config_; + config[toUType(Switch::Sel)] = false; + set_switches_repeat_config(config); + set_rxbw_options(); set_rxbw_defaults(settings_.loaded()); @@ -640,6 +646,9 @@ MicTXView::MicTXView( } MicTXView::~MicTXView() { + // restore select key repeat mode + set_switches_repeat_config(initial_switch_config_); + audio::input::stop(); if (rx_enabled) { // Also turn off both (audio rx if enabled, and disable mic_loop to HP) rxaudio(false); diff --git a/firmware/application/apps/ui_mictx.hpp b/firmware/application/apps/ui_mictx.hpp index cf375e4cf..bbeac2392 100644 --- a/firmware/application/apps/ui_mictx.hpp +++ b/firmware/application/apps/ui_mictx.hpp @@ -90,6 +90,9 @@ class MicTXView : public View { sampling_rate /* sampling rate */ }; + // structure used to control key repeat + SwitchesState initial_switch_config_{}; + enum Mic_Modulation : uint32_t { MIC_MOD_NFM = 0, MIC_MOD_WFM = 1,