From 7129b239471d08ec1ee602aa3891a162c9ff7ce7 Mon Sep 17 00:00:00 2001 From: andreika-git Date: Tue, 30 Jan 2018 01:27:39 +0200 Subject: [PATCH] Add Option: Force stepper parking every restart (#562) --- .../algo/engine_configuration_generated_structures.h | 6 +++--- firmware/controllers/algo/rusefi_generated.h | 4 ++-- firmware/hw_layer/stepper.cpp | 2 ++ firmware/integration/rusefi_config.txt | 2 +- firmware/tunerstudio/rusefi.input | 1 + 5 files changed, 9 insertions(+), 6 deletions(-) diff --git a/firmware/controllers/algo/engine_configuration_generated_structures.h b/firmware/controllers/algo/engine_configuration_generated_structures.h index 09f9f8f127..fe2c151f14 100644 --- a/firmware/controllers/algo/engine_configuration_generated_structures.h +++ b/firmware/controllers/algo/engine_configuration_generated_structures.h @@ -1,4 +1,4 @@ -// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun Jan 28 21:16:58 EET 2018 +// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun Jan 28 22:17:49 EET 2018 // begin #ifndef ENGINE_CONFIGURATION_GENERATED_H_ #define ENGINE_CONFIGURATION_GENERATED_H_ @@ -639,7 +639,7 @@ typedef struct { bool measureMapOnlyInOneCylinder : 1; /** offset 376 bit 19 */ - bool unused_board_984_19 : 1; + bool stepperForceParkingEveryRestart : 1; /** offset 376 bit 20 */ bool unused_board_984_20 : 1; @@ -2330,4 +2330,4 @@ typedef struct { #endif // end -// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun Jan 28 21:16:58 EET 2018 +// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun Jan 28 22:17:49 EET 2018 diff --git a/firmware/controllers/algo/rusefi_generated.h b/firmware/controllers/algo/rusefi_generated.h index 561c092eed..3297b67527 100644 --- a/firmware/controllers/algo/rusefi_generated.h +++ b/firmware/controllers/algo/rusefi_generated.h @@ -580,8 +580,8 @@ #define vvtCamSensorUseRise_offset_hex 3d8 #define measureMapOnlyInOneCylinder_offset 984 #define measureMapOnlyInOneCylinder_offset_hex 3d8 -#define unused_board_984_19_offset 984 -#define unused_board_984_19_offset_hex 3d8 +#define stepperForceParkingEveryRestart_offset 984 +#define stepperForceParkingEveryRestart_offset_hex 3d8 #define unused_board_984_20_offset 984 #define unused_board_984_20_offset_hex 3d8 #define unused_board_984_21_offset 984 diff --git a/firmware/hw_layer/stepper.cpp b/firmware/hw_layer/stepper.cpp index 8213136c58..91a0db9750 100644 --- a/firmware/hw_layer/stepper.cpp +++ b/firmware/hw_layer/stepper.cpp @@ -37,6 +37,8 @@ static msg_t stThread(StepperMotor *motor) { waitForSlowAdc(); // now check if stepper motor re-initialization is requested - if the throttle pedal is pressed at startup bool forceStepperParking = !engine->rpmCalculator.isRunning(PASS_ENGINE_PARAMETER_SIGNATURE) && getTPS(PASS_ENGINE_PARAMETER_SIGNATURE) > STEPPER_PARKING_TPS; + if (boardConfiguration->stepperForceParkingEveryRestart) + forceStepperParking = true; scheduleMsg(logger, "Stepper: savedStepperPos=%d forceStepperParking=%d (tps=%.2f)", motor->currentPosition, (forceStepperParking ? 1 : 0), getTPS(PASS_ENGINE_PARAMETER_SIGNATURE)); if (motor->currentPosition < 0 || forceStepperParking) { diff --git a/firmware/integration/rusefi_config.txt b/firmware/integration/rusefi_config.txt index f8db263e83..b347edc642 100644 --- a/firmware/integration/rusefi_config.txt +++ b/firmware/integration/rusefi_config.txt @@ -543,7 +543,7 @@ bit is_enabled_spi_2 bit isCJ125Enabled bit vvtCamSensorUseRise;+Use rise or fall signal front bit measureMapOnlyInOneCylinder;+Useful for individual intakes - bit unused_board_984_19 + bit stepperForceParkingEveryRestart bit unused_board_984_20 bit unused_board_984_21 bit unused_board_984_22 diff --git a/firmware/tunerstudio/rusefi.input b/firmware/tunerstudio/rusefi.input index 94843d1083..50c8fe621d 100644 --- a/firmware/tunerstudio/rusefi.input +++ b/firmware/tunerstudio/rusefi.input @@ -1512,6 +1512,7 @@ cmd_stop_engine = "w\x00\x99\x00\x00" field = "Stepper reaction time", idleStepperReactionTime, useStepperIdle field = "Stepper total steps", idleStepperTotalSteps, useStepperIdle field = "Stepper parking extra steps, %", stepperParkingExtraSteps, useStepperIdle + field = "Force parking every restart", stepperForceParkingEveryRestart, useStepperIdle dialog = idleHwType, "Idle Valve Hardware", border field = "use stepper", useStepperIdle