diff --git a/companion/src/firmwares/eeprominterface.h b/companion/src/firmwares/eeprominterface.h index 4377e500992..0dc3fd061d6 100644 --- a/companion/src/firmwares/eeprominterface.h +++ b/companion/src/firmwares/eeprominterface.h @@ -47,133 +47,114 @@ const uint8_t modn12x3[8][4]= { }; enum Capability { - Models, - ModelName, - FlightModes, - FlightModesName, - FlightModesHaveFades, - Imperial, - Mixes, - Timers, - TimersName, - VoicesAsNumbers, - VoicesMaxLength, - MultiLangVoice, - HasModelImage, - ModelImageNameLen, - ModelImageFilters, - ModelImageKeepExtn, - CustomFunctions, - SafetyChannelCustomFunction, - LogicalSwitches, - CustomAndSwitches, - HasNegAndSwitches, - LogicalSwitchesExt, - Outputs, + BacklightLevelMin, ChannelsName, - ExtraInputs, - TrimsRange, + CustomAndSwitches, + CustomFunctions, + DangerousFunctions, ExtendedTrimsRange, - NumCurves, - NumCurvePoints, - OffsetWeight, - Simulation, - SoundMod, - SoundPitch, - MaxVolume, - MaxContrast, - MinContrast, - Haptic, - HasBeeper, - ModelTrainerEnable, - HasExpoNames, - HasNoExpo, - HasMixerNames, - HasCvNames, - HasPxxCountry, - HasPPMStart, - HasGeneralUnits, - HasFAIMode, - OptrexDisplay, - PPMExtCtrl, - PPMFrameLength, - Telemetry, - TelemetryUnits, - TelemetryBars, - Heli, + FlightModes, + FlightModesHaveFades, + FlightModesName, + GetThrSwitch, + GlobalFunctions, Gvars, - GvarsInCS, - GvarsAreNamed, GvarsFlightModes, + GvarsInCS, GvarsName, - NoTelemetryProtocol, - TelemetryCustomScreens, - TelemetryCustomScreensBars, - TelemetryCustomScreensLines, - TelemetryCustomScreensFieldsPerLine, - TelemetryMaxMultiplier, - HasVario, - HasVarioSink, + Haptic, + HasADCJitterFilter, + HasAux2SerialMode, + HasAuxSerialMode, + HasBatMeterRange, + HasBeeper, + HasBluetooth, + HasBrightness, + HasDisplayText, + HasExpoNames, HasFailsafe, - HasSoundMixer, - NumModules, - NumFirstUsableModule, + HasFAIMode, + HasFlySkyGimbals, + HasGeneralUnits, + HasInputDiff, + HasIntModuleCRSF, + HasIntModuleELRS, + HasIntModuleFlySky, + HasIntModuleMulti, + HasMixerExpo, + HasMixerNames, + HasModelImage, + HasModelLabels, + HasModelsList, HasModuleR9MFlex, HasModuleR9MMini, - PPMCenter, - SYMLimits, - HastxCurrentCalibration, - HasVolume, - HasBrightness, - PerModelTimers, - SlowScale, - SlowRange, - PermTimers, + HasNoExpo, + HasPPMStart, + HasPxxCountry, HasSDLogs, - CSFunc, - GetThrSwitch, - HasDisplayText, + HasSoftwareSerialPower, + HasSoundMixer, + HasSportConnector, + HasSwitchableJack, + HasTelemetryBaudrate, HasTopLcd, - GlobalFunctions, - VirtualInputs, + HasVario, + HasVarioSink, + HasVCPSerialMode, + HasVolume, + Heli, + Imperial, InputsLength, - TrainerInputs, - SportTelemetry, - LuaScripts, + KeyShortcuts, + LogicalSwitches, + LogicalSwitchesExt, LuaInputsPerScript, LuaOutputsPerScript, - LimitsPer1000, - EnhancedCurves, - HasFasOffset, - HasMahPersistent, + LuaScripts, MavlinkTelemetry, - HasInputDiff, - HasMixerExpo, - HasBatMeterRange, - DangerousFunctions, - HasModelLabels, - HasSwitchableJack, - HasSportConnector, + MaxContrast, + MaxVolume, + MinContrast, + Mixes, + ModelImageFilters, + ModelImageKeepExtn, + ModelImageNameLen, + ModelName, + Models, + ModelTrainerEnable, + MultiLangVoice, + NoTelemetryProtocol, + NumCurvePoints, + NumCurves, + NumFirstUsableModule, + NumModules, + OffsetWeight, + Outputs, + PermTimers, + PPMCenter, + PPMFrameLength, PwrButtonPress, + QMFavourites, + RotaryEncoderNavigation, + SafetyChannelCustomFunction, Sensors, - HasAuxSerialMode, - HasAux2SerialMode, - HasVCPSerialMode, - HasBluetooth, - HasADCJitterFilter, - HasTelemetryBaudrate, + SlowRange, + SlowScale, + SoundPitch, + SYMLimits, + Telemetry, + TelemetryCustomScreens, + TelemetryCustomScreensBars, + TelemetryCustomScreensFieldsPerLine, + TelemetryCustomScreensLines, + Timers, + TimersName, TopBarZones, - HasModelsList, - HasFlySkyGimbals, - RotaryEncoderNavigation, - HasSoftwareSerialPower, - HasIntModuleMulti, - HasIntModuleCRSF, - HasIntModuleELRS, - HasIntModuleFlySky, - BacklightLevelMin, - QMFavourites, - KeyShortcuts, + TrainerInputs, + TrimsRange, + VirtualInputs, + VoicesAsNumbers, + VoicesMaxLength, }; float ValToTim(int value); diff --git a/companion/src/firmwares/generalsettings.h b/companion/src/firmwares/generalsettings.h index f29b6833320..bc65cb15678 100644 --- a/companion/src/firmwares/generalsettings.h +++ b/companion/src/firmwares/generalsettings.h @@ -302,7 +302,6 @@ class GeneralSettings { unsigned int contrast; unsigned int vBatWarn; int txVoltageCalibration; - int txCurrentCalibration; int vBatMin; int vBatMax; int backlightMode; @@ -326,7 +325,6 @@ class GeneralSettings { int timezone; int timezoneMinutes; bool adjustRTC; - bool optrexDisplay; unsigned int inactivityTimer; unsigned int internalModuleBaudrate; bool minuteBeep; @@ -342,7 +340,6 @@ class GeneralSettings { unsigned int stickReverse; unsigned int speakerPitch; int hapticStrength; - unsigned int speakerMode; char ownerName[OWNER_NAME_LEN + 1]; int beeperLength; unsigned int gpsFormat; diff --git a/companion/src/firmwares/opentx/opentxinterface.cpp b/companion/src/firmwares/opentx/opentxinterface.cpp index 776abbf70d5..5e54a47cdd5 100644 --- a/companion/src/firmwares/opentx/opentxinterface.cpp +++ b/companion/src/firmwares/opentx/opentxinterface.cpp @@ -58,42 +58,34 @@ Firmware * OpenTxFirmware::getFirmwareVariant(const QString &id) int OpenTxFirmware::getCapability(::Capability capability) { switch (capability) { - case Models: - if (IS_FAMILY_HORUS_OR_T16(board)) - return 0; - else - return 60; - case Imperial: - return 0; - case HasModelImage: - return (board == BOARD_TARANIS_X9D || IS_TARANIS_PLUS(board) || board == BOARD_TARANIS_X9DP_2019 || IS_FAMILY_HORUS_OR_T16(board)); - case ModelImageNameLen: - return (IS_FAMILY_HORUS_OR_T16(board) ? 14 : 10); // including extension if saved and <= CPN_MAX_BITMAP_LEN - case ModelImageKeepExtn: - return (IS_FAMILY_HORUS_OR_T16(board) ? true : false); - case HasBeeper: - return false; - case HasPxxCountry: - return 1; - case HasGeneralUnits: - return true; - case HasNegAndSwitches: - return true; - case PPMExtCtrl: - return 1; - case PPMFrameLength: - return 40; + case BacklightLevelMin: + if (IS_HORUS_X12S(board)) { + return 5; + } else if (IS_FAMILY_T16(board) || IS_FLYSKY_NV14(board) || IS_FLYSKY_EL18(board) || IS_FAMILY_PL18(board) || IS_FLYSKY_ST16(board)) { + return 1; + } else { + return 46; + } + case ChannelsName: + return (HAS_LARGE_LCD(board) ? 6 : 4); + case CustomAndSwitches: + return getCapability(LogicalSwitches); + case CustomFunctions: + return 64; + case DangerousFunctions: + return id.contains("danger") ? 1 : 0; + case ExtendedTrimsRange: + return 512; case FlightModes: return 9; case FlightModesHaveFades: return 1; - case Heli: - if (Boards::getCapability(board, Board::Surface)) - return false; - else if (IS_HORUS_OR_TARANIS(board)) - return id.contains("noheli") ? 0 : 1; - else - return id.contains("heli") ? 1 : 0; + case FlightModesName: + return (IS_HORUS_OR_TARANIS(board) ? 10 : 6); + case GetThrSwitch: + return (IS_HORUS_OR_TARANIS(board) ? SWITCH_SF1 : SWITCH_THR); + case GlobalFunctions: + return 64; case Gvars: if (IS_STM32H7(board) || IS_STM32H5(board)) return id.contains("nogvars") ? 0 : 15; @@ -103,195 +95,198 @@ int OpenTxFirmware::getCapability(::Capability capability) return 9; else return 0; - case ModelName: - return (IS_FAMILY_HORUS_OR_T16(board) ? 15 : (HAS_LARGE_LCD(board) ? 12 : 10)); - case FlightModesName: - return (IS_HORUS_OR_TARANIS(board) ? 10 : 6); - case GvarsName: - return 3; - case GvarsInCS: - case HasFAIMode: - return 1; - case GvarsAreNamed: case GvarsFlightModes: return 1; - case Mixes: - return 64; - case OffsetWeight: - return 500; - case Timers: - return 3; - case TimersName: - if (HAS_LARGE_LCD(board)) - return 8; - else - return 3; - case PermTimers: - return true; - case CustomFunctions: - return 64; - case SafetyChannelCustomFunction: - return id.contains("nooverridech") ? 0 : 1; - case LogicalSwitches: - return 64; - case CustomAndSwitches: - return getCapability(LogicalSwitches); - case LogicalSwitchesExt: - return true; - case Outputs: - return 32; - case NumCurvePoints: - return 512; - case VoicesAsNumbers: - return 0; - case VoicesMaxLength: - return 8; - case MultiLangVoice: - return 1; - case SoundPitch: + case GvarsInCS: return 1; + case GvarsName: + return 3; case Haptic: return board != Board::BOARD_TARANIS_X9D || id.contains("haptic"); - case ModelTrainerEnable: - if (IS_HORUS_OR_TARANIS(board) && board!=Board::BOARD_TARANIS_XLITE) - return 1; - else - return 0; - case MaxVolume: - return 23; - case MaxContrast: - if (IS_TARANIS_SMALL(board)) - return 30; - else - return 45; - case MinContrast: - if (IS_TARANIS_X9(board)) - return 0; - else - return 10; - case HasSoundMixer: - return 1; - case ExtraInputs: - return 1; - case TrimsRange: - return 128; - case ExtendedTrimsRange: - return 512; - case Simulation: + case HasADCJitterFilter: + return IS_HORUS_OR_TARANIS(board); + case HasAux2SerialMode: + return IS_FAMILY_T16(board); + case HasAuxSerialMode: + return (IS_FAMILY_HORUS_OR_T16(board) && !(IS_FLYSKY_NV14(board) || IS_FLYSKY_EL18(board) || IS_FAMILY_PL18(board) || IS_FLYSKY_ST16(board))) || + (IS_TARANIS_X9(board) && !IS_TARANIS_X9DP_2019(board)) || + IS_RADIOMASTER_ZORRO(board) || IS_RADIOMASTER_TX12_MK2(board) || IS_RADIOMASTER_MT12(board); + case HasBatMeterRange: + return (IS_HORUS_OR_TARANIS(board) ? true : id.contains("battgraph")); + case HasBeeper: + return false; + case HasBluetooth: + return (IS_FAMILY_HORUS_OR_T16(board) || IS_TARANIS_X7(board) || IS_TARANIS_XLITE(board)|| IS_TARANIS_X9E(board) || + IS_TARANIS_X9DP_2019(board) || IS_FLYSKY_NV14(board) || IS_FLYSKY_EL18(board) || IS_FAMILY_PL18(board)) ? true : false; + case HasBrightness: + return true; + case HasDisplayText: return 1; - case NumCurves: - return 32; - case HasMixerNames: - return (IS_TARANIS_X9(board) ? 8 : 6); case HasExpoNames: return (IS_TARANIS_X9(board) ? 8 : 6); - case HasNoExpo: - return (IS_HORUS_OR_TARANIS(board) ? false : true); - case ChannelsName: - return (HAS_LARGE_LCD(board) ? 6 : 4); - case HasCvNames: - return 1; - case Telemetry: - return 1; - case TelemetryBars: - return 1; - case TelemetryCustomScreens: - if (IS_FAMILY_HORUS_OR_T16(board)) - return 0; - else - return 4; - case TelemetryCustomScreensBars: - return (getCapability(TelemetryCustomScreens) ? 4 : 0); - case TelemetryCustomScreensLines: - return (getCapability(TelemetryCustomScreens) ? 4 : 0); - case TelemetryCustomScreensFieldsPerLine: - return HAS_LARGE_LCD(board) ? 3 : 2; - case NoTelemetryProtocol: - return IS_HORUS_OR_TARANIS(board) ? 1 : 0; - case TelemetryUnits: - return 0; - case TelemetryMaxMultiplier: - return 32; - case PPMCenter: - return (IS_HORUS_OR_TARANIS(board) ? 500 : (id.contains("ppmca") ? 125 : 0)); - case SYMLimits: - return 1; - case HasVario: - return Boards::isAir(board); - case HasVarioSink: - return Boards::isAir(board); case HasFailsafe: return 32; - case NumModules: - return 2; - case NumFirstUsableModule: - return (IS_JUMPER_T12(board) && !id.contains("internalmulti") ? 1 : 0); + case HasFAIMode: + return 1; + case HasFlySkyGimbals: + return (IS_RADIOMASTER_TX16S(board) && id.contains("flyskygimbals")); + case HasGeneralUnits: + return true; + case HasInputDiff: + return (IS_HORUS_OR_TARANIS(board) ? true : false); + case HasIntModuleCRSF: + return id.contains("internalcrsf"); + case HasIntModuleELRS: + return id.contains("internalelrs") || IS_RADIOMASTER_TX12_MK2(board) || + IS_IFLIGHT_COMMANDO8(board) || IS_RADIOMASTER_BOXER(board) || + IS_RADIOMASTER_POCKET(board) || IS_JUMPER_T20(board) || + IS_RADIOMASTER_MT12(board) || IS_RADIOMASTER_TX15(board) || IS_JUMPER_T15PRO(board); + case HasIntModuleFlySky: + return id.contains("afhds2a") || id.contains("afhds3") || + IS_FLYSKY_NV14(board) || IS_FLYSKY_EL18(board) || IS_FAMILY_PL18(board); + case HasIntModuleMulti: + return id.contains("internalmulti") || IS_RADIOMASTER_TX16S(board) || IS_JUMPER_T18(board) || + IS_RADIOMASTER_TX12(board) || IS_JUMPER_TLITE(board) || IS_BETAFPV_LR3PRO(board) || + (IS_RADIOMASTER_ZORRO(board) && !id.contains("internalelrs")) || + (IS_RADIOMASTER_BOXER(board) && !id.contains("internalelrs")) || + (IS_RADIOMASTER_POCKET(board) && !id.contains("internalelrs")) || + (IS_RADIOMASTER_MT12(board) && !id.contains("internalelrs")); + case HasMixerExpo: + return (IS_HORUS_OR_TARANIS(board) ? true : false); + case HasMixerNames: + return (IS_TARANIS_X9(board) ? 8 : 6); + case HasModelImage: + return (board == BOARD_TARANIS_X9D || IS_TARANIS_PLUS(board) || board == BOARD_TARANIS_X9DP_2019 || IS_FAMILY_HORUS_OR_T16(board)); + case HasModelLabels: + return IS_FAMILY_HORUS_OR_T16(board); + case HasModelsList: + return IS_FAMILY_HORUS_OR_T16(board); case HasModuleR9MFlex: return id.contains("flexr9m"); case HasModuleR9MMini: return IS_TARANIS_XLITE(board) && !id.contains("stdr9m"); + case HasNoExpo: + return (IS_HORUS_OR_TARANIS(board) ? false : true); case HasPPMStart: return true; - case HasVolume: - return true; - case HasBrightness: - return true; - case PerModelTimers: + case HasPxxCountry: return 1; - case SlowScale: - return 10; - case SlowRange: - return 250; - case CSFunc: - return 18; case HasSDLogs: return true; - case GetThrSwitch: - return (IS_HORUS_OR_TARANIS(board) ? SWITCH_SF1 : SWITCH_THR); - case HasDisplayText: + case HasSoftwareSerialPower: + return IS_RADIOMASTER_TX16S(board); + case HasSoundMixer: return 1; + case HasSportConnector: + return IS_ACCESS_RADIO(board, id) || IS_TARANIS_X7(board) || IS_HORUS_X10(board) || IS_TARANIS_XLITE(board); + case HasSwitchableJack: + return IS_TARANIS_XLITES(board); + case HasTelemetryBaudrate: + return IS_HORUS_OR_TARANIS(board); case HasTopLcd: return IS_TARANIS_X9E(board) ? 1 : 0; - case GlobalFunctions: - return 64; - case VirtualInputs: - return 32; + case HasVario: + return Boards::isAir(board); + case HasVarioSink: + return Boards::isAir(board); + case HasVCPSerialMode: + return IS_FAMILY_HORUS_OR_T16(board) || IS_RADIOMASTER_ZORRO(board) || + IS_JUMPER_TPRO(board) || IS_RADIOMASTER_TX12_MK2(board) || + IS_RADIOMASTER_BOXER(board) || IS_RADIOMASTER_POCKET(board) || + IS_RADIOMASTER_MT12(board); + case HasVolume: + return true; + case Heli: + if (Boards::getCapability(board, Board::Surface)) + return false; + else if (IS_HORUS_OR_TARANIS(board)) + return id.contains("noheli") ? 0 : 1; + else + return id.contains("heli") ? 1 : 0; + case Imperial: + return 0; case InputsLength: return HAS_LARGE_LCD(board) ? 4 : 3; - case TrainerInputs: - return 16; - case LuaScripts: - return IS_HORUS_OR_TARANIS(board) && id.contains("lua") ? 7 : 0; + case KeyShortcuts: + return VERSION_MAJOR > 2 && Boards::getCapability(board, Board::HasColorLcd) ? MAX_KEYSHORTCUTS : 0; + case LogicalSwitches: + return 64; + case LogicalSwitchesExt: + return true; case LuaInputsPerScript: return IS_HORUS_OR_TARANIS(board) ? 10 : 0; case LuaOutputsPerScript: return IS_HORUS_OR_TARANIS(board) ? 6 : 0; - case LimitsPer1000: - case EnhancedCurves: - return 1; - case HasFasOffset: - return true; - case HasMahPersistent: - return true; + case LuaScripts: + return IS_HORUS_OR_TARANIS(board) && id.contains("lua") ? 7 : 0; case MavlinkTelemetry: return id.contains("mavlink") ? 1 : 0; - case SportTelemetry: + case MaxContrast: + if (IS_TARANIS_SMALL(board)) + return 30; + else + return 45; + case MaxVolume: + return 23; + case MinContrast: + if (IS_TARANIS_X9(board)) + return 0; + else + return 10; + case Mixes: + return 64; + case ModelImageKeepExtn: + return (IS_FAMILY_HORUS_OR_T16(board) ? true : false); + case ModelImageNameLen: + return (IS_FAMILY_HORUS_OR_T16(board) ? 14 : 10); // including extension if saved and <= CPN_MAX_BITMAP_LEN + case ModelName: + return (IS_FAMILY_HORUS_OR_T16(board) ? 15 : (HAS_LARGE_LCD(board) ? 12 : 10)); + case Models: + if (IS_FAMILY_HORUS_OR_T16(board)) + return 0; + else + return 60; + case ModelTrainerEnable: + if (IS_HORUS_OR_TARANIS(board) && board!=Board::BOARD_TARANIS_XLITE) + return 1; + else + return 0; + case MultiLangVoice: return 1; - case HasInputDiff: - case HasMixerExpo: - return (IS_HORUS_OR_TARANIS(board) ? true : false); - case HasBatMeterRange: - return (IS_HORUS_OR_TARANIS(board) ? true : id.contains("battgraph")); - case DangerousFunctions: - return id.contains("danger") ? 1 : 0; - case HasModelLabels: - return IS_FAMILY_HORUS_OR_T16(board); - case HasSwitchableJack: - return IS_TARANIS_XLITES(board); - case HasSportConnector: - return IS_ACCESS_RADIO(board, id) || IS_TARANIS_X7(board) || IS_HORUS_X10(board) || IS_TARANIS_XLITE(board); + case NoTelemetryProtocol: + return IS_HORUS_OR_TARANIS(board) ? 1 : 0; + case NumCurvePoints: + return 512; + case NumCurves: + return 32; + case NumFirstUsableModule: + return (IS_JUMPER_T12(board) && !id.contains("internalmulti") ? 1 : 0); + case NumModules: + return 2; + case OffsetWeight: + return 500; + case Outputs: + return 32; + case PermTimers: + return true; + case PPMCenter: + return (IS_HORUS_OR_TARANIS(board) ? 500 : (id.contains("ppmca") ? 125 : 0)); + case PPMFrameLength: + return 40; case PwrButtonPress: return IS_HORUS_OR_TARANIS(board) && (board!=Board::BOARD_TARANIS_X9D) && (board!=Board::BOARD_TARANIS_X9DP); + case QMFavourites: + return VERSION_MAJOR > 2 && Boards::getCapability(board, Board::HasColorLcd) ? MAX_QMFAVOURITES : 0; + case RotaryEncoderNavigation: + return (IS_TARANIS_X7(board) || IS_TARANIS_X9DP_2019(board) || IS_TARANIS_X9E(board) || IS_TARANIS_X9LITE(board) || + IS_JUMPER_T15(board) || IS_JUMPER_T18(board) || IS_JUMPER_T20(board) || IS_JUMPER_TPRO(board) || + IS_RADIOMASTER_BOXER(board) || IS_RADIOMASTER_GX12(board) || IS_RADIOMASTER_MT12(board) || + IS_RADIOMASTER_POCKET(board) || IS_RADIOMASTER_TX12(board) || IS_RADIOMASTER_TX12_MK2(board) || + IS_RADIOMASTER_TX16S(board) || IS_RADIOMASTER_ZORRO(board) || IS_RADIOMASTER_TX15(board) || IS_JUMPER_T15PRO(board) || + IS_FLYSKY_PA01(board) || IS_FLYSKY_ST16(board) || + IS_RADIOMASTER_TX16SMK3(board)); + case SafetyChannelCustomFunction: + return id.contains("nooverridech") ? 0 : 1; case Sensors: if (IS_STM32H7(board)) return 99; @@ -299,69 +294,47 @@ int OpenTxFirmware::getCapability(::Capability capability) return 60; else return 40; - case HasAuxSerialMode: - return (IS_FAMILY_HORUS_OR_T16(board) && !(IS_FLYSKY_NV14(board) || IS_FLYSKY_EL18(board) || IS_FAMILY_PL18(board) || IS_FLYSKY_ST16(board))) || - (IS_TARANIS_X9(board) && !IS_TARANIS_X9DP_2019(board)) || - IS_RADIOMASTER_ZORRO(board) || IS_RADIOMASTER_TX12_MK2(board) || IS_RADIOMASTER_MT12(board); - case HasAux2SerialMode: - return IS_FAMILY_T16(board); - case HasVCPSerialMode: - return IS_FAMILY_HORUS_OR_T16(board) || IS_RADIOMASTER_ZORRO(board) || - IS_JUMPER_TPRO(board) || IS_RADIOMASTER_TX12_MK2(board) || - IS_RADIOMASTER_BOXER(board) || IS_RADIOMASTER_POCKET(board) || - IS_RADIOMASTER_MT12(board); - case HasBluetooth: - return (IS_FAMILY_HORUS_OR_T16(board) || IS_TARANIS_X7(board) || IS_TARANIS_XLITE(board)|| IS_TARANIS_X9E(board) || - IS_TARANIS_X9DP_2019(board) || IS_FLYSKY_NV14(board) || IS_FLYSKY_EL18(board) || IS_FAMILY_PL18(board)) ? true : false; - case HasADCJitterFilter: - return IS_HORUS_OR_TARANIS(board); - case HasTelemetryBaudrate: - return IS_HORUS_OR_TARANIS(board); + case SlowRange: + return 250; + case SlowScale: + return 10; + case SoundPitch: + return 1; + case SYMLimits: + return 1; + case Telemetry: + return 1; + case TelemetryCustomScreens: + if (IS_FAMILY_HORUS_OR_T16(board)) + return 0; + else + return 4; + case TelemetryCustomScreensBars: + return (getCapability(TelemetryCustomScreens) ? 4 : 0); + case TelemetryCustomScreensFieldsPerLine: + return HAS_LARGE_LCD(board) ? 3 : 2; + case TelemetryCustomScreensLines: + return (getCapability(TelemetryCustomScreens) ? 4 : 0); + case Timers: + return 3; + case TimersName: + if (HAS_LARGE_LCD(board)) + return 8; + else + return 3; case TopBarZones: return Boards::getCapability(board, Board::LcdWidth) > Boards::getCapability(board, Board::LcdHeight) ? 4 : 2; - case HasModelsList: - return IS_FAMILY_HORUS_OR_T16(board); - case HasFlySkyGimbals: - return (IS_RADIOMASTER_TX16S(board) && id.contains("flyskygimbals")); - case RotaryEncoderNavigation: - return (IS_TARANIS_X7(board) || IS_TARANIS_X9DP_2019(board) || IS_TARANIS_X9E(board) || IS_TARANIS_X9LITE(board) || - IS_JUMPER_T15(board) || IS_JUMPER_T18(board) || IS_JUMPER_T20(board) || IS_JUMPER_TPRO(board) || - IS_RADIOMASTER_BOXER(board) || IS_RADIOMASTER_GX12(board) || IS_RADIOMASTER_MT12(board) || - IS_RADIOMASTER_POCKET(board) || IS_RADIOMASTER_TX12(board) || IS_RADIOMASTER_TX12_MK2(board) || - IS_RADIOMASTER_TX16S(board) || IS_RADIOMASTER_ZORRO(board) || IS_RADIOMASTER_TX15(board) || IS_JUMPER_T15PRO(board) || - IS_FLYSKY_PA01(board) || IS_FLYSKY_ST16(board) || - IS_RADIOMASTER_TX16SMK3(board)); - case HasSoftwareSerialPower: - return IS_RADIOMASTER_TX16S(board); - case HasIntModuleMulti: - return id.contains("internalmulti") || IS_RADIOMASTER_TX16S(board) || IS_JUMPER_T18(board) || - IS_RADIOMASTER_TX12(board) || IS_JUMPER_TLITE(board) || IS_BETAFPV_LR3PRO(board) || - (IS_RADIOMASTER_ZORRO(board) && !id.contains("internalelrs")) || - (IS_RADIOMASTER_BOXER(board) && !id.contains("internalelrs")) || - (IS_RADIOMASTER_POCKET(board) && !id.contains("internalelrs")) || - (IS_RADIOMASTER_MT12(board) && !id.contains("internalelrs")); - case HasIntModuleCRSF: - return id.contains("internalcrsf"); - case HasIntModuleELRS: - return id.contains("internalelrs") || IS_RADIOMASTER_TX12_MK2(board) || - IS_IFLIGHT_COMMANDO8(board) || IS_RADIOMASTER_BOXER(board) || - IS_RADIOMASTER_POCKET(board) || IS_JUMPER_T20(board) || - IS_RADIOMASTER_MT12(board) || IS_RADIOMASTER_TX15(board) || IS_JUMPER_T15PRO(board); - case HasIntModuleFlySky: - return id.contains("afhds2a") || id.contains("afhds3") || - IS_FLYSKY_NV14(board) || IS_FLYSKY_EL18(board) || IS_FAMILY_PL18(board); - case BacklightLevelMin: - if (IS_HORUS_X12S(board)) { - return 5; - } else if (IS_FAMILY_T16(board) || IS_FLYSKY_NV14(board) || IS_FLYSKY_EL18(board) || IS_FAMILY_PL18(board) || IS_FLYSKY_ST16(board)) { - return 1; - } else { - return 46; - } - case QMFavourites: - return VERSION_MAJOR > 2 && Boards::getCapability(board, Board::HasColorLcd) ? MAX_QMFAVOURITES : 0; - case KeyShortcuts: - return VERSION_MAJOR > 2 && Boards::getCapability(board, Board::HasColorLcd) ? MAX_KEYSHORTCUTS : 0; + case TrainerInputs: + return 16; + case TrimsRange: + return 128; + case VirtualInputs: + return 32; + case VoicesAsNumbers: + return 0; + case VoicesMaxLength: + return 8; + default: return 0; } diff --git a/companion/src/generaledit/generalsetup.cpp b/companion/src/generaledit/generalsetup.cpp index 5869b977934..cfd51253e9a 100644 --- a/companion/src/generaledit/generalsetup.cpp +++ b/companion/src/generaledit/generalsetup.cpp @@ -216,15 +216,6 @@ ui(new Ui::GeneralSetup) ui->jackModeCB->hide(); } - if (!firmware->getCapability(OptrexDisplay)) { - ui->label_displayType->hide(); - ui->displayTypeCB->setDisabled(true); - ui->displayTypeCB->hide(); - } - else { - ui->displayTypeCB->setCurrentIndex(generalSettings.optrexDisplay); - } - if (!firmware->getCapability(HasVolume)) { ui->volume_SL->hide(); ui->volume_SL->setDisabled(true); @@ -252,12 +243,6 @@ ui(new Ui::GeneralSetup) ui->label_KeysBl->hide(); } - if (!firmware->getCapability(SoundMod)) { - ui->soundModeCB->setDisabled(true); - ui->label_soundMode->hide(); - ui->soundModeCB->hide(); - } - if (!firmware->getCapability(SoundPitch)) { ui->speakerPitchSB->setDisabled(true); ui->label_speakerPitch->hide(); @@ -627,7 +612,6 @@ void GeneralSetupPanel::setValues() ui->OFFBright_SB->setValue(generalSettings.backlightOffBright); ui->BLBright_SB->setMinimum(ui->OFFBright_SB->value()); ui->OFFBright_SB->setMaximum(ui->BLBright_SB->value()); - ui->soundModeCB->setCurrentIndex(generalSettings.speakerMode); ui->volume_SL->setValue(generalSettings.speakerVolume + 12); ui->beeperlenCB->setCurrentIndex(generalSettings.beeperLength + 2); ui->speakerPitchSB->setValue(generalSettings.speakerPitch); @@ -724,14 +708,6 @@ void GeneralSetupPanel::on_hapticStrength_valueChanged() } } -void GeneralSetupPanel::on_soundModeCB_currentIndexChanged(int index) -{ - if (!lock) { - generalSettings.speakerMode = index; - emit modified(); - } -} - void GeneralSetupPanel::on_splashScreenDuration_currentIndexChanged(int index) { if (!lock) { @@ -1036,14 +1012,6 @@ void GeneralSetupPanel::on_beeperCB_currentIndexChanged(int index) } } -void GeneralSetupPanel::on_displayTypeCB_currentIndexChanged(int index) -{ - if (!lock) { - generalSettings.optrexDisplay = index; - emit modified(); - } -} - void GeneralSetupPanel::on_hapticmodeCB_currentIndexChanged(int index) { if (!lock) { @@ -1052,7 +1020,6 @@ void GeneralSetupPanel::on_hapticmodeCB_currentIndexChanged(int index) } } - void GeneralSetupPanel::on_channelorderCB_currentIndexChanged(int index) { if (!lock) { diff --git a/companion/src/generaledit/generalsetup.h b/companion/src/generaledit/generalsetup.h index 2e996e45daf..8ccac7c2448 100644 --- a/companion/src/generaledit/generalsetup.h +++ b/companion/src/generaledit/generalsetup.h @@ -44,7 +44,6 @@ class GeneralSetupPanel : public GeneralPanel void on_rssiPowerOffWarnChkB_stateChanged(int); void on_trainerPowerOffWarnChkB_stateChanged(int); void on_gpsFormatCB_currentIndexChanged(int index); - void on_displayTypeCB_currentIndexChanged(int index); void on_BLBright_SB_editingFinished(); void on_OFFBright_SB_editingFinished(); void on_brightCtrl_CB_currentIndexChanged(int index); @@ -57,7 +56,6 @@ class GeneralSetupPanel : public GeneralPanel void on_timezoneLE_textEdited(const QString &text); void on_adjustRTC_stateChanged(int); void on_hapticStrength_valueChanged(); - void on_soundModeCB_currentIndexChanged(int index); void on_beeperlenCB_currentIndexChanged(int index); void on_volume_SL_valueChanged(); void on_hapticmodeCB_currentIndexChanged(int index); diff --git a/companion/src/generaledit/generalsetup.ui b/companion/src/generaledit/generalsetup.ui index 8bb5eb4347e..34e31839e55 100644 --- a/companion/src/generaledit/generalsetup.ui +++ b/companion/src/generaledit/generalsetup.ui @@ -503,41 +503,38 @@ - - - - Backlight Brightness - - - - - + + - + + Large image (2 columns) + - - - Automatically adjust the radio's clock if a GPS is connected to telemetry. - - - Qt::LayoutDirection::LeftToRight - - - Adjust RTC - - + + Small image (3 columns) + - + + + Name only (2 columns) + + + + + Name only (1 column) + + + - - + + - Backlight Auto OFF after + - + @@ -569,28 +566,33 @@ - - + + - Wav volume + Speaker Volume - - - - - Match all - - - - - Match any - - + + + + Hz + + + 300 + + + 1100 + + + 10 + + + 700 + - + Enable this to quickly change model on the model select page (a long press can then be used to open the model edit menu). @@ -600,147 +602,121 @@ - - - - Keys Backlight + + + + -2 + + + 2 + + + 1 + + + Qt::Orientation::Horizontal - + - Background volume + Vario volume - - - - Vario repeat at zero + + + + 8 - - - - Owner Registration ID - - + + - - + + - Label selection mode + Vario repeat at zero - - - - 23 + + + + ms - - 5 + + 200 - - 0 + + 1000 - - Qt::Orientation::Horizontal + + 10 - - - - - - - - - - 100 + + 500 - - + + - Label matching + Voice Language - - - - -2 - - - 2 - - - 1 - - - Qt::Orientation::Horizontal + + + + Text Language - - + + - FAI Mode + Favorites matching - - + + - - Multi select - + - - Single select - + + + Automatically adjust the radio's clock if a GPS is connected to telemetry. + + + Qt::LayoutDirection::LeftToRight + + + Adjust RTC + + - - - - - - Qt::Orientation::Vertical - - - - 20 - 40 - - - - - - - - - - + - - + + - Backlight OFF Brightness + Backlight Brightness - - - - Backlight Control + + + + 100 - + @@ -758,95 +734,69 @@ - - - - ms - - - 200 - - - 1000 - - - 10 - - - 500 + + + + Backlight Switch - - - - -2 - - - 2 - - - 1 + + + + Beep volume - - Qt::Orientation::Horizontal + + + + + + Model quick select - - - - If you enable FAI, only RSSI and RxBt sensors will keep working. This function cannot be disabled by the radio. + + + + Label matching + + + + - - - - Hz - - - 1300 - - - 2900 - - - 10 - - - 1700 + + + + Backlight flash on alarm - - - - - Large image (2 columns) - - - - - Small image (3 columns) - - - - - Name only (2 columns) - - - - - Name only (1 column) - - + + + + Label selection mode + - + + + + Qt::Orientation::Vertical + + + + 20 + 40 + + + + + @@ -874,97 +824,57 @@ - - - - - - - - Beeper - - - - - Speaker - - - - - BeeperVoice - - - - - SpeakerVoice - - - - - - - - Vario volume + + + + -2 - - - - - - 8 + + 2 - - - - - - Country Code + + 1 - - - - - - Voice Language + + Qt::Orientation::Horizontal - - - - Text Language - - + + - + Speaker Pitch (spkr only) - - + + - Vario pitch at zero + Manage Models layout - - - - 5 - - - 100 + + + + Country Code - - + + + + Rotary Encoder Mode + - + + + + @@ -977,39 +887,23 @@ - - - - Hz - + + - 300 + -2 - 1100 - - - 10 + 2 - - 700 + + 1 - - - - - - + + Qt::Orientation::Horizontal - - - - - - - + @@ -1023,77 +917,78 @@ - - + + - Sound Mode + Vario pitch at max - - + + - Timeshift from UTC + Wav volume - - + + - Backlight color + Vario pitch at zero - - - - Beep volume - - + + - - + + - Backlight flash on alarm + Backlight Auto OFF after - - + + - Backlight Switch + Backlight OFF Brightness - - - - - 0 - 0 - - + + - + If you enable FAI, only RSSI and RxBt sensors will keep working. This function cannot be disabled by the radio. - + - - If this value is not 0, any keypress will turn on the backlight and turn it off after the specified number of seconds. - - - sec - + + + + - 600 + 23 - + 5 + + 0 + + + Qt::Orientation::Horizontal + - + + + + Volume Control + + + + @@ -1112,74 +1007,78 @@ - - + + - Manage Models layout + FAI Mode - - - - -2 - - - 2 - - - 1 - - - Qt::Orientation::Horizontal + + + + Backlight color - - + + + + + Match all + + + + + Match any + + + + + + - Rotary Encoder Mode + Keys Backlight - - + + + + Hz + - -2 + 1300 - 2 + 2900 - - 1 + + 10 - - Qt::Orientation::Horizontal + + 1700 - - + + - Model quick select + Backlight Control - - - - Speaker Volume + + + + 5 - - - - - - Volume Control + + 100 - + @@ -1206,58 +1105,51 @@ p, li { white-space: pre-wrap; } - - - - Vario pitch at max - - - - - + + - Favorites matching + Owner Registration ID - - - - - - QLayout::SizeConstraint::SetDefaultConstraint - - - - - - 0s - - - - - 0.5s - - - - - 1s - - + + - 2s + Multi select - 3s + Single select - - + + + + -2 + + + 2 + + + 1 + + + Qt::Orientation::Horizontal + + + + + + + + 0 + 0 + + @@ -1265,38 +1157,61 @@ p, li { white-space: pre-wrap; } - <html><head/><body><p>Channel order</p><p><br/></p><p>Defines the order of the default mixes created on a new model.</p></body></html> + If this value is not 0, any keypress will turn on the backlight and turn it off after the specified number of seconds. - - -1 + + sec + + + 600 + + + 5 - - - - - 0 - 0 - + + + + + + + Background volume + + + + - Play Delay (switch mid position) + Timeshift from UTC - - + + + + + + QLayout::SizeConstraint::SetDefaultConstraint + + + - + 0 0 - + - 16777215 - 16777215 + 0 + 22 + + + + + 16777215 + 16777215 @@ -1320,8 +1235,8 @@ p, li { white-space: pre-wrap; } - - + + 0 @@ -1331,16 +1246,60 @@ p, li { white-space: pre-wrap; } 0 - 0 + 22 + + + + + + + + Battery warning voltage. +This is the threshold where the battery warning sounds. + +Acceptable values are 3v..12v + + + + + + V + + + 1 + + + 3.000000000000000 + + + 12.000000000000000 + + + 0.100000000000000 + + + 9.600000000000000 + + + + + - Haptic Strength + GPS Coordinates - - + + + + + + + + + 0 @@ -1349,20 +1308,56 @@ p, li { white-space: pre-wrap; } - 20 - 0 + 0 + 22 - + + + + + + + Beeper volume + +0 - Quiet. No beeps at all. +1 - No Keys. Normal beeps but menu keys do not beep. +2 - Normal. +3 - Loud. +4 - Extra loud. + + + Quiet + + + + + Alarms Only + + + + + No Keys + + + + + All + + + + + + - Battery Warning + Play Startup Sound - - + + 0 @@ -1375,84 +1370,23 @@ p, li { white-space: pre-wrap; } 0 - - Haptic Mode + + - - - - - - - - - 0 - 0 - - - - - --- - - - - - 2s - - - - - 3s - - - - - 4s - - - - - 6s - - - - - 8s - - - - - 10s - - - - - 15s - - - - - - - - - Trainer Poweroff Warning + Contrast - - + + - Measurement Units + Power Off Delay - - - - - + + 0 @@ -1466,12 +1400,12 @@ p, li { white-space: pre-wrap; } - Beeper Length + Haptic Mode - - + + 0 @@ -1481,40 +1415,18 @@ p, li { white-space: pre-wrap; } 0 - 22 + 0 - - - - - - - - - - - 10 - - - 45 - - - 25 - - - - - - GPS Coordinates + RSSI Poweroff Warning - - + + - + 0 0 @@ -1522,76 +1434,57 @@ p, li { white-space: pre-wrap; } 0 - 22 - - - - - 16777215 - 16777215 + 0 - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" text-decoration: underline;">Warnings</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">These will define startup warnings.</p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Throttle warning - will alert if the throttle is not at idle during startup</p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Switch warning - will alert if switches are not in their defaul position</p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Memory warning - will alert if there's not a lot of memory left</p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Silent mode warning - will alert you if the beeper is set to quiet (0)</p></body></html> - - - - - true + Show Splash Screen on Startup - - - - Hats Mode - - - - - + + - Ask on Connect + DMS - Joystick (HID) + NMEA + + + + + + + 0 + 0 + + + + MAVLink Baud Rate + + + + + - USB Mass Storage + Metric - USB Serial (CDC) + Imperial - - - - PPM Units - - - - - + + 0 @@ -1601,80 +1494,216 @@ p, li { white-space: pre-wrap; } 0 - 22 + 0 + + Haptic Strength + + + + + + + Measurement Units + + + + + + + + 0 + 0 + + + + Default Channel Order + + + + + - X-Short + 0s - Short + 0.5s - Normal + 1s - Long + 2s - X-Long + 3s - - + + + Stick Mode + + + + + + + + 0 + 0 + + + - 0 - 0 + 16777215 + 16777215 + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" text-decoration: underline;">Warnings</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">These will define startup warnings.</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Throttle warning - will alert if the throttle is not at idle during startup</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Switch warning - will alert if switches are not in their defaul position</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Memory warning - will alert if there's not a lot of memory left</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Silent mode warning - will alert you if the beeper is set to quiet (0)</p></body></html> + - MAVLink Baud Rate + + + + true - - + + + + + + + 0 + 0 + + + + + --- + + + + + 2s + + + + + 3s + + + + + 4s + + + + + 6s + + + + + 8s + + + + + 10s + + + + + 15s + + + + + + + + + + + 0 + 0 + + + + + 0 + 22 + + - 0s + X-Short - 0.5s + Short - 1s + Normal - 2s + Long - 3s + X-Long - - + + + + Power ON/OFF Haptic + + + + + + + Trainer Poweroff Warning + + + + + 0 @@ -1689,20 +1718,30 @@ p, li { white-space: pre-wrap; } - Standard + Quiet + + + + + Only Alarms + + + + + No Keys - Optrex + All - - + + - + 0 0 @@ -1713,72 +1752,102 @@ p, li { white-space: pre-wrap; } 22 - - + + + 16777215 + 16777215 + - + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" text-decoration: underline;">Warnings</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">These will define startup warnings.</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Throttle warning - will alert if the throttle is not at idle during startup</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Switch warning - will alert if switches are not in their defaul position</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Memory warning - will alert if there's not a lot of memory left</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Silent mode warning - will alert you if the beeper is set to quiet (0)</p></body></html> + + - - Battery warning voltage. -This is the threshold where the battery warning sounds. - -Acceptable values are 3v..12v - - - - - - V - - - 1 - - - 3.000000000000000 - - - 12.000000000000000 - - - 0.100000000000000 - - - 9.600000000000000 + + true + + + + + 0s + + + + + 0.5s + + + + + 1s + + + + + 2s + + + + + 3s + + + + + + + + + Ask on Connect + + + + + Joystick (HID) + + + + + USB Mass Storage + + + + + USB Serial (CDC) + + + + - + - USB Mode + Jack Mode - - - - - 0 - 0 - - - - - 0 - 0 - - - - - + + - Contrast + Power Auto Off - - + + 0 @@ -1792,75 +1861,174 @@ Acceptable values are 3v..12v - Show Splash Screen on Startup + Beeper Mode - - - - - 0 - 0 - + + + + - - Default Channel Order + + - - - - - - - 0 - 0 - + + Mode selection: + +Mode 1: + Left stick: Elevator, Rudder + Right stick: Throttle, Aileron + +Mode 2: + Left stick: Throttle, Rudder + Right stick: Elevator, Aileron + +Mode 3: + Left stick: Elevator, Aileron + Right stick: Throttle, Rudder + +Mode 4: + Left stick: Throttle, Aileron + Right stick: Elevator, Rudder + + - - - 0 - 22 - + + -1 + + + + - Quiet + 4800 Baud - Only Alarms + 9600 Baud - No Keys + 14400 Baud - All + 19200 Baud + + + + + 38400 Baud + + + + + 57600 Baud + + + + + 76800 Baud + + + + + 115200 Baud - - + + + + 0.-- + - DMS + 0.-- - NMEA + 0.0 + + + + + us - - + + + + + + Min + + + + + + + v + + + 1 + + + 3.000000000000000 + + + 16.000000000000000 + + + 0.100000000000000 + + + 9.000000000000000 + + + + + + + Max + + + + + + + v + + + 1 + + + 3.000000000000000 + + + 16.000000000000000 + + + 0.100000000000000 + + + 12.000000000000000 + + + + + + + 0 @@ -1870,9 +2038,16 @@ Acceptable values are 3v..12v 0 - 22 + 0 + + "No Sound" Warning + + + + + @@ -1880,25 +2055,44 @@ Acceptable values are 3v..12v - If not zero will sound beeps if the transmitter has been left without inputs for the specified number of minutes. + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">LCD Screen Contrast</span></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Values can be 20-45</span></p></body></html> - min + ms + + + 0 - 120 + 1000 - - - - - - + + 10 + + + 0 - - + + + + + 0 + 0 + + + + + 0 + 22 + + @@ -1906,40 +2100,21 @@ Acceptable values are 3v..12v - Mode selection: - -Mode 1: - Left stick: Elevator, Rudder - Right stick: Throttle, Aileron - -Mode 2: - Left stick: Throttle, Rudder - Right stick: Elevator, Aileron - -Mode 3: - Left stick: Elevator, Aileron - Right stick: Throttle, Rudder - -Mode 4: - Left stick: Throttle, Aileron - Right stick: Elevator, Rudder - - - - - -1 + - - - - - - Power ON/OFF Haptic + + 10 + + + 45 + + + 25 - - + + 0 @@ -1949,33 +2124,36 @@ Mode 4: 0 - 0 + 22 - - LCD Display Type + + - - - - - - - 0 - 0 - + + - - - 0 - 0 - + + If not zero will sound beeps if the transmitter has been left without inputs for the specified number of minutes. + + min + + + 120 + + + + + - Inactivity Timer + PPM Units + + + @@ -2017,15 +2195,8 @@ Mode 4: - - - - Power Off Delay - - - - - + + 0 @@ -2039,74 +2210,32 @@ Mode 4: - Low EEPROM Warning + Haptic Length - - - - - Metric - - - - - Imperial - - - - - - - - 0.-- + + + + Qt::Orientation::Vertical - - - 0.-- - - - - - 0.0 - - - - - us - - - - - - - - - Ask on Connect - - - - - Audio - - - - - Trainer - - - + + + 20 + 40 + + + - - + + - Stick Mode + - - + + 0 @@ -2116,109 +2245,53 @@ Mode 4: 0 - 22 + 0 - - - - - - - - Beeper volume - -0 - Quiet. No beeps at all. -1 - No Keys. Normal beeps but menu keys do not beep. -2 - Normal. -3 - Loud. -4 - Extra loud. - - - - Quiet - - - - - Alarms Only - - - - - No Keys - - - - - All - - - - - - - Play Startup Sound + Beeper Length - - + + - + 0 0 - + - 0 - 0 + 16777215 + 16777215 - - RSSI Poweroff Warning - - - - - - - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">LCD Screen Contrast</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Values can be 20-45</span></p></body></html> - - - ms - - - 0 - - - 1000 +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" text-decoration: underline;">Warnings</span></p> +<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"></p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">These will define startup warnings.</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Throttle warning - will alert if the throttle is not at idle during startup</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Switch warning - will alert if switches are not in their defaul position</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Memory warning - will alert if there's not a lot of memory left</p> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Silent mode warning - will alert you if the beeper is set to quiet (0)</p></body></html> - - 10 + + - - 0 + + true - - + + - + 0 0 @@ -2229,35 +2302,38 @@ p, li { white-space: pre-wrap; } 22 - - - 16777215 - 16777215 - + + -2 - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" text-decoration: underline;">Warnings</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">These will define startup warnings.</p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Throttle warning - will alert if the throttle is not at idle during startup</p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Switch warning - will alert if switches are not in their defaul position</p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Memory warning - will alert if there's not a lot of memory left</p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Silent mode warning - will alert you if the beeper is set to quiet (0)</p></body></html> + + 2 + + + 1 - + + Qt::Orientation::Horizontal + + + + + + - - true + + + + + <html><head/><body><p>Channel order</p><p><br/></p><p>Defines the order of the default mixes created on a new model.</p></body></html> + + + -1 - - + + 0 @@ -2266,109 +2342,58 @@ p, li { white-space: pre-wrap; } - 0 + 20 0 + + + - Haptic Length + Battery Warning - + Power On Delay - - - - - 0 - 0 - - - - - 0 - 0 - + + + + min - - Beeper Mode + + 255 - - - - - 4800 Baud - - - - - 9600 Baud - - - - - 14400 Baud - - - - - 19200 Baud - - - - - 38400 Baud - - + + - 57600 Baud + Ask on Connect - 76800 Baud + Audio - 115200 Baud + Trainer - - - - Qt::Orientation::Vertical - - - - 20 - 40 - - - - - - - - Jack Mode - - - - - + + - + 0 0 @@ -2376,85 +2401,14 @@ p, li { white-space: pre-wrap; } 0 - 22 + 0 - - -2 - - - 2 - - - 1 - - - Qt::Orientation::Horizontal + + Inactivity Timer - - - - - - Min - - - - - - - v - - - 1 - - - 3.000000000000000 - - - 16.000000000000000 - - - 0.100000000000000 - - - 9.000000000000000 - - - - - - - Max - - - - - - - v - - - 1 - - - 3.000000000000000 - - - 16.000000000000000 - - - 0.100000000000000 - - - 12.000000000000000 - - - - - @@ -2475,7 +2429,7 @@ p, li { white-space: pre-wrap; } - + 0 @@ -2489,66 +2443,34 @@ p, li { white-space: pre-wrap; } - "No Sound" Warning + Low EEPROM Warning - - + + - + Hats Mode - - + + + + USB Mode + + + + + - + 0 0 - - - 16777215 - 16777215 - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" text-decoration: underline;">Warnings</span></p> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">These will define startup warnings.</p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Throttle warning - will alert if the throttle is not at idle during startup</p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Switch warning - will alert if switches are not in their defaul position</p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Memory warning - will alert if there's not a lot of memory left</p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Silent mode warning - will alert you if the beeper is set to quiet (0)</p></body></html> - - - - - - true - - - - - - Power Auto Off - - - - - - - min - - - 255 + Play Delay (switch mid position) diff --git a/companion/src/generaledit/hardware.cpp b/companion/src/generaledit/hardware.cpp index 8c9ba3989b2..8517354faa0 100644 --- a/companion/src/generaledit/hardware.cpp +++ b/companion/src/generaledit/hardware.cpp @@ -345,16 +345,6 @@ HardwarePanel::HardwarePanel(QWidget * parent, GeneralSettings & generalSettings addParams(); } - if (firmware->getCapability(HastxCurrentCalibration)) { - addLabel(tr("Current Offset")); - AutoSpinBox *txCurrentCalibration = new AutoSpinBox(this); - FieldRange txCCRng = GeneralSettings::getTxCurrentCalibration(); - txCurrentCalibration->setSuffix(txCCRng.unit); - txCurrentCalibration->setField(generalSettings.txCurrentCalibration); - params->append(txCurrentCalibration); - addParams(); - } - if (Boards::getCapability(board, Board::LcdWidth) == 128) { addSection(tr("Screen")); diff --git a/companion/src/storage/labeled.cpp b/companion/src/storage/labeled.cpp index 0d699d92e03..a9dffc28f09 100644 --- a/companion/src/storage/labeled.cpp +++ b/companion/src/storage/labeled.cpp @@ -188,7 +188,6 @@ bool LabelsStorageFormat::write(RadioData & radioData) if (loadRadioSettings(gsCur)) { GeneralSettings & gsNew = radioData.generalSettings; - gsNew.txCurrentCalibration = gsCur.txCurrentCalibration; gsNew.txVoltageCalibration = gsCur.txVoltageCalibration; for (int i = 0; i < CPN_MAX_INPUTS; i++) {