diff --git a/firmware/controllers/algo/auto_generated_enums.cpp b/firmware/controllers/algo/auto_generated_enums.cpp index 4d92795117..d419255c9f 100644 --- a/firmware/controllers/algo/auto_generated_enums.cpp +++ b/firmware/controllers/algo/auto_generated_enums.cpp @@ -179,6 +179,8 @@ case TT_MAZDA_MIATA_VVT_TEST: return "TT_MAZDA_MIATA_VVT_TEST"; case TT_SUBARU_7_6: return "TT_SUBARU_7_6"; +case TT_JEEP_18_2_2_2_SIX_CYLINDER: + return "TT_18_2_2_2 6cyl"; case TT_MINI_COOPER_R50: return "TT_MINI_COOPER_R50"; case TT_MITSU: diff --git a/firmware/controllers/algo/rusefi_enums.h b/firmware/controllers/algo/rusefi_enums.h index fb81c53b70..de5d269298 100644 --- a/firmware/controllers/algo/rusefi_enums.h +++ b/firmware/controllers/algo/rusefi_enums.h @@ -221,7 +221,9 @@ typedef enum { TT_SUBARU_7_6 = 36, - TT_UNUSED = 37, // this is used if we want to iterate over all trigger types + TT_JEEP_18_2_2_2_SIX_CYLINDER = 37, + + TT_UNUSED = 38, // this is used if we want to iterate over all trigger types Force_4b_trigger_type = ENUM_32_BITS, } trigger_type_e; diff --git a/firmware/controllers/trigger/decoders/trigger_chrysler.cpp b/firmware/controllers/trigger/decoders/trigger_chrysler.cpp index 14c10f0af0..aa3ab9818f 100644 --- a/firmware/controllers/trigger/decoders/trigger_chrysler.cpp +++ b/firmware/controllers/trigger/decoders/trigger_chrysler.cpp @@ -451,3 +451,23 @@ void configureNeon1995TriggerShape(TriggerShape *s DECLARE_ENGINE_PARAMETER_S) { s->useOnlyPrimaryForSync = true; } +void initJeep18_6cyl(TriggerShape *s DECLARE_ENGINE_PARAMETER_S) { + s->initialize(FOUR_STROKE_CAM_SENSOR, true); + s->isSynchronizationNeeded = false; + + float off = 212; + + s->addEvent2(54 + off, T_SECONDARY, TV_RISE PASS_ENGINE_PARAMETER); + s->addEvent2(56 + off, T_SECONDARY, TV_FALL PASS_ENGINE_PARAMETER); + s->addEvent2(74 + off, T_SECONDARY, TV_RISE PASS_ENGINE_PARAMETER); + s->addEvent2(76 + off, T_SECONDARY, TV_FALL PASS_ENGINE_PARAMETER); + s->addEvent2(94 + off, T_SECONDARY, TV_RISE PASS_ENGINE_PARAMETER); + s->addEvent2(96 + off, T_SECONDARY, TV_FALL PASS_ENGINE_PARAMETER); + s->addEvent2(114 + off, T_SECONDARY, TV_RISE PASS_ENGINE_PARAMETER); + s->addEvent2(116 + off, T_SECONDARY, TV_FALL PASS_ENGINE_PARAMETER); + + s->addEvent2(148 + off, T_PRIMARY, TV_RISE PASS_ENGINE_PARAMETER); // 360 + + + s->addEvent2(508 + off, T_PRIMARY, TV_FALL PASS_ENGINE_PARAMETER); // 720 +} diff --git a/firmware/controllers/trigger/decoders/trigger_chrysler.h b/firmware/controllers/trigger/decoders/trigger_chrysler.h index 1e1966d8c1..4fed49d57f 100644 --- a/firmware/controllers/trigger/decoders/trigger_chrysler.h +++ b/firmware/controllers/trigger/decoders/trigger_chrysler.h @@ -20,4 +20,6 @@ void initDodgeRam(TriggerShape *s DECLARE_ENGINE_PARAMETER_S); void configureDodgeStratusTriggerShape(TriggerShape *s DECLARE_ENGINE_PARAMETER_S); +void initJeep18_6cyl(TriggerShape *s DECLARE_ENGINE_PARAMETER_S); + #endif /* TRIGGER_CHRYSLER_H_ */ diff --git a/firmware/controllers/trigger/trigger_decoder.cpp b/firmware/controllers/trigger/trigger_decoder.cpp index 6225dd8ce5..dfbba3de0f 100644 --- a/firmware/controllers/trigger/trigger_decoder.cpp +++ b/firmware/controllers/trigger/trigger_decoder.cpp @@ -558,6 +558,10 @@ void TriggerShape::initializeTriggerShape(Logging *logger DECLARE_ENGINE_PARAMET initDodgeRam(triggerShape PASS_ENGINE_PARAMETER); break; + case TT_JEEP_18_2_2_2_SIX_CYLINDER: + initJeep18_6cyl(triggerShape PASS_ENGINE_PARAMETER); + break; + case TT_SUBARU_7_6: initializeSubaru7_6(triggerShape PASS_ENGINE_PARAMETER); break; diff --git a/firmware/integration/rusefi_config.txt b/firmware/integration/rusefi_config.txt index 81eb07655e..677248db10 100644 --- a/firmware/integration/rusefi_config.txt +++ b/firmware/integration/rusefi_config.txt @@ -334,7 +334,7 @@ struct trigger_config_s @brief Trigger wheel(s) configuration custom bool32_t 4 bits, U32, @OFFSET@, [0:0], "false", "true" -#define trigger_type_e_enum "custom toothed wheel", "ford aspire", "dodge neon", "Miata NA", "Miata NB", "GM_7X", "Cooper", "Mazda SOHC 4", "60/2", "36/1", "Accord CD", "MITSU", "ACCORD 2", "ACCORD DIP", "Neon 2003", "MAZDA D 1+4", "1+1", "1+60/2", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Accord 1+24", "DODGE STRATUS", "36_2_2_2", "Nissan", "2JZ", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped" , "2003 neon crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "INVALID", "INVALID", "INVALID", "INVALID" +#define trigger_type_e_enum "custom toothed wheel", "ford aspire", "dodge neon", "Miata NA", "Miata NB", "GM_7X", "Cooper", "Mazda SOHC 4", "60/2", "36/1", "Accord CD", "MITSU", "ACCORD 2", "ACCORD DIP", "Neon 2003", "MAZDA D 1+4", "1+1", "1+60/2", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Accord 1+24", "DODGE STRATUS", "36_2_2_2", "Nissan", "2JZ", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped" , "2003 neon crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "Jeep 18 6cyl", "trg38", "trg39", "INVALID" custom trigger_type_e 4 bits, U32, @OFFSET@, [0:5], @@trigger_type_e_enum@@ trigger_type_e type;set trigger_type X diff --git a/firmware/tunerstudio/rusefi.ini b/firmware/tunerstudio/rusefi.ini index 4ba441958d..edc569bc78 100644 --- a/firmware/tunerstudio/rusefi.ini +++ b/firmware/tunerstudio/rusefi.ini @@ -42,7 +42,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 Sun Jan 22 23:36:11 EST 2017 +; this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Mon Jan 23 13:32:15 EST 2017 pageSize = 16376 page = 1 @@ -155,7 +155,7 @@ page = 1 tpsAdcChannel = bits, U32, 524, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" ;skipping overrideCrankingIgnition offset 528 sensorChartFrequency = scalar, S32, 532, "index", 1, 0, 0, 300, 0 ; size 4 - trigger_type = bits, U32, 536, [0:5], "custom toothed wheel", "ford aspire", "dodge neon", "Miata NA", "Miata NB", "GM_7X", "Cooper", "Mazda SOHC 4", "60/2", "36/1", "Accord CD", "MITSU", "ACCORD 2", "ACCORD DIP", "Neon 2003", "MAZDA D 1+4", "1+1", "1+60/2", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Accord 1+24", "DODGE STRATUS", "36_2_2_2", "Nissan", "2JZ", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped" , "2003 neon crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "INVALID", "INVALID", "INVALID", "INVALID" + trigger_type = bits, U32, 536, [0:5], "custom toothed wheel", "ford aspire", "dodge neon", "Miata NA", "Miata NB", "GM_7X", "Cooper", "Mazda SOHC 4", "60/2", "36/1", "Accord CD", "MITSU", "ACCORD 2", "ACCORD DIP", "Neon 2003", "MAZDA D 1+4", "1+1", "1+60/2", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Accord 1+24", "DODGE STRATUS", "36_2_2_2", "Nissan", "2JZ", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped" , "2003 neon crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "Jeep 18 6cyl", "trg38", "trg39", "INVALID" trigger_customIsSynchronizationNeeded= bits, U32, 540, [0:0], "false", "true" trigger_customNeedSecondTriggerInput= bits, U32, 540, [1:1], "false", "true" trigger_useOnlyFirstChannel= bits, U32, 540, [2:2], "false", "true"