From af14918b526f72cbb6ed4d331a3e2b3924b6c7b4 Mon Sep 17 00:00:00 2001 From: Andrei Date: Wed, 14 Jun 2017 12:39:00 +0300 Subject: [PATCH] FSIO Starter Block using cranking_rpm --- firmware/controllers/core/fsio_core.h | 1 + firmware/controllers/core/fsio_impl.cpp | 5 +++++ firmware/controllers/system_fsio.h | 6 +++++- firmware/controllers/system_fsio.txt | 2 ++ 4 files changed, 13 insertions(+), 1 deletion(-) diff --git a/firmware/controllers/core/fsio_core.h b/firmware/controllers/core/fsio_core.h index 6ac2650887..d21484e225 100644 --- a/firmware/controllers/core/fsio_core.h +++ b/firmware/controllers/core/fsio_core.h @@ -53,6 +53,7 @@ typedef enum { LE_METHOD_INTAKE_VVT = 117, LE_METHOD_EXHAUST_VVT = 118, LE_METHOD_IS_COOLANT_BROKEN = 119, + LE_METHOD_CRANKING_RPM = 120, Force_4b_le_action = ENUM_32_BITS, diff --git a/firmware/controllers/core/fsio_impl.cpp b/firmware/controllers/core/fsio_impl.cpp index cb8cfcbe85..a83610495e 100644 --- a/firmware/controllers/core/fsio_impl.cpp +++ b/firmware/controllers/core/fsio_impl.cpp @@ -44,6 +44,7 @@ static LENameOrdinalPair leFsioAnalogInput(LE_METHOD_FSIO_ANALOG_INPUT, "fsio_in static LENameOrdinalPair leKnock(LE_METHOD_KNOCK, "knock"); static LENameOrdinalPair leIntakeVVT(LE_METHOD_INTAKE_VVT, "ivvt"); static LENameOrdinalPair leExhaustVVT(LE_METHOD_EXHAUST_VVT, "evvt"); +static LENameOrdinalPair leCrankingRpm(LE_METHOD_CRANKING_RPM, "cranking_rpm"); #define LE_EVAL_POOL_SIZE 32 @@ -106,6 +107,8 @@ float getEngineValue(le_action_e action DECLARE_ENGINE_PARAMETER_SUFFIX) { return engineConfiguration->fanOffTemperature; case LE_METHOD_FAN_ON_SETTING: return engineConfiguration->fanOnTemperature; + case LE_METHOD_CRANKING_RPM: + return engineConfiguration->cranking.rpm; case LE_METHOD_VBATT: return getVBatt(PASS_ENGINE_PARAMETER_SIGNATURE); default: @@ -288,6 +291,8 @@ static const char * action2String(le_action_e action) { switch(action) { case LE_METHOD_RPM: return "RPM"; + case LE_METHOD_CRANKING_RPM: + return "cranking_rpm"; case LE_METHOD_COOLANT: return "CLT"; case LE_METHOD_FAN_ON_SETTING: diff --git a/firmware/controllers/system_fsio.h b/firmware/controllers/system_fsio.h index 41387e51b0..24609452d9 100644 --- a/firmware/controllers/system_fsio.h +++ b/firmware/controllers/system_fsio.h @@ -1,6 +1,6 @@ // this https://en.wikipedia.org/wiki/Reverse_Polish_notation is generated automatically // from controllers/system_fsio.txt -// on 2017-06-13_19_39_11 +// on 2017-06-14_11_10_39 // // // in this file we define system FSIO expressions @@ -44,3 +44,7 @@ // Human-readable: rpm < fsio_setting(1) #define RPM_BELOW_USER_SETTING_1 "rpm 1 fsio_setting <" +// starter block using configurable parameter + +// Human-readable: rpm < cranking_rpm +#define STARTER_BLOCK "rpm cranking_rpm <" diff --git a/firmware/controllers/system_fsio.txt b/firmware/controllers/system_fsio.txt index 0f310682bc..d35bc1c8e0 100644 --- a/firmware/controllers/system_fsio.txt +++ b/firmware/controllers/system_fsio.txt @@ -32,3 +32,5 @@ RPM_ABOVE_USER_SETTING_2=rpm > fsio_setting(2) RPM_BELOW_USER_SETTING_1=rpm < fsio_setting(1) +# starter block using configurable parameter +STARTER_BLOCK=rpm < cranking_rpm