ETB Autotune not working fix #7216

This commit is contained in:
rusefillc 2025-01-06 00:22:10 -05:00
parent e5f88ec6aa
commit c71082fc72
1 changed files with 6 additions and 3 deletions

View File

@ -4,24 +4,27 @@
#include "ignition_controller.h"
void MainRelayController::onSlowCallback() {
#if EFI_MAIN_RELAY_CONTROL
#if defined(IGN_KEY_DIVIDER)
if (isAdcChannelValid(engineConfiguration->ignKeyAdcChannel)) {
hasIgnitionVoltage = isIgnVoltage();
} else
#endif // IGN_KEY_DIVIDER
#if EFI_PROD_CODE
if (engineConfiguration->ignitionKeyDigitalPin != Gpio::Unassigned) {
// separate digital input pin just for main relay logic since it's preferred to read voltage from main relay
// key-on is usually a bit smaller voltage than main relay but sometimes even 1v off!
hasIgnitionVoltage = efiReadPin(engineConfiguration->ignitionKeyDigitalPin);
} else {
} else
#endif // EFI_PROD_CODE
{
hasIgnitionVoltage = isIgnVoltage();
}
}
if (hasIgnitionVoltage) {
m_lastIgnitionTime.reset();
}
#if EFI_MAIN_RELAY_CONTROL
// Query whether any engine modules want to keep the lights on
delayedShutoffRequested = engine->engineModules.aggregate([](auto& m, bool prev) { return m.needsDelayedShutoff() | prev; }, false);