From e2858dbb03066f050739ae7e05927a19607fc4af Mon Sep 17 00:00:00 2001 From: Kilrah Date: Wed, 8 Nov 2017 12:55:31 +0100 Subject: [PATCH] [companion] Some fields missing for Sky9x (fix #5326) --- .../src/firmwares/opentx/opentxeeprom.cpp | 25 +++++++++++++------ companion/src/radiodata.h | 1 + 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/companion/src/firmwares/opentx/opentxeeprom.cpp b/companion/src/firmwares/opentx/opentxeeprom.cpp index e7fd31f14..4b9837109 100644 --- a/companion/src/firmwares/opentx/opentxeeprom.cpp +++ b/companion/src/firmwares/opentx/opentxeeprom.cpp @@ -3682,17 +3682,18 @@ OpenTxGeneralData::OpenTxGeneralData(GeneralSettings & generalData, Board::Type internalField.Append(new UnsignedField<8>(this, generalData.backlightBright)); if (version < 218) internalField.Append(new SignedField<8>(this, generalData.txCurrentCalibration)); if (version >= 213) { - if (version < 218) internalField.Append(new SignedField<8>(this, generalData.temperatureWarn)); // TODO + if (version < 218) internalField.Append(new SignedField<8>(this, generalData.temperatureWarn)); if (version < 218) internalField.Append(new UnsignedField<8>(this, generalData.mAhWarn)); if (version < 218) internalField.Append(new UnsignedField<16>(this, generalData.mAhUsed)); internalField.Append(new UnsignedField<32>(this, generalData.globalTimer)); - if (version < 218) internalField.Append(new SignedField<8>(this, generalData.temperatureCalib)); // TODO - internalField.Append(new UnsignedField<8>(this, generalData.bluetoothBaudrate)); // TODO - if (version < 218) internalField.Append(new BoolField<8>(this, generalData.optrexDisplay)); //TODO - if (version < 218) internalField.Append(new UnsignedField<8>(this, generalData.sticksGain)); // TODO + if (version < 218) internalField.Append(new SignedField<8>(this, generalData.temperatureCalib)); + internalField.Append(new UnsignedField<4>(this, generalData.bluetoothBaudrate)); + internalField.Append(new UnsignedField<4>(this, generalData.bluetoothMode)); + if (version < 218) internalField.Append(new BoolField<8>(this, generalData.optrexDisplay)); + if (version < 218) internalField.Append(new UnsignedField<8>(this, generalData.sticksGain)); } if (version >= 214) { - if (version < 218) internalField.Append(new UnsignedField<8>(this, generalData.rotarySteps)); // TODO + if (version < 218) internalField.Append(new UnsignedField<8>(this, generalData.rotarySteps)); internalField.Append(new UnsignedField<8>(this, generalData.countryCode)); internalField.Append(new UnsignedField<1>(this, generalData.imperial)); if (version >= 218) { @@ -3769,6 +3770,16 @@ OpenTxGeneralData::OpenTxGeneralData(GeneralSettings & generalData, Board::Type internalField.Append(new UnsignedField<8>(this, generalData.backlightColor)); } } + else if (IS_SKY9X(board) && version >= 218) { + internalField.Append(new SignedField<8>(this, generalData.txCurrentCalibration)); + internalField.Append(new SignedField<8>(this, generalData.temperatureWarn)); + internalField.Append(new UnsignedField<8>(this, generalData.mAhWarn)); + internalField.Append(new UnsignedField<16>(this, generalData.mAhUsed)); + internalField.Append(new SignedField<8>(this, generalData.temperatureCalib)); + internalField.Append(new BoolField<8>(this, generalData.optrexDisplay)); + internalField.Append(new UnsignedField<8>(this, generalData.sticksGain)); + internalField.Append(new UnsignedField<8>(this, generalData.rotarySteps)); + } if (IS_TARANIS_X9E(board)) internalField.Append(new SpareBitsField<64>(this)); // switchUnlockStates @@ -3818,7 +3829,7 @@ OpenTxGeneralData::OpenTxGeneralData(GeneralSettings & generalData, Board::Type } if (IS_HORUS(board)) { - internalField.Append(new BoolField<1>(this, generalData.bluetoothEnable)); + internalField.Append(new SpareBitsField<1>(this)); internalField.Append(new UnsignedField<7>(this, generalData.backlightOffBright)); internalField.Append(new ZCharField<10>(this, generalData.bluetoothName, "Bluetooth name")); } diff --git a/companion/src/radiodata.h b/companion/src/radiodata.h index c83838923..c8857f2fe 100644 --- a/companion/src/radiodata.h +++ b/companion/src/radiodata.h @@ -1221,6 +1221,7 @@ class GeneralSettings { bool bluetoothEnable; char bluetoothName[10+1]; unsigned int bluetoothBaudrate; + unsigned int bluetoothMode; unsigned int sticksGain; unsigned int rotarySteps; unsigned int countryCode;