This commit is contained in:
parent
784cbc0573
commit
60b8aa71de
|
@ -25,6 +25,7 @@ Release template (copy/paste this for new release):
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
- verbose trigger sync should reuse engineSnifferRpmThreshold #4259
|
- verbose trigger sync should reuse engineSnifferRpmThreshold #4259
|
||||||
|
- Subaru EZ30 variation of 36/2/2/2 trigger
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
- Improved logic used to disambiguate trigger sync using cam/VVT information. Engine now runs in wasted spark until cam sync is achieved, at which point it switches to fully sequential. #4099
|
- Improved logic used to disambiguate trigger sync using cam/VVT information. Engine now runs in wasted spark until cam sync is achieved, at which point it switches to fully sequential. #4099
|
||||||
|
|
|
@ -400,8 +400,8 @@ case TT_DODGE_RAM:
|
||||||
return "TT_DODGE_RAM";
|
return "TT_DODGE_RAM";
|
||||||
case TT_DODGE_STRATUS:
|
case TT_DODGE_STRATUS:
|
||||||
return "TT_DODGE_STRATUS";
|
return "TT_DODGE_STRATUS";
|
||||||
case TT_EZ30:
|
case TT_SUBARU_EZ30:
|
||||||
return "TT_EZ30";
|
return "TT_SUBARU_EZ30";
|
||||||
case TT_FIAT_IAW_P8:
|
case TT_FIAT_IAW_P8:
|
||||||
return "TT_FIAT_IAW_P8";
|
return "TT_FIAT_IAW_P8";
|
||||||
case TT_FORD_ASPIRE:
|
case TT_FORD_ASPIRE:
|
||||||
|
|
|
@ -502,7 +502,7 @@ typedef enum {
|
||||||
// GM 24x with 3/12 degree gaps
|
// GM 24x with 3/12 degree gaps
|
||||||
TT_GM_24x_2 = 74,
|
TT_GM_24x_2 = 74,
|
||||||
|
|
||||||
TT_EZ30 = 12,
|
TT_SUBARU_EZ30 = 12,
|
||||||
UNUSED_13 = 13,
|
UNUSED_13 = 13,
|
||||||
UNUSED_21 = 21,
|
UNUSED_21 = 21,
|
||||||
UNUSED_34 = 34,
|
UNUSED_34 = 34,
|
||||||
|
|
|
@ -684,7 +684,10 @@ void TriggerWaveform::initializeTriggerWaveform(operation_mode_e triggerOperatio
|
||||||
configureHondaK_12_1(this);
|
configureHondaK_12_1(this);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TT_EZ30:
|
case TT_SUBARU_EZ30:
|
||||||
|
initializeSubaruEZ30(this);
|
||||||
|
break;
|
||||||
|
|
||||||
case UNUSED_13:
|
case UNUSED_13:
|
||||||
case UNUSED_21:
|
case UNUSED_21:
|
||||||
case UNUSED_34:
|
case UNUSED_34:
|
||||||
|
|
|
@ -9,11 +9,7 @@
|
||||||
|
|
||||||
#include "trigger_subaru.h"
|
#include "trigger_subaru.h"
|
||||||
|
|
||||||
/**
|
static void initialize_one_of_36_2_2_2(TriggerWaveform *s, int firstCount, int secondCount, bool hasRotaryRelevance) {
|
||||||
* This trigger is also used by Nissan and Mazda
|
|
||||||
* https://rusefi.com/forum/viewtopic.php?f=2&t=1932
|
|
||||||
*/
|
|
||||||
void initialize36_2_2_2(TriggerWaveform *s) {
|
|
||||||
s->initialize(FOUR_STROKE_CRANK_SENSOR);
|
s->initialize(FOUR_STROKE_CRANK_SENSOR);
|
||||||
|
|
||||||
#if EFI_UNIT_TEST
|
#if EFI_UNIT_TEST
|
||||||
|
@ -30,7 +26,7 @@ void initialize36_2_2_2(TriggerWaveform *s) {
|
||||||
|
|
||||||
float base = 0;
|
float base = 0;
|
||||||
|
|
||||||
for (int i = 0; i < 12; i++) {
|
for (int i = 0; i < firstCount; i++) {
|
||||||
s->addEvent720(base + narrow / 2, T_PRIMARY, TV_FALL);
|
s->addEvent720(base + narrow / 2, T_PRIMARY, TV_FALL);
|
||||||
s->addEvent720(base + narrow, T_PRIMARY, TV_RISE);
|
s->addEvent720(base + narrow, T_PRIMARY, TV_RISE);
|
||||||
base += narrow;
|
base += narrow;
|
||||||
|
@ -40,7 +36,7 @@ void initialize36_2_2_2(TriggerWaveform *s) {
|
||||||
s->addEvent720(base + wide, T_PRIMARY, TV_RISE);
|
s->addEvent720(base + wide, T_PRIMARY, TV_RISE);
|
||||||
base += wide;
|
base += wide;
|
||||||
|
|
||||||
for (int i = 0; i < 15; i++) {
|
for (int i = 0; i < secondCount; i++) {
|
||||||
s->addEvent720(base + narrow / 2, T_PRIMARY, TV_FALL);
|
s->addEvent720(base + narrow / 2, T_PRIMARY, TV_FALL);
|
||||||
s->addEvent720(base + narrow, T_PRIMARY, TV_RISE);
|
s->addEvent720(base + narrow, T_PRIMARY, TV_RISE);
|
||||||
base += narrow;
|
base += narrow;
|
||||||
|
@ -54,6 +50,18 @@ void initialize36_2_2_2(TriggerWaveform *s) {
|
||||||
s->useOnlyPrimaryForSync = true;
|
s->useOnlyPrimaryForSync = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This trigger is also used by Nissan and Mazda
|
||||||
|
* https://rusefi.com/forum/viewtopic.php?f=2&t=1932
|
||||||
|
*/
|
||||||
|
void initialize36_2_2_2(TriggerWaveform *s) {
|
||||||
|
initialize_one_of_36_2_2_2(s, 12, 15, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
void initializeSubaruEZ30(TriggerWaveform *s) {
|
||||||
|
initialize_one_of_36_2_2_2(s, 18, 9, true);
|
||||||
|
}
|
||||||
|
|
||||||
static void initializeSubaru7_6(TriggerWaveform *s, bool withCrankWheel) {
|
static void initializeSubaru7_6(TriggerWaveform *s, bool withCrankWheel) {
|
||||||
s->initialize(FOUR_STROKE_CAM_SENSOR);
|
s->initialize(FOUR_STROKE_CAM_SENSOR);
|
||||||
|
|
||||||
|
|
|
@ -13,4 +13,4 @@ void initialize36_2_2_2(TriggerWaveform *s);
|
||||||
void initializeSubaru7_6(TriggerWaveform *s);
|
void initializeSubaru7_6(TriggerWaveform *s);
|
||||||
void initializeSubaruOnly7(TriggerWaveform *s);
|
void initializeSubaruOnly7(TriggerWaveform *s);
|
||||||
void initializeSubaru_SVX(TriggerWaveform *s);
|
void initializeSubaru_SVX(TriggerWaveform *s);
|
||||||
|
void initializeSubaruEZ30(TriggerWaveform *s);
|
||||||
|
|
Loading…
Reference in New Issue