From 57e934d8acba812b31fc80120d5502b74c590ffb Mon Sep 17 00:00:00 2001 From: rusefi Date: Sun, 12 Mar 2017 22:55:02 -0400 Subject: [PATCH] GM 7x wheel --- .../trigger/decoders/trigger_gm.cpp | 35 ++++++++++--------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/firmware/controllers/trigger/decoders/trigger_gm.cpp b/firmware/controllers/trigger/decoders/trigger_gm.cpp index db12bce089..cb254fd06e 100644 --- a/firmware/controllers/trigger/decoders/trigger_gm.cpp +++ b/firmware/controllers/trigger/decoders/trigger_gm.cpp @@ -7,33 +7,36 @@ #include "trigger_gm.h" -// GM7X looks like this is not complete void configureGmTriggerShape(TriggerShape *s DECLARE_ENGINE_PARAMETER_S) { - s->initialize(FOUR_STROKE_CAM_SENSOR, false); + s->initialize(FOUR_STROKE_CRANK_SENSOR, false); // all angles are x2 here - so, 5 degree width is 10 float w = 10; - s->addEvent2(120 - w, T_PRIMARY, TV_RISE PASS_ENGINE_PARAMETER); - s->addEvent2(120.0, T_PRIMARY, TV_FALL PASS_ENGINE_PARAMETER); + float m = 2.0; - s->addEvent2(240 - w, T_PRIMARY, TV_RISE PASS_ENGINE_PARAMETER); - s->addEvent2(240.0, T_PRIMARY, TV_FALL PASS_ENGINE_PARAMETER); + s->addEvent2(m * 60 - w, T_PRIMARY, TV_RISE PASS_ENGINE_PARAMETER); + s->addEvent2(m * 60, T_PRIMARY, TV_FALL PASS_ENGINE_PARAMETER); - s->addEvent2(360 - w, T_PRIMARY, TV_RISE PASS_ENGINE_PARAMETER); - s->addEvent2(360.0, T_PRIMARY, TV_FALL PASS_ENGINE_PARAMETER); + s->addEvent2(m * 120 - w, T_PRIMARY, TV_RISE PASS_ENGINE_PARAMETER); + s->addEvent2(m * 120.0, T_PRIMARY, TV_FALL PASS_ENGINE_PARAMETER); - s->addEvent2(480 - w, T_PRIMARY, TV_RISE PASS_ENGINE_PARAMETER); - s->addEvent2(480.0, T_PRIMARY, TV_FALL PASS_ENGINE_PARAMETER); + s->addEvent2(m * 180 - w, T_PRIMARY, TV_RISE PASS_ENGINE_PARAMETER); + s->addEvent2(m * 180, T_PRIMARY, TV_FALL PASS_ENGINE_PARAMETER); - s->addEvent2(600 - w, T_PRIMARY, TV_RISE PASS_ENGINE_PARAMETER); - s->addEvent2(600.0, T_PRIMARY, TV_FALL PASS_ENGINE_PARAMETER); + s->addEvent2(m * 240 - w, T_PRIMARY, TV_RISE PASS_ENGINE_PARAMETER); + s->addEvent2(m * 240.0, T_PRIMARY, TV_FALL PASS_ENGINE_PARAMETER); - s->addEvent2(700 - w, T_PRIMARY, TV_RISE PASS_ENGINE_PARAMETER); - s->addEvent2(700.0, T_PRIMARY, TV_FALL PASS_ENGINE_PARAMETER); + s->addEvent2(m * 300 - w, T_PRIMARY, TV_RISE PASS_ENGINE_PARAMETER); + s->addEvent2(m * 300.0, T_PRIMARY, TV_FALL PASS_ENGINE_PARAMETER); - s->addEvent2(720 - w, T_PRIMARY, TV_RISE PASS_ENGINE_PARAMETER); - s->addEvent2(720.0, T_PRIMARY, TV_FALL PASS_ENGINE_PARAMETER); + s->addEvent2(m * 350 - w, T_PRIMARY, TV_RISE PASS_ENGINE_PARAMETER); + s->addEvent2(m * 350.0, T_PRIMARY, TV_FALL PASS_ENGINE_PARAMETER); + + s->addEvent2(m * 360 - w, T_PRIMARY, TV_RISE PASS_ENGINE_PARAMETER); + s->addEvent2(m * 360.0, T_PRIMARY, TV_FALL PASS_ENGINE_PARAMETER); + + s->setTriggerSynchronizationGap(6); } /**