From c001f0639130c6976d6995ce13944da7d708351b Mon Sep 17 00:00:00 2001 From: Andrey Gusakov Date: Tue, 11 Feb 2025 20:02:09 +0300 Subject: [PATCH] io_pins: less hacky way of migration from Inverted to Mode --- .../shift_torque_reduction_controller.cpp | 19 +++++++++---------- .../algo/shift_torque_reduction_controller.h | 2 +- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/firmware/controllers/algo/shift_torque_reduction_controller.cpp b/firmware/controllers/algo/shift_torque_reduction_controller.cpp index 1dcf41d7c5..9a5c0761ab 100644 --- a/firmware/controllers/algo/shift_torque_reduction_controller.cpp +++ b/firmware/controllers/algo/shift_torque_reduction_controller.cpp @@ -38,7 +38,8 @@ void ShiftTorqueReductionController::updateTriggerPinState() { case TORQUE_REDUCTION_BUTTON: { updateTriggerPinState( engineConfiguration->torqueReductionTriggerPin, - engineConfiguration->torqueReductionTriggerPinInverted, + // hack until Inverted merged into Mode + engineConfiguration->torqueReductionTriggerPinInverted ? PI_INVERTED_DEFAULT : PI_DEFAULT, engine->engineState.lua.torqueReductionState ); break; @@ -46,7 +47,8 @@ void ShiftTorqueReductionController::updateTriggerPinState() { case LAUNCH_BUTTON: { updateTriggerPinState( engineConfiguration->launchActivatePin, - engineConfiguration->launchActivateInverted, + // hack until Inverted merged into Mode + engineConfiguration->launchActivateInverted ? PI_INVERTED_DEFAULT : PI_DEFAULT, false ); break; @@ -54,11 +56,7 @@ void ShiftTorqueReductionController::updateTriggerPinState() { case TORQUE_REDUCTION_CLUTCH_DOWN_SWITCH: { updateTriggerPinState( engineConfiguration->clutchDownPin, -#if !EFI_SIMULATOR - efiIsInputPinInverted(engineConfiguration->clutchDownPinMode), -#else - false, -#endif + engineConfiguration->clutchDownPinMode, engine->engineState.lua.clutchDownState ); break; @@ -66,7 +64,8 @@ void ShiftTorqueReductionController::updateTriggerPinState() { case TORQUE_REDUCTION_CLUTCH_UP_SWITCH: { updateTriggerPinState( engineConfiguration->clutchUpPin, - engineConfiguration->clutchUpPinInverted, + // hack until Inverted merged into Mode + engineConfiguration->clutchUpPinInverted ? PI_INVERTED_DEFAULT : PI_DEFAULT, engine->engineState.lua.clutchUpState ); break; @@ -79,14 +78,14 @@ void ShiftTorqueReductionController::updateTriggerPinState() { void ShiftTorqueReductionController::updateTriggerPinState( const switch_input_pin_e pin, - const bool isPinInverted, + const pin_input_mode_e mode, const bool invalidPinState ) { #if !EFI_SIMULATOR isTorqueReductionTriggerPinValid = isBrainPinValid(pin); const bool previousTorqueReductionTriggerPinState = torqueReductionTriggerPinState; if (isTorqueReductionTriggerPinValid) { - torqueReductionTriggerPinState = isPinInverted ^ efiReadPin(pin); + torqueReductionTriggerPinState = efiReadPin(pin, mode); } else { torqueReductionTriggerPinState = invalidPinState; } diff --git a/firmware/controllers/algo/shift_torque_reduction_controller.h b/firmware/controllers/algo/shift_torque_reduction_controller.h index 9992538e4b..a51ec05123 100644 --- a/firmware/controllers/algo/shift_torque_reduction_controller.h +++ b/firmware/controllers/algo/shift_torque_reduction_controller.h @@ -13,7 +13,7 @@ public: float getSparkSkipRatio() const; private: void updateTriggerPinState(); - void updateTriggerPinState(switch_input_pin_e pin, bool isPinInverted, bool invalidPinState); + void updateTriggerPinState(switch_input_pin_e pin, pin_input_mode_e mode, bool invalidPinState); void updateTimeConditionSatisfied(); void updateRpmConditionSatisfied();