From 33e320a5810bd9264a1c5585c03f78bef3d4a4a4 Mon Sep 17 00:00:00 2001 From: Bertrand Songis Date: Fri, 22 Nov 2019 17:08:55 +0100 Subject: [PATCH] Popup in module information screen --- radio/src/gui/480x272/radio_version.cpp | 8 ++++++++ radio/src/opentx.h | 2 +- radio/src/telemetry/frsky_pxx2.cpp | 8 ++++---- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/radio/src/gui/480x272/radio_version.cpp b/radio/src/gui/480x272/radio_version.cpp index 33ab73607..803c53f0c 100644 --- a/radio/src/gui/480x272/radio_version.cpp +++ b/radio/src/gui/480x272/radio_version.cpp @@ -124,6 +124,14 @@ bool menuRadioModulesVersion(event_t event) if (variant < DIM(variants)) { lcdDrawText(lcdNextPos + 1, y, variants[variant]); } + if (!globalData.upgradeModulePopup && + reusableBuffer.hardwareAndSettings.modules[module].information.modelID == PXX2_MODULE_ISRM_S_X10S && + reusableBuffer.hardwareAndSettings.modules[module].information.swVersion.major == 0 && + reusableBuffer.hardwareAndSettings.modules[module].information.swVersion.minor == 1 && + reusableBuffer.hardwareAndSettings.modules[module].information.swVersion.revision < 5) { + globalData.upgradeModulePopup = 0; + POPUP_WARNING(STR_MODULE_UPGRADE); + } } } y += FH; diff --git a/radio/src/opentx.h b/radio/src/opentx.h index dd415ac24..37570dd52 100644 --- a/radio/src/opentx.h +++ b/radio/src/opentx.h @@ -571,7 +571,7 @@ PACK(struct GlobalData { uint8_t unexpectedShutdown:1; uint8_t externalAntennaEnabled:1; uint8_t authenticationCount:2; - uint8_t authenticationPopup:1; + uint8_t upgradeModulePopup:1; uint8_t spare:3; }); diff --git a/radio/src/telemetry/frsky_pxx2.cpp b/radio/src/telemetry/frsky_pxx2.cpp index 53766774f..1d987474b 100644 --- a/radio/src/telemetry/frsky_pxx2.cpp +++ b/radio/src/telemetry/frsky_pxx2.cpp @@ -204,8 +204,8 @@ void processAuthenticationFrame(uint8_t module, const uint8_t * frame) uint8_t messageDigest[16] = {0}; if (frame[0] == 4 && PXX2_AUTH_REFUSED_FLAG == frame[4]) { - if (!globalData.authenticationPopup) { - globalData.authenticationPopup = 1; + if (!globalData.upgradeModulePopup) { + globalData.upgradeModulePopup = 1; POPUP_INFORMATION(STR_AUTH_FAILURE); } return; @@ -219,9 +219,9 @@ void processAuthenticationFrame(uint8_t module, const uint8_t * frame) // we remain in AUTHENTICATION mode to avoid a CHANNELS frame is sent at the end of the mixing process } - if (!globalData.authenticationPopup) { + if (!globalData.upgradeModulePopup) { if (globalData.authenticationCount >= 2) { - globalData.authenticationPopup = 1; + globalData.upgradeModulePopup = 1; POPUP_WARNING(STR_MODULE_UPGRADE); } else {