diff --git a/firmware/config/engines/bmw_m73.cpp b/firmware/config/engines/bmw_m73.cpp index da91f120a0..8cb7457dea 100644 --- a/firmware/config/engines/bmw_m73.cpp +++ b/firmware/config/engines/bmw_m73.cpp @@ -64,31 +64,39 @@ EXTERN_CONFIG; -// BMW_M73 -void setEngineBMW_M73(DECLARE_CONFIG_PARAMETER_SIGNATURE) { - setFrankensoConfiguration(PASS_CONFIG_PARAMETER_SIGNATURE); +static void m73engine(DECLARE_CONFIG_PARAMETER_SIGNATURE) { + // 13641435991 injector + engineConfiguration->injector.flow = 180; // cc/min, who knows if this number is real - no good source of info engineConfiguration->specs.cylindersCount = 12; engineConfiguration->specs.displacement = 5.4; engineConfiguration->specs.firingOrder = FO_1_7_5_11_3_9_6_12_2_8_4_10; - boardConfiguration->triggerInputPins[0] = GPIOA_5; - boardConfiguration->triggerInputPins[1] = GPIO_UNASSIGNED; - engineConfiguration->camInputs[0] = GPIOC_6; engineConfiguration->vvtMode = VVT_FIRST_HALF; engineConfiguration->globalTriggerAngleOffset = 90; - setOperationMode(engineConfiguration, FOUR_STROKE_CRANK_SENSOR); engineConfiguration->trigger.type = TT_60_2_VW; + engineConfiguration->ignitionMode = IM_TWO_COILS; +} + + +// BMW_M73_F +void setEngineBMW_M73_Frankenso(DECLARE_CONFIG_PARAMETER_SIGNATURE) { + setFrankensoConfiguration(PASS_CONFIG_PARAMETER_SIGNATURE); + m73engine(PASS_CONFIG_PARAMETER_SIGNATURE); + + boardConfiguration->triggerInputPins[0] = GPIOA_5; + boardConfiguration->triggerInputPins[1] = GPIO_UNASSIGNED; + engineConfiguration->camInputs[0] = GPIOC_6; + CONFIGB(idle).solenoidPin = GPIO_UNASSIGNED; CONFIGB(mainRelayPin) = GPIO_UNASSIGNED; CONFIGB(fanPin) = GPIO_UNASSIGNED; CONFIGB(fuelPumpPin) = GPIO_UNASSIGNED; - engineConfiguration->ignitionMode = IM_TWO_COILS; boardConfiguration->ignitionPins[ID2INDEX(1)] = GPIOE_14; // Frankenso high side - pin 1G boardConfiguration->ignitionPins[ID2INDEX(2)] = GPIO_UNASSIGNED; boardConfiguration->ignitionPins[ID2INDEX(3)] = GPIO_UNASSIGNED; @@ -109,8 +117,10 @@ void setEngineBMW_M73(DECLARE_CONFIG_PARAMETER_SIGNATURE) { boardConfiguration->injectionPins[9] = GPIOE_6; boardConfiguration->injectionPins[10] = GPIOC_13; boardConfiguration->injectionPins[11] = GPIOD_7; - - - // 13641435991 injector - engineConfiguration->injector.flow = 180; // cc/min, who knows if this number is real - no good source of info } + +void setEngineBMW_M73_Manhattan(DECLARE_CONFIG_PARAMETER_SIGNATURE) { + m73engine(PASS_CONFIG_PARAMETER_SIGNATURE); + +} + diff --git a/firmware/config/engines/bmw_m73.h b/firmware/config/engines/bmw_m73.h index f6dab3c8d8..8f2e51c7c0 100644 --- a/firmware/config/engines/bmw_m73.h +++ b/firmware/config/engines/bmw_m73.h @@ -9,4 +9,5 @@ #include "engine_configuration.h" -void setEngineBMW_M73(DECLARE_CONFIG_PARAMETER_SIGNATURE); +void setEngineBMW_M73_Frankenso(DECLARE_CONFIG_PARAMETER_SIGNATURE); +void setEngineBMW_M73_Manhattan(DECLARE_CONFIG_PARAMETER_SIGNATURE); diff --git a/firmware/config/engines/mazda_miata.cpp b/firmware/config/engines/mazda_miata.cpp index cdd1f79760..6ab448d89d 100644 --- a/firmware/config/engines/mazda_miata.cpp +++ b/firmware/config/engines/mazda_miata.cpp @@ -8,8 +8,7 @@ * MIATA_1990 = 19 (Frankenstein board) * MIATA_1994_DEVIATOR = 20 * MIATA_1996 = 21 - * MIATA_1994_SPAGS = 24 - * set engine_type 24 + * set engine_type 21 * * @date Apr 11, 2014 * @author Andrey Belomutskiy, (c) 2012-2018 diff --git a/firmware/controllers/algo/auto_generated_enums.cpp b/firmware/controllers/algo/auto_generated_enums.cpp index f920b61ffc..d923bd1e0d 100644 --- a/firmware/controllers/algo/auto_generated_enums.cpp +++ b/firmware/controllers/algo/auto_generated_enums.cpp @@ -707,8 +707,10 @@ case FRANKENSO_QA_ENGINE: return "FRANKENSO_QA_ENGINE"; case Force_4_bytes_size_engine_type: return "Force_4_bytes_size_engine_type"; -case BMW_M73: - return "BMW_M73"; +case BMW_M73_F: + return "BMW_M73_F"; +case BMW_M73_M: + return "BMW_M73_M"; case MRE_BOARD_TEST: return "MRE_BOARD_TEST"; case GY6_139QMB: @@ -743,7 +745,6 @@ case MIATA_1990: return "MIATA_1990"; case MIATA_1994_DEVIATOR: return "MIATA_1994_DEVIATOR"; -case MIATA_1994_SPAGS: case MIATA_1996: return "MIATA_1996"; case MIATA_NA6_MAP: diff --git a/firmware/controllers/algo/engine_configuration.cpp b/firmware/controllers/algo/engine_configuration.cpp index 8271361c37..5d15bf81ce 100644 --- a/firmware/controllers/algo/engine_configuration.cpp +++ b/firmware/controllers/algo/engine_configuration.cpp @@ -1056,8 +1056,11 @@ void resetConfigurationExt(Logging * logger, configuration_callback_t boardCallb case FRANKENSO_QA_ENGINE: setFrankensoConfiguration(PASS_CONFIG_PARAMETER_SIGNATURE); break; - case BMW_M73: - setEngineBMW_M73(PASS_CONFIG_PARAMETER_SIGNATURE); + case BMW_M73_F: + setEngineBMW_M73_Frankenso(PASS_CONFIG_PARAMETER_SIGNATURE); + break; + case BMW_M73_M: + setEngineBMW_M73_Manhattan(PASS_CONFIG_PARAMETER_SIGNATURE); break; case MRE_MIATA_NA6: setMiataNA6_VAF_MRE(PASS_CONFIG_PARAMETER_SIGNATURE); @@ -1177,7 +1180,6 @@ void resetConfigurationExt(Logging * logger, configuration_callback_t boardCallb case MIATA_1994_DEVIATOR: setMiata1994_d(PASS_CONFIG_PARAMETER_SIGNATURE); break; - case MIATA_1994_SPAGS: case MIATA_1996: setMiata1996(PASS_CONFIG_PARAMETER_SIGNATURE); break; diff --git a/firmware/controllers/algo/rusefi_enums.h b/firmware/controllers/algo/rusefi_enums.h index b1b2ffc756..8f071f8f09 100644 --- a/firmware/controllers/algo/rusefi_enums.h +++ b/firmware/controllers/algo/rusefi_enums.h @@ -95,7 +95,7 @@ typedef enum { SUBARU_2003_WRX = 22, DODGE_NEON_2003_CAM = 23, - MIATA_1994_SPAGS = 24, + BMW_M73_M = 24, BMW_E34 = 25, @@ -130,7 +130,7 @@ typedef enum { LADA_KALINA = 39, - BMW_M73 = 40, + BMW_M73_F = 40, // Frankenso board MIATA_NA6_MAP = 41, diff --git a/firmware/controllers/settings.cpp b/firmware/controllers/settings.cpp index 98cca9c5e6..edd6cf8f7b 100644 --- a/firmware/controllers/settings.cpp +++ b/firmware/controllers/settings.cpp @@ -173,8 +173,6 @@ const char* getConfigurationName(engine_type_e engineType) { return "MX590"; case MIATA_1994_DEVIATOR: return "MX594d"; - case MIATA_1994_SPAGS: - return "MX594s"; case MIATA_1996: return "MX596"; case BMW_E34: