diff --git a/firmware/console/binary/live_data.cpp b/firmware/console/binary/live_data.cpp index 4a463e54ff..7c52d392a1 100644 --- a/firmware/console/binary/live_data.cpp +++ b/firmware/console/binary/live_data.cpp @@ -59,7 +59,7 @@ const antilag_system_state_s* getLiveData(size_t) { template<> const injector_model_s* getLiveData(size_t) { - return &engine->module().unmock(); + return &engine->module().unmock(); } template<> diff --git a/firmware/controllers/algo/engine.h b/firmware/controllers/algo/engine.h index db8f03df19..0fdb5ac815 100644 --- a/firmware/controllers/algo/engine.h +++ b/firmware/controllers/algo/engine.h @@ -128,7 +128,8 @@ public: #endif // EFI_ENGINE_CONTROL type_list< - Mockable, + Mockable, + Mockable, #if EFI_IDLE_CONTROL Mockable, #endif // EFI_IDLE_CONTROL diff --git a/firmware/controllers/algo/engine2.cpp b/firmware/controllers/algo/engine2.cpp index 0a00c8d31d..3864ebcae0 100644 --- a/firmware/controllers/algo/engine2.cpp +++ b/firmware/controllers/algo/engine2.cpp @@ -96,7 +96,7 @@ void EngineState::periodicFastCallback() { warning(ObdCode::CUSTOM_SLOW_NOT_INVOKED, "Slow not invoked yet"); } efitick_t nowNt = getTimeNowNt(); - + if (engine->rpmCalculator.isCranking()) { crankingTimer.reset(nowNt); } @@ -142,7 +142,7 @@ void EngineState::periodicFastCallback() { auto clResult = fuelClosedLoopCorrection(); // Store the pre-wall wetting injection duration for scheduling purposes only, not the actual injection duration - engine->engineState.injectionDuration = engine->module()->getInjectionDuration(untrimmedInjectionMass); + engine->engineState.injectionDuration = engine->module()->getInjectionDuration(untrimmedInjectionMass); float fuelLoad = getFuelingLoad(); injectionOffset = getInjectionOffset(rpm, fuelLoad); diff --git a/firmware/controllers/algo/fuel_math.cpp b/firmware/controllers/algo/fuel_math.cpp index 44371f232c..a3b7b5f6a6 100644 --- a/firmware/controllers/algo/fuel_math.cpp +++ b/firmware/controllers/algo/fuel_math.cpp @@ -186,7 +186,7 @@ static float getBaseFuelMass(int rpm) { engine->fuelComputer.normalizedCylinderFilling = normalizedCylinderFilling; engine->engineState.fuelingLoad = airmass.EngineLoadPercent; engine->engineState.ignitionLoad = engine->fuelComputer.getLoadOverride(airmass.EngineLoadPercent, engineConfiguration->ignOverrideMode); - + auto gramPerCycle = airmass.CylinderAirmass * engineConfiguration->cylindersCount; auto gramPerMs = rpm == 0 ? 0 : gramPerCycle / getEngineCycleDuration(rpm); @@ -200,7 +200,7 @@ static float getBaseFuelMass(int rpm) { engine->engineState.baseFuel = baseFuelMass; if (cisnan(baseFuelMass)) { - // todo: we should not have this here but https://github.com/rusefi/rusefi/issues/1690 + // todo: we should not have this here but https://github.com/rusefi/rusefi/issues/1690 return 0; } @@ -315,7 +315,7 @@ float getInjectionMass(int rpm) { float injectionFuelMass = cycleFuelMass * durationMultiplier; // Prepare injector flow rate & deadtime - engine->module()->prepare(); + engine->module()->prepare(); floatms_t tpsAccelEnrich = engine->tpsAccelEnrichment.getTpsEnrichment(); efiAssert(ObdCode::CUSTOM_ERR_ASSERT, !cisnan(tpsAccelEnrich), "NaN tpsAccelEnrich", 0); @@ -324,7 +324,7 @@ float getInjectionMass(int rpm) { // For legacy reasons, the TPS accel table is in units of milliseconds, so we have to convert BACK to mass float tpsAccelPerInjection = durationMultiplier * tpsAccelEnrich; - float tpsFuelMass = engine->module()->getFuelMassForDuration(tpsAccelPerInjection); + float tpsFuelMass = engine->module()->getFuelMassForDuration(tpsAccelPerInjection); return injectionFuelMass + tpsFuelMass; } @@ -344,7 +344,7 @@ void initFuelMap() { */ float getCltFuelCorrection() { const auto clt = Sensor::get(SensorType::Clt); - + if (!clt) return 1; // this error should be already reported somewhere else, let's just handle it @@ -400,7 +400,7 @@ percent_t getFuelALSCorrection(int rpm) { config->alsFuelAdjustmentLoadBins, throttleIntent, config->alsFuelAdjustmentrpmBins, rpm ); - return AlsFuelAdd; + return AlsFuelAdd; } else #endif /* EFI_ANTILAG_SYSTEM */ { diff --git a/firmware/controllers/engine_cycle/main_trigger_callback.cpp b/firmware/controllers/engine_cycle/main_trigger_callback.cpp index 3ed4d5ba80..327c00496e 100644 --- a/firmware/controllers/engine_cycle/main_trigger_callback.cpp +++ b/firmware/controllers/engine_cycle/main_trigger_callback.cpp @@ -78,7 +78,7 @@ void InjectionEvent::onTriggerTooth(int rpm, efitick_t nowNt, float currentPhase // Perform wall wetting adjustment on fuel mass, not duration, so that // it's correct during fuel pressure (injector flow) or battery voltage (deadtime) transients injectionMassGrams = wallFuel.adjust(injectionMassGrams); - const floatms_t injectionDuration = engine->module()->getInjectionDuration(injectionMassGrams); + const floatms_t injectionDuration = engine->module()->getInjectionDuration(injectionMassGrams); #if EFI_PRINTF_FUEL_DETAILS if (printFuelDebug) { diff --git a/firmware/controllers/engine_cycle/prime_injection.cpp b/firmware/controllers/engine_cycle/prime_injection.cpp index 5f82604100..5e9f5a076d 100644 --- a/firmware/controllers/engine_cycle/prime_injection.cpp +++ b/firmware/controllers/engine_cycle/prime_injection.cpp @@ -20,7 +20,7 @@ floatms_t PrimeController::getPrimeDuration() const { 0.001f * // convert milligram to gram interpolate2d(clt.Value, engineConfiguration->primeBins, engineConfiguration->primeValues); - return engine->module()->getInjectionDuration(primeMass); + return engine->module()->getInjectionDuration(primeMass); } // Check if the engine is not stopped or cylinder cleanup is activated diff --git a/unit_tests/tests/ignition_injection/test_startOfCrankingPrimingPulse.cpp b/unit_tests/tests/ignition_injection/test_startOfCrankingPrimingPulse.cpp index 931ca6c9db..76dfa74cf1 100644 --- a/unit_tests/tests/ignition_injection/test_startOfCrankingPrimingPulse.cpp +++ b/unit_tests/tests/ignition_injection/test_startOfCrankingPrimingPulse.cpp @@ -48,7 +48,7 @@ TEST(priming, duration) { EngineTestHelper eth(engine_type_e::TEST_ENGINE); MockInjectorModel2 injectorModel; - engine->module().set(&injectorModel); + engine->module().set(&injectorModel); for (size_t i = 0; i < efi::size(engineConfiguration->primeBins); i++) { engineConfiguration->primeBins[i] = i * 10; diff --git a/unit_tests/tests/trigger/test_injection_scheduling.cpp b/unit_tests/tests/trigger/test_injection_scheduling.cpp index b5ceab6ebd..da1ebb51cf 100644 --- a/unit_tests/tests/trigger/test_injection_scheduling.cpp +++ b/unit_tests/tests/trigger/test_injection_scheduling.cpp @@ -22,7 +22,7 @@ TEST(injectionScheduling, InjectionIsScheduled) { // Injection duration of 20ms MockInjectorModel2 im; EXPECT_CALL(im, getInjectionDuration(_)).WillOnce(Return(20.0f)); - engine->module().set(&im); + engine->module().set(&im); engine->rpmCalculator.oneDegreeUs = 100; @@ -62,7 +62,7 @@ TEST(injectionScheduling, InjectionIsScheduledBeforeWraparound) { // Injection duration of 20ms MockInjectorModel2 im; EXPECT_CALL(im, getInjectionDuration(_)).WillOnce(Return(20.0f)); - engine->module().set(&im); + engine->module().set(&im); engine->rpmCalculator.oneDegreeUs = 100; @@ -101,7 +101,7 @@ TEST(injectionScheduling, InjectionIsScheduledAfterWraparound) { // Injection duration of 20ms MockInjectorModel2 im; EXPECT_CALL(im, getInjectionDuration(_)).WillOnce(Return(20.0f)); - engine->module().set(&im); + engine->module().set(&im); engine->rpmCalculator.oneDegreeUs = 100; @@ -140,7 +140,7 @@ TEST(injectionScheduling, InjectionNotScheduled) { // Expect no calls to injector model StrictMock im; - engine->module().set(&im); + engine->module().set(&im); engine->rpmCalculator.oneDegreeUs = 100; diff --git a/unit_tests/tests/trigger/test_trigger_decoder.cpp b/unit_tests/tests/trigger/test_trigger_decoder.cpp index 92f1ad40da..67312639ea 100644 --- a/unit_tests/tests/trigger/test_trigger_decoder.cpp +++ b/unit_tests/tests/trigger/test_trigger_decoder.cpp @@ -513,7 +513,7 @@ static void setTestBug299(EngineTestHelper *eth) { ASSERT_EQ( 1, engine->fuelComputer.running.intakeTemperatureCoefficient) << "iatC"; ASSERT_EQ( 1, engine->fuelComputer.running.coolantTemperatureCoefficient) << "cltC"; - ASSERT_EQ( 0, engine->module()->getDeadtime()) << "lag"; + ASSERT_EQ( 0, engine->module()->getDeadtime()) << "lag"; ASSERT_EQ( 3000, round(Sensor::getOrZero(SensorType::Rpm))) << "setTestBug299: RPM"; @@ -553,7 +553,7 @@ void doTestFuelSchedulerBug299smallAndMedium(int startUpDelayMs) { // Injection duration of 12.5ms MockInjectorModel2 im; EXPECT_CALL(im, getInjectionDuration(_)).WillRepeatedly(Return(12.5f)); - engine->module().set(&im); + engine->module().set(&im); assertEqualsM("duty for maf=3", 62.5, getInjectorDutyCycle(round(Sensor::getOrZero(SensorType::Rpm)))); @@ -713,7 +713,7 @@ void doTestFuelSchedulerBug299smallAndMedium(int startUpDelayMs) { // Injection duration of 17.5ms MockInjectorModel2 im2; EXPECT_CALL(im2, getInjectionDuration(_)).WillRepeatedly(Return(17.5f)); - engine->module().set(&im2); + engine->module().set(&im2); // duty cycle above 75% is a special use-case because 'special' fuel event overlappes the next normal event in batch mode assertEqualsM("duty for maf=3", 87.5, getInjectorDutyCycle(round(Sensor::getOrZero(SensorType::Rpm)))); @@ -907,7 +907,7 @@ TEST(big, testFuelSchedulerBug299smallAndLarge) { // Injection duration of 17.5ms MockInjectorModel2 im; EXPECT_CALL(im, getInjectionDuration(_)).WillRepeatedly(Return(17.5f)); - engine->module().set(&im); + engine->module().set(&im); assertEqualsM("Lduty for maf=3", 87.5, getInjectorDutyCycle(round(Sensor::getOrZero(SensorType::Rpm)))); @@ -974,7 +974,7 @@ TEST(big, testFuelSchedulerBug299smallAndLarge) { engine->engineState.injectionDuration = 2.0f; MockInjectorModel2 im2; EXPECT_CALL(im2, getInjectionDuration(_)).WillRepeatedly(Return(2.0f)); - engine->module().set(&im2); + engine->module().set(&im2); ASSERT_EQ( 10, getInjectorDutyCycle(round(Sensor::getOrZero(SensorType::Rpm)))) << "Lduty for maf=3";