mercedes two lobe trigger testing (#3543)

* mercedes

* config

* break;

* I did the gap ratio math wrong

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
This commit is contained in:
Matthew Kennedy 2021-11-13 18:50:04 -08:00 committed by GitHub
parent 19a119e5fc
commit d591a5ad26
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 32 additions and 4 deletions

View File

@ -352,8 +352,7 @@ typedef enum {
TT_TOOTHED_WHEEL_60_2 = 8,
TT_TOOTHED_WHEEL_36_1 = 9,
// todo: remove this weird trigger?
TT_UNUSED_10 = 10,
TT_MERCEDES_2_SEGMENT = 10,
// todo: this really looks to be same as Miata_NA shall we remove?
TT_MITSUBISHI = 11,

View File

@ -0,0 +1,19 @@
#include "trigger_mercedes.h"
#include "trigger_structure.h"
void setMercedesTwoSegment(TriggerWaveform* s) {
s->initialize(FOUR_STROKE_CRANK_SENSOR);
s->addEvent360(223 - 10, T_PRIMARY, TV_RISE);
s->addEvent360(223, T_PRIMARY, TV_FALL);
s->addEvent360(316 - 10, T_PRIMARY, TV_RISE);
s->addEvent360(316, T_PRIMARY, TV_FALL);
s->addEvent360(360 - 10, T_PRIMARY, TV_RISE);
s->addEvent360(360, T_PRIMARY, TV_FALL);
s->setTriggerSynchronizationGap(0.47);
s->setSecondTriggerSynchronizationGap(0.42);
s->setThirdTriggerSynchronizationGap(5.07);
}

View File

@ -0,0 +1,5 @@
#pragma once
class TriggerWaveform;
void setMercedesTwoSegment(TriggerWaveform* s);

View File

@ -37,6 +37,7 @@
#include "trigger_honda.h"
#include "trigger_vw.h"
#include "trigger_universal.h"
#include "trigger_mercedes.h"
#if EFI_SENSOR_CHART
#include "sensor_chart.h"
@ -587,7 +588,10 @@ void TriggerWaveform::initializeTriggerWaveform(operation_mode_e ambiguousOperat
configure3_1_cam(this);
break;
case TT_UNUSED_10:
case TT_MERCEDES_2_SEGMENT:
setMercedesTwoSegment(this);
break;
case TT_UNUSED_62:
case TT_ONE:
setToothedWheelConfiguration(this, 1, 0, ambiguousOperationMode);

View File

@ -16,6 +16,7 @@ TRIGGER_DECODERS_SRC_CPP = \
$(CONTROLLERS_DIR)/trigger/decoders/trigger_rover.cpp \
$(CONTROLLERS_DIR)/trigger/decoders/trigger_renix.cpp \
$(CONTROLLERS_DIR)/trigger/decoders/trigger_vw.cpp \
$(CONTROLLERS_DIR)/trigger/decoders/trigger_mercedes.cpp \
$(CONTROLLERS_DIR)/trigger/decoders/trigger_misc.cpp \
$(CONTROLLERS_DIR)/trigger/decoders/trigger_universal.cpp

View File

@ -565,7 +565,7 @@ adc_channel_e fuelLevelSensor;+This is the processor pin that your fuel level se
struct trigger_config_s @brief Trigger wheel(s) configuration
#define trigger_type_e_enum "custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "Miata NB", "GM_7X", "Cooper R50", "Mazda SOHC 4", "60/2", "36/1", "INVALID", "Mitsubishi", "Honda 4+24", "Honda 1+4+24", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "INVALID", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Honda 1+24", "Dodge Stratus", "36_2_2_2", "Nissan Primera", "dev 2JZ 3/34 simulator", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped", "Dodge Neon 2003 crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "Jeep 18-2-2-2", "WIP", "Dodge Neon 1995 crank only", "Jeep XJ 4 cyl", "FiatIAQ_P8", "Mazda Z5", "INVALID", "Renix 44-2-2", "Renix 66-2-2-2", "Honda K 12+1", "INVALID", "36/2", "Subaru SVX", "1+16", "Subaru 7 without 6", "INVALID", "TriTach", "GM 60/2/2/2", "Skoda Favorit", "Barra 3+1 Cam", "Kawa KX450F", "Nissan VQ35", "INVALID", "Nissan VQ30", "Nissan QR25", "INVALID", "Subaru SVX Crank 1", "Subaru SVX Cam VVT", "Ford PIP", "Suzuki G13B", "Honda K 4+1", "Nissan MR18 Crank", "INVALID"
#define trigger_type_e_enum "custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "Miata NB", "GM_7X", "Cooper R50", "Mazda SOHC 4", "60/2", "36/1", "Mercedes Two Segment", "Mitsubishi", "Honda 4+24", "Honda 1+4+24", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "INVALID", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Honda 1+24", "Dodge Stratus", "36_2_2_2", "Nissan Primera", "dev 2JZ 3/34 simulator", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped", "Dodge Neon 2003 crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "Jeep 18-2-2-2", "WIP", "Dodge Neon 1995 crank only", "Jeep XJ 4 cyl", "FiatIAQ_P8", "Mazda Z5", "INVALID", "Renix 44-2-2", "Renix 66-2-2-2", "Honda K 12+1", "INVALID", "36/2", "Subaru SVX", "1+16", "Subaru 7 without 6", "INVALID", "TriTach", "GM 60/2/2/2", "Skoda Favorit", "Barra 3+1 Cam", "Kawa KX450F", "Nissan VQ35", "INVALID", "Nissan VQ30", "Nissan QR25", "INVALID", "Subaru SVX Crank 1", "Subaru SVX Cam VVT", "Ford PIP", "Suzuki G13B", "Honda K 4+1", "Nissan MR18 Crank", "INVALID"
custom trigger_type_e 4 bits, U32, @OFFSET@, [0:6], @@trigger_type_e_enum@@
trigger_type_e type;+https://github.com/rusefi/rusefi/wiki/All-Supported-Triggers\nset trigger_type X