diff --git a/companion/src/eeprominterface.h b/companion/src/eeprominterface.h index 0f9552bdf..2ac99ff00 100644 --- a/companion/src/eeprominterface.h +++ b/companion/src/eeprominterface.h @@ -1048,7 +1048,7 @@ class ModelData { QVector mixes(int channel) const; bool used; - char name[12+1]; + char name[15+1]; TimerData timers[C9X_MAX_TIMERS]; bool noGlobalFunctions; bool thrTrim; // Enable Throttle Trim diff --git a/companion/src/firmwares/opentx/opentxeeprom.cpp b/companion/src/firmwares/opentx/opentxeeprom.cpp index e1b0ec835..331ab2146 100644 --- a/companion/src/firmwares/opentx/opentxeeprom.cpp +++ b/companion/src/firmwares/opentx/opentxeeprom.cpp @@ -595,11 +595,11 @@ int smallGvarToEEPROM(int gvar) int smallGvarToC9x(int gvar) { - if (gvar>110) { - gvar = gvar-128 - 10000; + if (gvar > 110) { + gvar = gvar - 128 - 10000; } - else if (gvar<-110) { - gvar = gvar+128 + 10001; + else if (gvar < -110) { + gvar = gvar + 128 + 10001; } return gvar; } @@ -753,7 +753,7 @@ class HeliField: public StructField { public: HeliField(SwashRingData & heli, BoardEnum board, unsigned int version, unsigned int variant) { - if (IS_TARANIS(board) && version >= 217) { + if (IS_STM32(board) && version >= 217) { Append(new UnsignedField<8>(heli.type)); Append(new UnsignedField<8>(heli.value)); Append(new SourceField<8>(heli.collectiveSource, board, version, variant)); @@ -953,7 +953,9 @@ class MixField: public TransformedField { internalField.Append(new UnsignedField<8>(mix.delayDown)); internalField.Append(new UnsignedField<8>(mix.speedUp)); internalField.Append(new UnsignedField<8>(mix.speedDown)); - if (HAS_LARGE_LCD(board)) + if (IS_HORUS(board)) + internalField.Append(new ZCharField<6>(mix.name)); + else if (HAS_LARGE_LCD(board)) internalField.Append(new ZCharField<8>(mix.name)); else internalField.Append(new ZCharField<6>(mix.name)); @@ -1169,7 +1171,7 @@ class MixField: public TransformedField { if (mix.srcRaw.type != SOURCE_TYPE_NONE) { mix.destCh = _destCh + 1; - if (!IS_TARANIS(board) || version < 216) { + if (!IS_STM32(board) || version < 216) { if (!_curveMode) mix.curve = CurveReference(CurveReference::CURVE_REF_DIFF, smallGvarToC9x(_curveParam)); else if (_curveParam > 6) @@ -1236,7 +1238,9 @@ class InputField: public TransformedField { internalField.Append(new UnsignedField<9>(expo.flightModes)); internalField.Append(new SignedField<8>(_weight, "Weight")); internalField.Append(new SpareBitsField<1>()); - if (HAS_LARGE_LCD(board)) + if (IS_HORUS(board)) + internalField.Append(new ZCharField<6>(expo.name)); + else if (HAS_LARGE_LCD(board)) internalField.Append(new ZCharField<8>(expo.name)); else internalField.Append(new ZCharField<6>(expo.name)); diff --git a/companion/src/firmwares/opentx/opentxinterface.cpp b/companion/src/firmwares/opentx/opentxinterface.cpp index c414b8e9b..8687d626b 100644 --- a/companion/src/firmwares/opentx/opentxinterface.cpp +++ b/companion/src/firmwares/opentx/opentxinterface.cpp @@ -577,21 +577,21 @@ int OpenTxFirmware::getCapability(Capability capability) case FlightModesHaveFades: return 1; case Heli: - if (IS_TARANIS(board)) + if (IS_TARANIS(board) || IS_HORUS(board)) return id.contains("noheli") ? 0 : 1; else return id.contains("heli") ? 1 : 0; case Gvars: - if (IS_TARANIS(board)) + if (IS_TARANIS(board) || IS_HORUS(board)) return id.contains("nogvars") ? 0 : 9; else if (id.contains("gvars")) return IS_ARM(board) ? 9 : 5; else return 0; case ModelName: - return (HAS_LARGE_LCD(board) ? 12 : 10); + return (IS_HORUS(board) ? 15 : (HAS_LARGE_LCD(board) ? 12 : 10)); case FlightModesName: - return (IS_TARANIS(board) ? 10 : 6); + return ((IS_TARANIS(board) || IS_HORUS(board)) ? 10 : 6); case GvarsName: return (IS_9X(board) ? 0 : 6); case GvarsInCS: @@ -601,7 +601,7 @@ int OpenTxFirmware::getCapability(Capability capability) case GvarsFlightModes: return ((IS_ARM(board) || IS_2560(board)) ? 1 : 0); case Mixes: - return (IS_TARANIS(board) ? 64 : (IS_ARM(board) ? 60 : 32)); + return (IS_ARM(board) ? 64 : 32); case OffsetWeight: return (IS_ARM(board) ? 500 : 245); case Timers: @@ -778,7 +778,7 @@ int OpenTxFirmware::getCapability(Capability capability) case GlobalFunctions: return IS_ARM(board) ? 64 : 0; case VirtualInputs: - return IS_TARANIS(board) ? 32 : 0; + return IS_ARM(board) ? 64 : 0; case TrainerInputs: return IS_ARM(board) ? 16 : 8; case RtcTime: diff --git a/radio/src/dataconstants.h b/radio/src/dataconstants.h index a200afc28..b5945c819 100644 --- a/radio/src/dataconstants.h +++ b/radio/src/dataconstants.h @@ -140,7 +140,7 @@ enum CurveType { #define LEN_MODEL_NAME 15 #define LEN_TIMER_NAME 8 #define LEN_FLIGHT_MODE_NAME 10 - #define LEN_BITMAP_NAME 10 + #define LEN_BITMAP_NAME 10 // TODO next EEPROM change: we need 14 here as we have to store the file extension #define LEN_EXPOMIX_NAME 6 #define LEN_CHANNEL_NAME 6 #define LEN_INPUT_NAME 4 @@ -175,7 +175,7 @@ enum CurveType { #define LEN_TIMER_NAME 8 #define LEN_FLIGHT_MODE_NAME 10 #define LEN_BITMAP_NAME 10 - #define LEN_EXPOMIX_NAME 8 + #define LEN_EXPOMIX_NAME 8 // TODO next EEPROM change: 6 seem enough #define LEN_CHANNEL_NAME 6 #define LEN_INPUT_NAME 4 #define LEN_CURVE_NAME 3