diff --git a/firmware/controllers/algo/engine_configuration_generated_structures.h b/firmware/controllers/algo/engine_configuration_generated_structures.h index 0254bca1e6..a199282148 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 Wed Jun 07 23:10:13 EDT 2017 +// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun Jun 11 15:31:14 EDT 2017 // begin #ifndef ENGINE_CONFIGURATION_GENERATED_H_ #define ENGINE_CONFIGURATION_GENERATED_H_ @@ -177,10 +177,13 @@ typedef struct { */ float unusedlag; /** + * set_flat_injector_lag LAG + * set_injector_lag VOLTAGE LAG * offset 8 */ float battLagCorrBins[VBAT_INJECTOR_CURVE_SIZE]; /** + * ms delay between injector open and close dead times * offset 40 */ float battLagCorr[VBAT_INJECTOR_CURVE_SIZE]; @@ -2114,4 +2117,4 @@ typedef struct { #endif // end -// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Wed Jun 07 23:10:13 EDT 2017 +// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun Jun 11 15:31:14 EDT 2017 diff --git a/firmware/controllers/settings.cpp b/firmware/controllers/settings.cpp index df887a42cb..1d0934bb54 100644 --- a/firmware/controllers/settings.cpp +++ b/firmware/controllers/settings.cpp @@ -534,6 +534,10 @@ static void setDebugMode(int value) { engineConfiguration->debugMode = (debug_mode_e) value; } +static void setInjectorLag(float voltage, float value) { + setCurveValue(INJECTOR_LAG_CURVE, voltage, value); +} + static void setToothedWheel(int total, int skipped DECLARE_ENGINE_PARAMETER_SUFFIX) { if (total < 1 || skipped >= total) { scheduleMsg(&logger, "invalid parameters %d %d", total, skipped); @@ -1295,8 +1299,11 @@ void initSettings(void) { addConsoleActionII("set_toothed_wheel", setToothedWheel); + // flat curve - constant injector lag regardless of voltage addConsoleActionF("set_flat_injector_lag", setFlatInjectorLag); + addConsoleActionFF("set_injector_lag", setInjectorLag); + addConsoleActionFF("set_fan", setFanSetting); addConsoleActionSS("set", setValue); diff --git a/firmware/integration/rusefi_config.txt b/firmware/integration/rusefi_config.txt index b7e00f97f7..0904c8254d 100644 --- a/firmware/integration/rusefi_config.txt +++ b/firmware/integration/rusefi_config.txt @@ -186,8 +186,8 @@ struct injector_s float flow;+cc/min, cubic centimeter per minute\nBy the way, g/s = 0.125997881 * (lb/hr)\ng/s = 0.125997881 * (cc/min)/10.5\ng/s = 0.0119997981 * cc/min;"cm3/min", 1, 0, 0, 1000, 2 float unusedlag; -float[VBAT_INJECTOR_CURVE_SIZE] battLagCorrBins;;"V", 1, 0, 0.0, 20.0, 2 -float[VBAT_INJECTOR_CURVE_SIZE] battLagCorr;;"ms/V", 1, 0, 0.0, 50.0, 2 +float[VBAT_INJECTOR_CURVE_SIZE] battLagCorrBins;set_flat_injector_lag LAG\nset_injector_lag VOLTAGE LAG;"volts", 1, 0, 0.0, 20.0, 2 +float[VBAT_INJECTOR_CURVE_SIZE] battLagCorr;ms delay between injector open and close dead times;"ms", 1, 0, 0.0, 50.0, 2 end_struct diff --git a/firmware/tunerstudio/rusefi.ini b/firmware/tunerstudio/rusefi.ini index f32062c9cc..68f89bf906 100644 --- a/firmware/tunerstudio/rusefi.ini +++ b/firmware/tunerstudio/rusefi.ini @@ -45,7 +45,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sat Jun 10 13:43:21 EDT 2017 +; this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun Jun 11 15:31:14 EDT 2017 pageSize = 16376 page = 1 @@ -53,8 +53,8 @@ page = 1 engineSnifferRpmThreshold = scalar, S32, 4, "RPM", 1, 0, 0,30000, 0 injector_flow = scalar, F32, 8, "cm3/min", 1, 0, 0, 1000, 2 ;skipping injector_unusedlag offset 12 - injector_battLagCorrBins = array, F32, 16, [8], "V", 1, 0, 0.0, 20.0, 2 - injector_battLagCorr = array, F32, 48, [8], "ms/V", 1, 0, 0.0, 50.0, 2 + injector_battLagCorrBins = array, F32, 16, [8], "volts", 1, 0, 0.0, 20.0, 2 + injector_battLagCorr = array, F32, 48, [8], "ms", 1, 0, 0.0, 50.0, 2 directSelfStimulation = bits, U32, 80, [0:0], "false", "true" activateAuxPid1 = bits, U32, 80, [1:1], "false", "true" isVerboseAuxPid1 = bits, U32, 80, [2:2], "false", "true"