From df5cb34fb88c66571f59dcab79e71042209cf4ee Mon Sep 17 00:00:00 2001 From: Andrey Date: Thu, 20 Jan 2022 22:40:15 -0500 Subject: [PATCH] migrating to SensorType::Rpm API --- firmware/controllers/actuators/electronic_throttle.cpp | 6 +++--- unit_tests/tests/test_etb.cpp | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/firmware/controllers/actuators/electronic_throttle.cpp b/firmware/controllers/actuators/electronic_throttle.cpp index 87d5e907de..fd58703f6c 100644 --- a/firmware/controllers/actuators/electronic_throttle.cpp +++ b/firmware/controllers/actuators/electronic_throttle.cpp @@ -298,7 +298,7 @@ expected EtbController::getSetpointEtb() const { // and let the engine idle. float sanitizedPedal = clampF(0, pedalPosition.value_or(0), 100); - float rpm = GET_RPM(); + float rpm = Sensor::getOrZero(SensorType::Rpm); float targetFromTable = m_pedalMap->getValue(rpm, sanitizedPedal); engine->engineState.targetFromTable = targetFromTable; @@ -557,7 +557,7 @@ void EtbController::update() { m_pid.iTermMax = engineConfiguration->etb_iTermMax; // Update local state about autotune - m_isAutotune = GET_RPM() == 0 + m_isAutotune = Sensor::getOrZero(SensorType::Rpm) == 0 && engine->etbAutoTune && m_function == ETB_Throttle1; @@ -583,7 +583,7 @@ struct EtbImpl final : public EtbController { #if EFI_TUNER_STUDIO if (m_isAutocal) { // Don't allow if engine is running! - if (GET_RPM() > 0) { + if (Sensor::getOrZero(SensorType::Rpm) > 0) { m_isAutocal = false; return; } diff --git a/unit_tests/tests/test_etb.cpp b/unit_tests/tests/test_etb.cpp index 57a7eef68f..9a3c2a8447 100644 --- a/unit_tests/tests/test_etb.cpp +++ b/unit_tests/tests/test_etb.cpp @@ -403,23 +403,23 @@ TEST(etb, setpointRevLimit) { etb.init(ETB_Throttle1, nullptr, nullptr, &pedalMap, true); // Below threshold, should return unadjusted throttle - engine->rpmCalculator.mockRpm = 1000; + Sensor::setMockValue(SensorType::Rpm, 1000); EXPECT_EQ(80, etb.getSetpoint().value_or(-1)); // At threshold, should return unadjusted throttle - engine->rpmCalculator.mockRpm = 5000; + Sensor::setMockValue(SensorType::Rpm, 5000); EXPECT_EQ(80, etb.getSetpoint().value_or(-1)); // Middle of range, should return half of unadjusted - engine->rpmCalculator.mockRpm = 5375; + Sensor::setMockValue(SensorType::Rpm, 5375); EXPECT_EQ(40, etb.getSetpoint().value_or(-1)); // At limit+range, should return 0 - engine->rpmCalculator.mockRpm = 5750; + Sensor::setMockValue(SensorType::Rpm, 5750); EXPECT_EQ(1, etb.getSetpoint().value_or(-1)); // Above limit+range, should return 0 - engine->rpmCalculator.mockRpm = 6000; + Sensor::setMockValue(SensorType::Rpm, 6000); EXPECT_EQ(1, etb.getSetpoint().value_or(-1)); }