diff --git a/companion/src/firmwares/opentx/opentxGruvin9xsimulator.cpp b/companion/src/firmwares/opentx/opentxGruvin9xsimulator.cpp index 646043839..0d2f07771 100644 --- a/companion/src/firmwares/opentx/opentxGruvin9xsimulator.cpp +++ b/companion/src/firmwares/opentx/opentxGruvin9xsimulator.cpp @@ -98,7 +98,7 @@ bool hasExtendedTrims() uint8_t getStickMode() { - return g_eeGeneral.stickMode; + return limit(0, g_eeGeneral.stickMode, 3); } } @@ -160,7 +160,7 @@ void Open9xGruvin9xSimulator::setValues(TxInputs &inputs) void Open9xGruvin9xSimulator::setTrim(unsigned int idx, int value) { - idx = Open9xGruvin9x::modn12x3[4*getStickMode() + idx] - 1; + idx = Open9xGruvin9x::modn12x3[4*getStickMode() + idx]; uint8_t phase = getTrimFlightPhase(getFlightPhase(), idx); setTrimValue(phase, idx, value); } @@ -174,7 +174,7 @@ void Open9xGruvin9xSimulator::getTrims(Trims & trims) } for (int i=0; i<2; i++) { - uint8_t idx = Open9xGruvin9x::modn12x3[4*getStickMode() + i] - 1; + uint8_t idx = Open9xGruvin9x::modn12x3[4*getStickMode() + i]; int16_t tmp = trims.values[i]; trims.values[i] = trims.values[idx]; trims.values[idx] = tmp; diff --git a/companion/src/firmwares/opentx/opentxM128simulator.cpp b/companion/src/firmwares/opentx/opentxM128simulator.cpp index 505c05fe3..f169a10d3 100644 --- a/companion/src/firmwares/opentx/opentxM128simulator.cpp +++ b/companion/src/firmwares/opentx/opentxM128simulator.cpp @@ -96,7 +96,7 @@ bool hasExtendedTrims() uint8_t getStickMode() { - return g_eeGeneral.stickMode; + return limit(0, g_eeGeneral.stickMode, 3); } } @@ -154,7 +154,7 @@ void Open9xM128Simulator::setValues(TxInputs &inputs) void Open9xM128Simulator::setTrim(unsigned int idx, int value) { - idx = Open9xM128::modn12x3[4*getStickMode() + idx] - 1; + idx = Open9xM128::modn12x3[4*getStickMode() + idx]; uint8_t phase = getTrimFlightPhase(getFlightPhase(), idx); setTrimValue(phase, idx, value); } @@ -168,7 +168,7 @@ void Open9xM128Simulator::getTrims(Trims & trims) } for (int i=0; i<2; i++) { - uint8_t idx = Open9xM128::modn12x3[4*getStickMode() + i] - 1; + uint8_t idx = Open9xM128::modn12x3[4*getStickMode() + i]; int16_t tmp = trims.values[i]; trims.values[i] = trims.values[idx]; trims.values[idx] = tmp; diff --git a/companion/src/firmwares/opentx/opentxSky9xsimulator.cpp b/companion/src/firmwares/opentx/opentxSky9xsimulator.cpp index 1b4d42793..9f444c808 100644 --- a/companion/src/firmwares/opentx/opentxSky9xsimulator.cpp +++ b/companion/src/firmwares/opentx/opentxSky9xsimulator.cpp @@ -125,7 +125,7 @@ bool hasExtendedTrims() uint8_t getStickMode() { - return g_eeGeneral.stickMode; + return limit(0, g_eeGeneral.stickMode, 3); } } @@ -193,7 +193,7 @@ void Open9xSky9xSimulator::setValues(TxInputs &inputs) void Open9xSky9xSimulator::setTrim(unsigned int idx, int value) { - idx = Open9xSky9x::modn12x3[4*getStickMode() + idx] - 1; + idx = Open9xSky9x::modn12x3[4*getStickMode() + idx]; uint8_t phase = getTrimFlightPhase(getFlightPhase(), idx); setTrimValue(phase, idx, value); } @@ -207,7 +207,7 @@ void Open9xSky9xSimulator::getTrims(Trims & trims) } for (int i=0; i<2; i++) { - uint8_t idx = Open9xSky9x::modn12x3[4*getStickMode() + i] - 1; + uint8_t idx = Open9xSky9x::modn12x3[4*getStickMode() + i]; int16_t tmp = trims.values[i]; trims.values[i] = trims.values[idx]; trims.values[idx] = tmp; diff --git a/companion/src/firmwares/opentx/opentxTaranisSimulator.cpp b/companion/src/firmwares/opentx/opentxTaranisSimulator.cpp index e48cbf9af..ae4424797 100644 --- a/companion/src/firmwares/opentx/opentxTaranisSimulator.cpp +++ b/companion/src/firmwares/opentx/opentxTaranisSimulator.cpp @@ -128,7 +128,7 @@ bool hasExtendedTrims() uint8_t getStickMode() { - return g_eeGeneral.stickMode; + return limit(0, g_eeGeneral.stickMode, 3); } void resetTrims() @@ -200,7 +200,7 @@ void OpentxTaranisSimulator::setValues(TxInputs &inputs) void OpentxTaranisSimulator::setTrim(unsigned int idx, int value) { - idx = Open9xX9D::modn12x3[4*getStickMode() + idx] - 1; + idx = Open9xX9D::modn12x3[4*getStickMode() + idx]; uint8_t phase = getTrimFlightPhase(getFlightPhase(), idx); setTrimValue(phase, idx, value); } @@ -214,7 +214,7 @@ void OpentxTaranisSimulator::getTrims(Trims & trims) } for (int i=0; i<2; i++) { - uint8_t idx = Open9xX9D::modn12x3[4*getStickMode() + i] - 1; + uint8_t idx = Open9xX9D::modn12x3[4*getStickMode() + i]; int16_t tmp = trims.values[i]; trims.values[i] = trims.values[idx]; trims.values[idx] = tmp; diff --git a/companion/src/firmwares/opentx/opentxsimulator.cpp b/companion/src/firmwares/opentx/opentxsimulator.cpp index a406305b2..9037afa86 100644 --- a/companion/src/firmwares/opentx/opentxsimulator.cpp +++ b/companion/src/firmwares/opentx/opentxsimulator.cpp @@ -100,7 +100,7 @@ bool hasExtendedTrims() uint8_t getStickMode() { - return g_eeGeneral.stickMode; + return limit(0, g_eeGeneral.stickMode, 3); } } @@ -162,7 +162,7 @@ void Open9xSimulator::setValues(TxInputs &inputs) void Open9xSimulator::setTrim(unsigned int idx, int value) { - idx = Open9x::modn12x3[4*getStickMode() + idx] - 1; + idx = Open9x::modn12x3[4*getStickMode() + idx]; uint8_t phase = getTrimFlightPhase(getFlightPhase(), idx); setTrimValue(phase, idx, value); } @@ -176,7 +176,7 @@ void Open9xSimulator::getTrims(Trims & trims) } for (int i=0; i<2; i++) { - uint8_t idx = Open9x::modn12x3[4*getStickMode() + i] - 1; + uint8_t idx = Open9x::modn12x3[4*getStickMode() + i]; int16_t tmp = trims.values[i]; trims.values[i] = trims.values[idx]; trims.values[idx] = tmp; diff --git a/companion/src/xsimulatordialog.cpp b/companion/src/xsimulatordialog.cpp index 3c35f07fa..cb06a169c 100644 --- a/companion/src/xsimulatordialog.cpp +++ b/companion/src/xsimulatordialog.cpp @@ -196,6 +196,7 @@ void xsimulatorDialog::onTimerEvent() static unsigned int lcd_counter = 0; if (!simulator->timer10ms()) { + QMessageBox::critical(this, "companion9x", tr("Firmware %1 error: %2").arg(txInterface->getName()).arg(simulator->getError())); timer->stop(); return; }