4G69 Cam pattern #5541

This commit is contained in:
Andrey 2023-08-25 01:10:03 -04:00
parent 8aa1f295da
commit 4fbccca850
6 changed files with 36 additions and 2 deletions

View File

@ -91,6 +91,8 @@ trigger_type_e getVvtTriggerType(vvt_mode_e vvtMode) {
return trigger_type_e::TT_VVT_NISSAN_VQ35;
case VVT_TOYOTA_4_1:
return trigger_type_e::TT_VVT_TOYOTA_4_1;
case VVT_MITSUBISHI_4G69:
return trigger_type_e::TT_VVT_MITSUBISHI_4G69;
case VVT_MITSUBISHI_3A92:
return trigger_type_e::TT_VVT_MITSUBISHI_3A92;
case VVT_MITSUBISHI_6G75:

View File

@ -67,7 +67,7 @@ typedef enum __attribute__ ((__packed__)) {
*/
VVT_MIATA_NB = 3,
VVT_4G69 = 4,
VVT_MITSUBISHI_4G69 = 4,
/**
* @see TT_VVT_BOSCH_QUICK_START

View File

@ -130,3 +130,32 @@ void initializeVvt3A92(TriggerWaveform *s) {
s->setTriggerSynchronizationGap(9);
s->setSecondTriggerSynchronizationGap(0.11); // redundancy
}
void initializeMitsubishi4G69Cam(TriggerWaveform *s) {
s->initialize(FOUR_STROKE_CAM_SENSOR, SyncEdge::RiseOnly);
int tooth = 5;
int extraTooth = 20;
s->addEvent360( 90 - tooth, TriggerValue::RISE, TriggerWheel::T_PRIMARY);
s->addEvent360( 90, TriggerValue::FALL, TriggerWheel::T_PRIMARY);
s->addEvent360(180 - tooth, TriggerValue::RISE, TriggerWheel::T_PRIMARY);
s->addEvent360(180, TriggerValue::FALL, TriggerWheel::T_PRIMARY);
s->addEvent360(180 + extraTooth - tooth, TriggerValue::RISE, TriggerWheel::T_PRIMARY);
s->addEvent360(180 + extraTooth, TriggerValue::FALL, TriggerWheel::T_PRIMARY);
s->addEvent360(270 - tooth, TriggerValue::RISE, TriggerWheel::T_PRIMARY);
s->addEvent360(270, TriggerValue::FALL, TriggerWheel::T_PRIMARY);
s->addEvent360(270 + extraTooth - tooth, TriggerValue::RISE, TriggerWheel::T_PRIMARY);
s->addEvent360(270 + extraTooth, TriggerValue::FALL, TriggerWheel::T_PRIMARY);
s->addEvent360(360 - tooth, TriggerValue::RISE, TriggerWheel::T_PRIMARY);
s->addEvent360(360, TriggerValue::FALL, TriggerWheel::T_PRIMARY);
s->setTriggerSynchronizationGap(1.29);
s->setSecondTriggerSynchronizationGap(3.5);
}

View File

@ -20,3 +20,4 @@ void initialize36_2_1_1(TriggerWaveform *s);
void initialize36_2_1(TriggerWaveform *s);
void initializeVvt3A92(TriggerWaveform *s);
void initializeMitsubishi4G69Cam(TriggerWaveform *s);

View File

@ -656,6 +656,8 @@ void TriggerWaveform::initializeTriggerWaveform(operation_mode_e triggerOperatio
initialize60_2_2_Renault_F(this);
break;
case trigger_type_e::TT_VVT_MITSUBISHI_4G69:
initializeMitsubishi4G69Cam(this);
break;
case trigger_type_e::TT_MITSU_4G63_CAM:
initializeMitsubishi4g63Cam(this);
break;

View File

@ -177,7 +177,6 @@ static angle_t adjustCrankPhase(int camIndex) {
case VVT_MITSUBISHI_4G9x:
return tc->syncAndReport(crankDivider, 1);
case VVT_SINGLE_TOOTH:
case VVT_4G69:
case VVT_NISSAN_VQ:
case VVT_BOSCH_QUICK_START:
case VVT_MIATA_NB:
@ -188,6 +187,7 @@ static angle_t adjustCrankPhase(int camIndex) {
case VVT_BARRA_3_PLUS_1:
case VVT_NISSAN_MR:
case VVT_MAZDA_SKYACTIV:
case VVT_MITSUBISHI_4G69:
case VVT_MITSUBISHI_3A92:
case VVT_MITSUBISHI_6G75:
case VVT_HONDA_K_EXHAUST: