diff --git a/radio/src/gui/128x64/model_setup.cpp b/radio/src/gui/128x64/model_setup.cpp index 1c88ae28a..82061e5d1 100644 --- a/radio/src/gui/128x64/model_setup.cpp +++ b/radio/src/gui/128x64/model_setup.cpp @@ -1212,7 +1212,7 @@ void menuModelSetup(event_t event) uint8_t moduleIdx = CURRENT_MODULE_EDITED(k); if (isModuleR9M(moduleIdx)) { lcdDrawTextAlignedLeft(y, TR_MULTI_RFPOWER); - if (IS_MODULE_R9M_FCC_VARIANT(moduleIdx)) { + if (isModuleR9M_FCC_VARIANT(moduleIdx)) { g_model.moduleData[moduleIdx].pxx.power = min((uint8_t)g_model.moduleData[moduleIdx].pxx.power, (uint8_t)R9M_FCC_POWER_MAX); // Lite FCC has only one setting #if defined(PCBXLITE) && !defined(MODULE_R9M_FULLSIZE) // R9M lite FCC has only one power value, so displayed for info only lcdDrawTextAtIndex(MODEL_SETUP_2ND_COLUMN, y, STR_R9M_FCC_POWER_VALUES, g_model.moduleData[moduleIdx].pxx.power, LEFT); diff --git a/radio/src/gui/212x64/model_setup.cpp b/radio/src/gui/212x64/model_setup.cpp index ec5c94b7c..4f8c5ead2 100644 --- a/radio/src/gui/212x64/model_setup.cpp +++ b/radio/src/gui/212x64/model_setup.cpp @@ -1150,7 +1150,7 @@ void menuModelSetup(event_t event) uint8_t moduleIdx = CURRENT_MODULE_EDITED(k); if (isModuleR9M(moduleIdx)) { lcdDrawTextAlignedLeft(y, TR_MULTI_RFPOWER); - if(IS_MODULE_R9M_FCC_VARIANT(moduleIdx)) { + if(isModuleR9M_FCC_VARIANT(moduleIdx)) { lcdDrawTextAtIndex(MODEL_SETUP_2ND_COLUMN, y, STR_R9M_FCC_POWER_VALUES, g_model.moduleData[moduleIdx].pxx.power, LEFT | attr); if (attr) CHECK_INCDEC_MODELVAR(event, g_model.moduleData[moduleIdx].pxx.power, 0, R9M_FCC_POWER_MAX); diff --git a/radio/src/gui/480x272/model_setup.cpp b/radio/src/gui/480x272/model_setup.cpp index d449cc25f..0931e475b 100644 --- a/radio/src/gui/480x272/model_setup.cpp +++ b/radio/src/gui/480x272/model_setup.cpp @@ -1089,7 +1089,7 @@ bool menuModelSetup(event_t event) uint8_t moduleIdx = CURRENT_MODULE_EDITED(k); if (isModuleR9M(moduleIdx)) { lcdDrawText(MENUS_MARGIN_LEFT, y, STR_MULTI_RFPOWER); - if(IS_MODULE_R9M_FCC_VARIANT(moduleIdx)) { + if(isModuleR9M_FCC_VARIANT(moduleIdx)) { lcdDrawTextAtIndex(MODEL_SETUP_2ND_COLUMN, y, STR_R9M_FCC_POWER_VALUES, g_model.moduleData[moduleIdx].pxx.power, LEFT | attr); if (attr) CHECK_INCDEC_MODELVAR(event, g_model.moduleData[moduleIdx].pxx.power, 0, R9M_FCC_POWER_MAX); diff --git a/radio/src/gui/gui_common.h b/radio/src/gui/gui_common.h index 2303a6341..739b9bd72 100644 --- a/radio/src/gui/gui_common.h +++ b/radio/src/gui/gui_common.h @@ -156,7 +156,7 @@ const mm_protocol_definition *getMultiProtocolDefinition (uint8_t protocol); #define FAILSAFE_ROWS(x) ((isModuleXJT(x) && HAS_RF_PROTOCOL_FAILSAFE(g_model.moduleData[x].rfProtocol)) || MULTIMODULE_HASFAILSAFE(x) || isModuleR9M(x)) ? (g_model.moduleData[x].failsafeMode==FAILSAFE_CUSTOM ? (uint8_t)1 : (uint8_t)0) : HIDDEN_ROW #define EXTERNAL_MODULE_OPTION_ROW (isModuleR9M(EXTERNAL_MODULE) || isModuleSBUS(EXTERNAL_MODULE) ? TITLE_ROW : MULTIMODULE_OPTIONS_ROW) -#define EXTERNAL_MODULE_POWER_ROW (isModuleMultimodule(EXTERNAL_MODULE) || isModuleR9M(EXTERNAL_MODULE)) ? (IS_MODULE_R9M_FCC_VARIANT(EXTERNAL_MODULE) ? TITLE_ROW : (uint8_t) 0) : HIDDEN_ROW +#define EXTERNAL_MODULE_POWER_ROW (isModuleMultimodule(EXTERNAL_MODULE) || isModuleR9M(EXTERNAL_MODULE)) ? (isModuleR9M_FCC_VARIANT(EXTERNAL_MODULE) ? TITLE_ROW : (uint8_t) 0) : HIDDEN_ROW void editStickHardwareSettings(coord_t x, coord_t y, int idx, event_t event, LcdFlags flags); diff --git a/radio/src/lua/api_general.cpp b/radio/src/lua/api_general.cpp index 59039d65a..c0b377298 100644 --- a/radio/src/lua/api_general.cpp +++ b/radio/src/lua/api_general.cpp @@ -669,7 +669,7 @@ Return the internal GPS position or nil if no valid hardware found * 'speed' (number) internal GPSspeed in 0.1m/s * 'heading' (number) internal GPS ground course estimation in degrees * 10 -@status current Introduced in 2.2.2 +@status current Introduced in 2.3.0 */ static int luaGetTxGPS(lua_State * L) { @@ -912,7 +912,7 @@ Returns (some of) the general radio settings * `gtimer` (number) radio global timer in seconds (does not include current session) @status current Introduced in 2.0.6, `imperial` added in TODO, -`language` and `voice` added in 2.2.0, gtimer added in 2.2.2. +`language` and `voice` added in 2.2.0, gtimer added in 2.3.0. */ static int luaGetGeneralSettings(lua_State * L) @@ -1271,7 +1271,7 @@ static int luaGetUsage(lua_State * L) Resets the radio global timer to 0. -@status current Introduced in 2.2.2 +@status current Introduced in 2.3.0 */ static int luaResetGlobalTimer(lua_State * L) { diff --git a/radio/src/pulses/modules.h b/radio/src/pulses/modules.h index 9007e519e..2ecb78168 100644 --- a/radio/src/pulses/modules.h +++ b/radio/src/pulses/modules.h @@ -111,9 +111,25 @@ inline bool isModuleR9M_FCC(uint8_t idx) inline bool isModuleR9M_LBT(uint8_t idx) { - return isModuleR9M(idx) && g_model.moduleData[idx].subType == MODULE_SUBTYPE_R9M_LBT; + return isModuleR9M(idx) && g_model.moduleData[idx].subType == MODULE_SUBTYPE_R9M_EU; } +inline bool isModuleR9M_FCC_VARIANT(uint8_t idx) +{ + return isModuleR9M(idx) && g_model.moduleData[idx].subType != MODULE_SUBTYPE_R9M_EU; +} + +inline bool isModuleR9M_EUPLUS(uint8_t idx) +{ + return isModuleR9M(idx) && g_model.moduleData[idx].subType != MODULE_SUBTYPE_R9M_EUPLUS; +} + +inline bool isModuleR9M_AU_PLUS(uint8_t idx) +{ + return isModuleR9M(idx) && g_model.moduleData[idx].subType != MODULE_SUBTYPE_R9M_AUPLUS; +} + + inline bool isModulePXX(uint8_t idx) { return isModuleXJT(idx) || isModuleR9M(idx); diff --git a/radio/src/pulses/pxx_arm.cpp b/radio/src/pulses/pxx_arm.cpp index 790f4e8dd..1418df9a4 100644 --- a/radio/src/pulses/pxx_arm.cpp +++ b/radio/src/pulses/pxx_arm.cpp @@ -412,8 +412,8 @@ inline void setupFramePXX(uint8_t port, uint8_t sendUpperChannels) extra_flags |= (g_model.moduleData[port].pxx.receiver_telem_off << 1); extra_flags |= (g_model.moduleData[port].pxx.receiver_channel_9_16 << 2); if (isModuleR9M(port)) { - extra_flags |= (min(g_model.moduleData[port].pxx.power, IS_MODULE_R9M_FCC_VARIANT(port) ? (uint8_t)R9M_FCC_POWER_MAX : (uint8_t)R9M_LBT_POWER_MAX) << 3); - if(IS_MODULE_R9M_EUPLUS(port)) + extra_flags |= (min(g_model.moduleData[port].pxx.power, isModuleR9M_FCC_VARIANT(port) ? (uint8_t)R9M_FCC_POWER_MAX : (uint8_t)R9M_LBT_POWER_MAX) << 3); + if(isModuleR9M_EUPLUS(port)) extra_flags |= (1 << 6); } diff --git a/radio/src/translations.cpp b/radio/src/translations.cpp index 6648f1729..6684816da 100644 --- a/radio/src/translations.cpp +++ b/radio/src/translations.cpp @@ -582,8 +582,8 @@ const char STR_BLCOLOR[] = TR_BLCOLOR; const char STR_ANTENNASELECTION[] = TR_ANTENNASELECTION; const char STR_ANTENNACONFIRM1[] = TR_ANTENNACONFIRM1; const char STR_ANTENNACONFIRM2[] = TR_ANTENNACONFIRM2; - const char STR_R9MFLEXWARN1[] PROGMEM = TR_R9MFLEXWARN1; - const char STR_R9MFLEXWARN2[] PROGMEM = TR_R9MFLEXWARN2; + const char STR_R9MFLEXWARN1[] = TR_R9MFLEXWARN1; + const char STR_R9MFLEXWARN2[] = TR_R9MFLEXWARN2; const char STR_SET[] = TR_SET; const char STR_PREFLIGHT[] = TR_PREFLIGHT; const char STR_CHECKLIST[] = TR_CHECKLIST; diff --git a/tools/nightly22/build-nightly.sh b/tools/nightly22/build-nightly.sh index fb7f215cf..98dc837ec 100755 --- a/tools/nightly22/build-nightly.sh +++ b/tools/nightly22/build-nightly.sh @@ -6,7 +6,7 @@ branch=2.2 docker=nightly22 workdir=/home/opentx/nightly22 output=/var/www/html/2.2/nightlies -version=2.2.2 +version=2.3.0 # Incrementnightly index index=`cat index.txt` diff --git a/tools/rc22/build-rc.sh b/tools/rc22/build-rc.sh index ec54c6e33..daffff3f2 100755 --- a/tools/rc22/build-rc.sh +++ b/tools/rc22/build-rc.sh @@ -6,7 +6,7 @@ branch=2.2 docker=rc22 workdir=/home/opentx/rc22 output=/var/www/html/2.2/rc -version=2.2.2 +version=2.3.0 # Increment RC index index=`cat index.txt` diff --git a/tools/release22/build-release.sh b/tools/release22/build-release.sh index df3b3eb8d..9fbc37e07 100755 --- a/tools/release22/build-release.sh +++ b/tools/release22/build-release.sh @@ -6,7 +6,7 @@ branch=2.2 docker=release22 workdir=/home/opentx/release22 output=/var/www/html/2.2/release -version=2.2.2 +version=2.3.0 cd ${workdir} @@ -51,7 +51,7 @@ fi # Update stamps cp -f $workdir/binaries/stamp-opentx.txt ${output}/firmware -echo "#define VERSION "'"2.2.2"' > ${output}/companion/companion-windows.stamp +echo "#define VERSION "'"2.3.0"' > ${output}/companion/companion-windows.stamp cp -f ${output}/companion/companion-windows.stamp ${output}/companion/companion-macosx.stamp cp -f ${output}/companion/companion-windows.stamp ${output}/companion/companion-linux.stamp