From 4ab79c3bdbf0c1562d2089737489993e78ee19b3 Mon Sep 17 00:00:00 2001 From: rusefi Date: Sun, 26 Nov 2017 01:17:37 -0500 Subject: [PATCH] #490 --- .../controllers/algo/engine_configuration.cpp | 6 ++++ firmware/controllers/trigger/aux_valves.cpp | 13 +++++++ firmware/controllers/trigger/aux_valves.h | 15 ++++++++ .../trigger/main_trigger_callback.cpp | 3 ++ firmware/controllers/trigger/trigger.mk | 3 +- firmware/tunerstudio/rusefi.ini | 36 +++++++++++++++++-- firmware/tunerstudio/rusefi.input | 34 +++++++++++++++++- unit_tests/Makefile | 5 +-- 8 files changed, 107 insertions(+), 8 deletions(-) create mode 100644 firmware/controllers/trigger/aux_valves.cpp create mode 100644 firmware/controllers/trigger/aux_valves.h diff --git a/firmware/controllers/algo/engine_configuration.cpp b/firmware/controllers/algo/engine_configuration.cpp index d4f185bac7..5e13750666 100644 --- a/firmware/controllers/algo/engine_configuration.cpp +++ b/firmware/controllers/algo/engine_configuration.cpp @@ -606,6 +606,12 @@ void setDefaultConfiguration(DECLARE_ENGINE_PARAMETER_SIGNATURE) { setTableBin2(engineConfiguration->cltTimingBins, CLT_TIMING_CURVE_SIZE, -40, 120, 1); setTableBin2(engineConfiguration->cltTimingExtra, CLT_TIMING_CURVE_SIZE, 0, 0, 1); + setTableBin2(engineConfiguration->fsioCurve1Bins, FSIO_CURVE_16, 0, 100, 1); + setTableBin2(engineConfiguration->fsioCurve2Bins, FSIO_CURVE_16, 0, 100, 1); + setTableBin2(engineConfiguration->fsioCurve3Bins, FSIO_CURVE_8, 0, 100, 1); + setTableBin2(engineConfiguration->fsioCurve4Bins, FSIO_CURVE_8, 0, 100, 1); + + setDefaultWarmupIdleCorrection(PASS_ENGINE_PARAMETER_SIGNATURE); setDefaultWarmupFuelEnrichment(PASS_ENGINE_PARAMETER_SIGNATURE); diff --git a/firmware/controllers/trigger/aux_valves.cpp b/firmware/controllers/trigger/aux_valves.cpp new file mode 100644 index 0000000000..4e1c8673ea --- /dev/null +++ b/firmware/controllers/trigger/aux_valves.cpp @@ -0,0 +1,13 @@ +/* + * aux_valves.cpp + * + * @date Nov 25, 2017 + * @author Andrey Belomutskiy, (c) 2012-2017 + */ + +#include "aux_valves.h" + +void initAuxValves(Logging *sharedLogger) { + +} + diff --git a/firmware/controllers/trigger/aux_valves.h b/firmware/controllers/trigger/aux_valves.h new file mode 100644 index 0000000000..abc1c61dc7 --- /dev/null +++ b/firmware/controllers/trigger/aux_valves.h @@ -0,0 +1,15 @@ +/* + * aux_valves.h + * + * @date Nov 25, 2017 + * @author Andrey Belomutskiy, (c) 2012-2017 + */ + +#ifndef CONTROLLERS_TRIGGER_AUX_VALVES_H_ +#define CONTROLLERS_TRIGGER_AUX_VALVES_H_ + +#include "engine.h" + +void initAuxValves(Logging *sharedLogger); + +#endif /* CONTROLLERS_TRIGGER_AUX_VALVES_H_ */ diff --git a/firmware/controllers/trigger/main_trigger_callback.cpp b/firmware/controllers/trigger/main_trigger_callback.cpp index d9d132f543..fb5bc8a1ea 100644 --- a/firmware/controllers/trigger/main_trigger_callback.cpp +++ b/firmware/controllers/trigger/main_trigger_callback.cpp @@ -58,6 +58,7 @@ #include "event_queue.h" #include "engine.h" #include "efilib2.h" +#include "aux_valves.h" EXTERN_ENGINE ; @@ -535,6 +536,8 @@ void initMainEventListener(Logging *sharedLogger DECLARE_ENGINE_PARAMETER_SUFFIX efiAssertVoid(engine!=NULL, "null engine"); initSparkLogic(logger); + initAuxValves(logger); + #if EFI_PROD_CODE || defined(__DOXYGEN__) addConsoleAction("performanceinfo", showTriggerHistogram); addConsoleActionP("maininfo", (VoidPtr) showMainInfo, engine); diff --git a/firmware/controllers/trigger/trigger.mk b/firmware/controllers/trigger/trigger.mk index 3eb9328d22..6b4fac22e4 100644 --- a/firmware/controllers/trigger/trigger.mk +++ b/firmware/controllers/trigger/trigger.mk @@ -20,4 +20,5 @@ TRIGGER_SRC_CPP = \ $(PROJECT_DIR)/controllers/trigger/rpm_calculator.cpp \ $(PROJECT_DIR)/controllers/trigger/trigger_central.cpp \ $(PROJECT_DIR)/controllers/trigger/spark_logic.cpp \ - $(PROJECT_DIR)/controllers/trigger/main_trigger_callback.cpp + $(PROJECT_DIR)/controllers/trigger/main_trigger_callback.cpp \ + $(PROJECT_DIR)/controllers/trigger/aux_valves.cpp diff --git a/firmware/tunerstudio/rusefi.ini b/firmware/tunerstudio/rusefi.ini index 6dfd7043cb..0854e823b6 100644 --- a/firmware/tunerstudio/rusefi.ini +++ b/firmware/tunerstudio/rusefi.ini @@ -63,7 +63,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 Fri Nov 24 15:40:28 EST 2017 +; this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sat Nov 25 21:44:37 EST 2017 pageSize = 20000 page = 1 @@ -1076,6 +1076,34 @@ fileVersion = { 20161225 } yBins = narrowToWideOxygen gauge = afr1Gauge + curve = fsioCurve1, "FSIO Curve #1" + columnLabel = "X", "Y" + xAxis = 0, 128, 10 + yAxis = -5, 5, 10 + xBins = fsioCurve1Bins + yBins = fsioCurve1 + + curve = fsioCurve2, "FSIO Curve #2" + columnLabel = "X", "Y" + xAxis = 0, 128, 10 + yAxis = -5, 5, 10 + xBins = fsioCurve2Bins + yBins = fsioCurve2 + + curve = fsioCurve3, "FSIO Curve #3" + columnLabel = "X", "Y" + xAxis = 0, 128, 10 + yAxis = -5, 5, 10 + xBins = fsioCurve3Bins + yBins = fsioCurve3 + + curve = fsioCurve4, "FSIO Curve #4" + columnLabel = "X", "Y" + xAxis = 0, 128, 10 + yAxis = -5, 5, 10 + xBins = fsioCurve4Bins + yBins = fsioCurve4 + curve = mapAccelTaper, "Engine Load Acceleration Enrichment Taper" columnLabel = "Distance", "Multiplier" xAxis = 0, 128, 10 @@ -1242,7 +1270,7 @@ fileVersion = { 20161225 } yBins = tpsTpsAccelToRpmBins, TPSValue zBins = tpsTpsAccelTable - + table = fsioTable1Tbl, fsioTable1Map, "FSIO Table #1", 1 xBins = fsioTable1RpmBins, RPMValue yBins = fsioTable1LoadBins, engineLoad @@ -1700,6 +1728,10 @@ gaugeCategory = Fuel Data subMenu = fsioTable3Tbl, "FSIO Table #3" subMenu = fsioTable4Tbl, "FSIO Table #4" subMenu = fsioFormulas, "FSIO Formulas" + subMenu = fsioCurve1, "FSIO Curve #1" + subMenu = fsioCurve2, "FSIO Curve #2" + subMenu = fsioCurve3, "FSIO Curve #3" + subMenu = fsioCurve4, "FSIO Curve #4" subMenu = std_separator subMenu = connection, "Connection" subMenu = joystickPanel, "Joystick" diff --git a/firmware/tunerstudio/rusefi.input b/firmware/tunerstudio/rusefi.input index 054ae22a4c..84434deeaa 100644 --- a/firmware/tunerstudio/rusefi.input +++ b/firmware/tunerstudio/rusefi.input @@ -296,6 +296,34 @@ fileVersion = { 20161225 } yBins = narrowToWideOxygen gauge = afr1Gauge + curve = fsioCurve1, "FSIO Curve #1" + columnLabel = "X", "Y" + xAxis = 0, 128, 10 + yAxis = -5, 5, 10 + xBins = fsioCurve1Bins + yBins = fsioCurve1 + + curve = fsioCurve2, "FSIO Curve #2" + columnLabel = "X", "Y" + xAxis = 0, 128, 10 + yAxis = -5, 5, 10 + xBins = fsioCurve2Bins + yBins = fsioCurve2 + + curve = fsioCurve3, "FSIO Curve #3" + columnLabel = "X", "Y" + xAxis = 0, 128, 10 + yAxis = -5, 5, 10 + xBins = fsioCurve3Bins + yBins = fsioCurve3 + + curve = fsioCurve4, "FSIO Curve #4" + columnLabel = "X", "Y" + xAxis = 0, 128, 10 + yAxis = -5, 5, 10 + xBins = fsioCurve4Bins + yBins = fsioCurve4 + curve = mapAccelTaper, "Engine Load Acceleration Enrichment Taper" columnLabel = "Distance", "Multiplier" xAxis = 0, 128, 10 @@ -462,7 +490,7 @@ fileVersion = { 20161225 } yBins = tpsTpsAccelToRpmBins, TPSValue zBins = tpsTpsAccelTable - + table = fsioTable1Tbl, fsioTable1Map, "FSIO Table #1", 1 xBins = fsioTable1RpmBins, RPMValue yBins = fsioTable1LoadBins, engineLoad @@ -920,6 +948,10 @@ gaugeCategory = Fuel Data subMenu = fsioTable3Tbl, "FSIO Table #3" subMenu = fsioTable4Tbl, "FSIO Table #4" subMenu = fsioFormulas, "FSIO Formulas" + subMenu = fsioCurve1, "FSIO Curve #1" + subMenu = fsioCurve2, "FSIO Curve #2" + subMenu = fsioCurve3, "FSIO Curve #3" + subMenu = fsioCurve4, "FSIO Curve #4" subMenu = std_separator subMenu = connection, "Connection" subMenu = joystickPanel, "Joystick" diff --git a/unit_tests/Makefile b/unit_tests/Makefile index fe979487ad..ff0a137a60 100644 --- a/unit_tests/Makefile +++ b/unit_tests/Makefile @@ -105,10 +105,7 @@ CPPSRC = $(UTILSRC_CPP) \ $(TEST_SRC_CPP) \ $(SYSTEMSRC_CPP) \ $(PROJECT_DIR)/controllers/error_handling.cpp \ - $(PROJECT_DIR)/controllers/trigger/trigger_central.cpp \ - $(PROJECT_DIR)/controllers/trigger/rpm_calculator.cpp \ - $(PROJECT_DIR)/controllers/trigger/spark_logic.cpp \ - $(PROJECT_DIR)/controllers/trigger/main_trigger_callback.cpp \ + $(TRIGGER_SRC_CPP) \ main.cpp # C sources to be compiled in ARM mode regardless of the global setting.