diff --git a/firmware/controllers/trigger/trigger_central.h b/firmware/controllers/trigger/trigger_central.h index 9f357a5541..6d1c44d341 100644 --- a/firmware/controllers/trigger/trigger_central.h +++ b/firmware/controllers/trigger/trigger_central.h @@ -101,3 +101,4 @@ bool isTriggerConfigChanged(DECLARE_ENGINE_PARAMETER_SIGNATURE); bool isTriggerDecoderError(DECLARE_ENGINE_PARAMETER_SIGNATURE); #define SYMMETRICAL_CRANK_SENSOR_DIVIDER 4 +#define SYMMETRICAL_THREE_TIMES_CRANK_SENSOR_DIVIDER 6 diff --git a/firmware/controllers/trigger/trigger_emulator_algo.cpp b/firmware/controllers/trigger/trigger_emulator_algo.cpp index 2bb36c1b8d..64e6d7227f 100644 --- a/firmware/controllers/trigger/trigger_emulator_algo.cpp +++ b/firmware/controllers/trigger/trigger_emulator_algo.cpp @@ -88,8 +88,10 @@ extern WaveChart waveChart; * todo: oh this method has only one usage? there must me another very similar method! */ static float getRpmMultiplier(operation_mode_e mode) { - if (mode == FOUR_STROKE_SYMMETRICAL_CRANK_SENSOR) { - return 2; + if (mode == FOUR_STROKE_THREE_TIMES_CRANK_SENSOR) { + return SYMMETRICAL_THREE_TIMES_CRANK_SENSOR_DIVIDER / 2; + } else if (mode == FOUR_STROKE_SYMMETRICAL_CRANK_SENSOR) { + return SYMMETRICAL_CRANK_SENSOR_DIVIDER / 2; } else if (mode == FOUR_STROKE_CAM_SENSOR) { return 0.5; } else if (mode == FOUR_STROKE_CRANK_SENSOR) {