From 013824cbac912afd65dfc878fb0dc853ca17659c Mon Sep 17 00:00:00 2001 From: rusefillc Date: Mon, 27 Mar 2023 18:46:17 -0400 Subject: [PATCH] canned m111 --- .../hellen/hellen128/board_configuration.cpp | 12 ++------ firmware/config/engines/m111.cpp | 28 ++++++++++++++++++- firmware/config/engines/m111.h | 3 ++ .../controllers/algo/engine_configuration.cpp | 3 ++ 4 files changed, 35 insertions(+), 11 deletions(-) diff --git a/firmware/config/boards/hellen/hellen128/board_configuration.cpp b/firmware/config/boards/hellen/hellen128/board_configuration.cpp index f2547313e7..4af43fa74c 100644 --- a/firmware/config/boards/hellen/hellen128/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen128/board_configuration.cpp @@ -15,6 +15,7 @@ #include "hellen_meta.h" #include "i2c_bb.h" #include "defaults.h" +#include "m111.h" static void setInjectorPins() { engineConfiguration->injectionPins[0] = H176_LS_1; @@ -171,16 +172,7 @@ void setBoardDefaultConfiguration() { // "required" hardware is done - set some reasonable defaults setupDefaultSensorInputs(); - engineConfiguration->specs.cylindersCount = 4; - engineConfiguration->specs.firingOrder = FO_1_3_4_2; - engineConfiguration->specs.displacement = 2.295f; - - engineConfiguration->ignitionMode = IM_INDIVIDUAL_COILS; // IM_WASTED_SPARK - engineConfiguration->crankingInjectionMode = IM_SEQUENTIAL; - engineConfiguration->injectionMode = IM_SEQUENTIAL;//IM_BATCH;// IM_SEQUENTIAL; - - strcpy(engineConfiguration->engineMake, ENGINE_MAKE_MERCEDES); - strcpy(engineConfiguration->engineCode, ""); + setM111EngineConfiguration(); /** * Jimmy best tune diff --git a/firmware/config/engines/m111.cpp b/firmware/config/engines/m111.cpp index dde2b7ea49..06a5a1077f 100644 --- a/firmware/config/engines/m111.cpp +++ b/firmware/config/engines/m111.cpp @@ -8,6 +8,32 @@ #include "m111.h" -void setMreM111EngineConfiguration() { +#if HW_PROTEUS +#include "proteus_meta.h" +#endif // HW_PROTEUS +void setM111EngineConfiguration() { + engineConfiguration->specs.cylindersCount = 4; + engineConfiguration->specs.firingOrder = FO_1_3_4_2; + engineConfiguration->specs.displacement = 2.295f; + + engineConfiguration->ignitionMode = IM_INDIVIDUAL_COILS; + engineConfiguration->crankingInjectionMode = IM_SEQUENTIAL; + engineConfiguration->injectionMode = IM_SEQUENTIAL; + + strcpy(engineConfiguration->engineMake, ENGINE_MAKE_MERCEDES); + strcpy(engineConfiguration->engineCode, "M111"); + + engineConfiguration->globalTriggerAngleOffset = 109; // please use a timing light? } + +void setMreM111EngineConfiguration() { + setM111EngineConfiguration(); +} + +void setProteusM111EngineConfiguration() { + setM111EngineConfiguration(); +#if HW_PROTEUS + //engineConfiguration->camInputs[0] = PROTEUS_DIGITAL_2; +#endif // HW_PROTEUS +} \ No newline at end of file diff --git a/firmware/config/engines/m111.h b/firmware/config/engines/m111.h index 3edda107f0..d9eb0872e7 100644 --- a/firmware/config/engines/m111.h +++ b/firmware/config/engines/m111.h @@ -9,7 +9,10 @@ #include "engine_configuration.h" +void setM111EngineConfiguration(); /** * set engine_type 68 */ void setMreM111EngineConfiguration(); + +void setProteusM111EngineConfiguration(); diff --git a/firmware/controllers/algo/engine_configuration.cpp b/firmware/controllers/algo/engine_configuration.cpp index 8273566317..61e8459240 100644 --- a/firmware/controllers/algo/engine_configuration.cpp +++ b/firmware/controllers/algo/engine_configuration.cpp @@ -771,6 +771,9 @@ void resetConfigurationExt(configuration_callback_t boardCallback, engine_type_e break; #endif // HW_MICRO_RUSEFI #if HW_PROTEUS + case PROTEUS_M111: + setProteusM111EngineConfiguration(); + break; case WASTEGATE_PROTEUS_TEST: proteusDcWastegateTest(); break;