From d90f0481b0555d3897ff791c75e4fc1465f968ec Mon Sep 17 00:00:00 2001 From: rusefi Date: Tue, 10 Sep 2019 21:35:10 -0400 Subject: [PATCH] one step back :) instant RPM does not look right --- firmware/config/engines/mazda_miata_vvt.cpp | 6 ++++++ firmware/controllers/actuators/idle_thread.cpp | 3 ++- firmware/controllers/algo/engine_configuration.cpp | 2 ++ firmware/controllers/engine_controller.cpp | 2 +- 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/firmware/config/engines/mazda_miata_vvt.cpp b/firmware/config/engines/mazda_miata_vvt.cpp index 22fdd3c0fc..2a8404f2a5 100644 --- a/firmware/config/engines/mazda_miata_vvt.cpp +++ b/firmware/config/engines/mazda_miata_vvt.cpp @@ -553,6 +553,12 @@ void setMiataNB2_MRE(DECLARE_CONFIG_PARAMETER_SIGNATURE) { // TLE8888_PIN_23: "33 - GP Out 3" boardConfiguration->malfunctionIndicatorPin = TLE8888_PIN_23; + //set idle_offset 0 + engineConfiguration->idleRpmPid.offset = 0; + engineConfiguration->idleRpmPid.pFactor = 0.2; + engineConfiguration->idleRpmPid.iFactor = 0.0001; + engineConfiguration->idleRpmPid.dFactor = 5; + engineConfiguration->idleRpmPid.periodMs = 10; engineConfiguration->bc.isFasterEngineSpinUpEnabled = true; diff --git a/firmware/controllers/actuators/idle_thread.cpp b/firmware/controllers/actuators/idle_thread.cpp index 783e0debb7..c5a837583a 100644 --- a/firmware/controllers/actuators/idle_thread.cpp +++ b/firmware/controllers/actuators/idle_thread.cpp @@ -222,7 +222,8 @@ static percent_t automaticIdleController(DECLARE_ENGINE_PARAMETER_SIGNATURE) { efitick_t nowNt = getTimeNowNt(); // check if within the dead zone - float rpm = engine->triggerCentral.triggerState.calculateInstantRpm(NULL, nowNt PASS_ENGINE_PARAMETER_SUFFIX); + //float rpm = engine->triggerCentral.triggerState.calculateInstantRpm(NULL, nowNt PASS_ENGINE_PARAMETER_SUFFIX); + float rpm = GET_RPM(); if (absI(rpm - targetRpm) <= CONFIG(idlePidRpmDeadZone)) { engine->engineState.idle.idleState = RPM_DEAD_ZONE; // current RPM is close enough, no need to change anything diff --git a/firmware/controllers/algo/engine_configuration.cpp b/firmware/controllers/algo/engine_configuration.cpp index d557f4d2d9..5d6724b26c 100644 --- a/firmware/controllers/algo/engine_configuration.cpp +++ b/firmware/controllers/algo/engine_configuration.cpp @@ -439,6 +439,8 @@ static void setDefaultFuelCutParameters(DECLARE_ENGINE_PARAMETER_SIGNATURE) { } static void setDefaultCrankingSettings(DECLARE_ENGINE_PARAMETER_SIGNATURE) { + CONFIG(useTLE8888_cranking_hack) = true; + setLinearCurve(engineConfiguration->crankingTpsCoef, CRANKING_CURVE_SIZE, /*from*/1, /*to*/1, 1); setLinearCurve(engineConfiguration->crankingTpsBins, CRANKING_CURVE_SIZE, 0, 100, 1); diff --git a/firmware/controllers/engine_controller.cpp b/firmware/controllers/engine_controller.cpp index 884d477445..77a3529b32 100644 --- a/firmware/controllers/engine_controller.cpp +++ b/firmware/controllers/engine_controller.cpp @@ -814,6 +814,6 @@ int getRusEfiVersion(void) { if (initBootloader() != 0) return 123; #endif /* EFI_BOOTLOADER_INCLUDE_CODE */ - return 20190909; + return 20190910; } #endif /* EFI_UNIT_TEST */