diff --git a/companion/src/firmwares/opentx/opentxeeprom.cpp b/companion/src/firmwares/opentx/opentxeeprom.cpp index 405fb3fd4..98fb22441 100644 --- a/companion/src/firmwares/opentx/opentxeeprom.cpp +++ b/companion/src/firmwares/opentx/opentxeeprom.cpp @@ -118,7 +118,7 @@ class SwitchesConversionTable: public ConversionTable { if (version >= 218) { addConversion(RawSwitch(SWITCH_TYPE_TELEMETRY, -1), -val+offset); addConversion(RawSwitch(SWITCH_TYPE_TELEMETRY, 1), val++); - for (int i=1; i<=CPN_MAX_SENSORS; i++) { + for (int i=1; i<=MAX_TELEMETRY_SENSORS(board, version); i++) { addConversion(RawSwitch(SWITCH_TYPE_SENSOR, -i), -val+offset); addConversion(RawSwitch(SWITCH_TYPE_SENSOR, i), val++); } @@ -248,7 +248,7 @@ class SourcesConversionTable: public ConversionTable { addConversion(RawSource(SOURCE_TYPE_SPECIAL, 2), val++); // Timer1 addConversion(RawSource(SOURCE_TYPE_SPECIAL, 3), val++); // Timer2 addConversion(RawSource(SOURCE_TYPE_SPECIAL, 4), val++); // Timer3 - for (unsigned i=0; i(this, modelData.topbarData, false, "Top bar blob")); internalField.Append(new SpareBitsField<8>(this)); // current view } + else if (version >= 219) { + for (int i = 0; i < 4; i++) { + internalField.Append(new UnsignedField<2>(this, modelData.frsky.screens[i].type)); + } + for (int i = 0; i < 4; i++) { + internalField.Append(new FrskyScreenField(this, modelData.frsky.screens[i], board, version, variant)); + } + } } void OpenTxModelData::beforeExport() @@ -2656,7 +2664,7 @@ OpenTxGeneralData::OpenTxGeneralData(GeneralSettings & generalData, Board::Type if (version >= 219) { internalField.Append(new ZCharField<8>(this, generalData.registrationId, "PXX2 Registration ID")); } - + if (version >= 219 && (IS_TARANIS_XLITES(board) || IS_HORUS(board))) { internalField.Append(new SignedField<8>(this, generalData.gyroMax, "Gyro full scale")); internalField.Append(new SignedField<8>(this, generalData.gyroOffset, "Gyro Offset")); diff --git a/companion/src/firmwares/opentx/opentxeeprom.h b/companion/src/firmwares/opentx/opentxeeprom.h index 1b3341244..19a075186 100644 --- a/companion/src/firmwares/opentx/opentxeeprom.h +++ b/companion/src/firmwares/opentx/opentxeeprom.h @@ -34,7 +34,7 @@ #define TARANIS_X7_VARIANT 0x4000 #define TARANIS_XLITE_VARIANT 0x2000 #define TARANIS_XLITES_VARIANT 0x1000 -#define TARANIS_X9LITE_VARIANT 0x0800 +#define TARANIS_X9LITE_VARIANT 0x0800 #define SIMU_STOCK_VARIANTS (GVARS_VARIANT|FRSKY_VARIANT) #define SIMU_M128_VARIANTS (M128_VARIANT|SIMU_STOCK_VARIANTS) diff --git a/companion/src/firmwares/opentx/opentxinterface.cpp b/companion/src/firmwares/opentx/opentxinterface.cpp index ba480fe7c..d6d323130 100644 --- a/companion/src/firmwares/opentx/opentxinterface.cpp +++ b/companion/src/firmwares/opentx/opentxinterface.cpp @@ -963,6 +963,11 @@ bool OpenTxEepromInterface::checkVariant(unsigned int version, unsigned int vari variantError = true; } } + else if (IS_TARANIS_X9LITE(board)) { + if (variant != TARANIS_X9LITE_VARIANT) { + variantError = true; + } + } else if (IS_TARANIS(board)) { if (variant != 0) { variantError = true;