From c2908e67d236f565faa267d539d4597456484231 Mon Sep 17 00:00:00 2001 From: Raphael Coeffic Date: Tue, 22 Jun 2021 20:37:54 +0200 Subject: [PATCH] [color] Init serial mode properly --- radio/src/gui/colorlcd/radio_hardware.cpp | 26 ++++++++++++++++------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/radio/src/gui/colorlcd/radio_hardware.cpp b/radio/src/gui/colorlcd/radio_hardware.cpp index b5c264846..36f9a52c5 100644 --- a/radio/src/gui/colorlcd/radio_hardware.cpp +++ b/radio/src/gui/colorlcd/radio_hardware.cpp @@ -278,19 +278,29 @@ void RadioHardwarePage::build(FormWindow * window) #if defined(AUX_SERIAL) new StaticText(window, grid.getLabelSlot(), STR_AUX_SERIAL_MODE); - auto aux = new Choice(window, grid.getFieldSlot(1,0), STR_AUX_SERIAL_MODES, 0, UART_MODE_MAX, GET_SET_DEFAULT(g_eeGeneral.auxSerialMode)); - aux->setAvailableHandler([=](int value) { - return isAuxModeAvailable; - }); + auto aux = + new Choice(window, grid.getFieldSlot(1, 0), STR_AUX_SERIAL_MODES, 0, + UART_MODE_MAX, GET_DEFAULT(g_eeGeneral.auxSerialMode), + [](int value) { + g_eeGeneral.auxSerialMode = value; + auxSerialInit(g_eeGeneral.auxSerialMode, modelTelemetryProtocol()); + SET_DIRTY(); + }); + aux->setAvailableHandler([=](int value) { return isAuxModeAvailable; }); grid.nextLine(); #endif #if defined(AUX2_SERIAL) new StaticText(window, grid.getLabelSlot(), STR_AUX2_SERIAL_MODE); - auto aux2 = new Choice(window, grid.getFieldSlot(1,0), STR_AUX_SERIAL_MODES, 0, UART_MODE_MAX, GET_SET_DEFAULT(g_eeGeneral.aux2SerialMode)); - aux2->setAvailableHandler([=](int value) { - return isAux2ModeAvailable; - }); + auto aux2 = + new Choice(window, grid.getFieldSlot(1, 0), STR_AUX_SERIAL_MODES, 0, + UART_MODE_MAX, GET_DEFAULT(g_eeGeneral.aux2SerialMode), + [](int value) { + g_eeGeneral.aux2SerialMode = value; + aux2SerialInit(g_eeGeneral.aux2SerialMode, modelTelemetryProtocol()); + SET_DIRTY(); + }); + aux2->setAvailableHandler([=](int value) { return isAux2ModeAvailable; }); grid.nextLine(); #endif