From f94aa7a7cd0cd89c7f957eb2f3b132254b9525e5 Mon Sep 17 00:00:00 2001 From: rusefillc Date: Mon, 2 Jan 2023 17:46:26 -0500 Subject: [PATCH] https://rusefi.com/forum/viewtopic.php?f=2&t=2484 luaIgnCut --- firmware/controllers/algo/engine.cpp | 2 ++ firmware/controllers/algo/engine_state.txt | 1 + firmware/controllers/limp_manager.h | 1 + firmware/tunerstudio/rusefi.input | 2 +- 4 files changed, 5 insertions(+), 1 deletion(-) diff --git a/firmware/controllers/algo/engine.cpp b/firmware/controllers/algo/engine.cpp index ddebf35cfe..09e7e27a80 100644 --- a/firmware/controllers/algo/engine.cpp +++ b/firmware/controllers/algo/engine.cpp @@ -285,6 +285,8 @@ void Engine::resetLua() { engineState.lua = {}; engineState.lua.fuelAdd = 0; engineState.lua.fuelMult = 1; + engineState.lua.luaDisableEtb = false; + engineState.lua.luaIgnCut = false; #if EFI_BOOST_CONTROL boostController.resetLua(); #endif // EFI_BOOST_CONTROL diff --git a/firmware/controllers/algo/engine_state.txt b/firmware/controllers/algo/engine_state.txt index ce1484bc2c..0df7895b4f 100644 --- a/firmware/controllers/algo/engine_state.txt +++ b/firmware/controllers/algo/engine_state.txt @@ -10,6 +10,7 @@ struct LuaAdjustments bit brakePedalState bit acRequestState bit luaDisableEtb + bit luaIgnCut end_struct diff --git a/firmware/controllers/limp_manager.h b/firmware/controllers/limp_manager.h index df44e50275..81a6688704 100644 --- a/firmware/controllers/limp_manager.h +++ b/firmware/controllers/limp_manager.h @@ -21,6 +21,7 @@ enum class ClearReason : uint8_t { EnginePhase, // 12 KickStart, // 13 IgnitionOff, // 14 + Lua, // Keep this list in sync with fuelIgnCutCodeList in rusefi.input! // todo: add a code generator between ClearReason and fuelIgnCutCodeList in rusefi.input diff --git a/firmware/tunerstudio/rusefi.input b/firmware/tunerstudio/rusefi.input index 2506427d90..d435d65910 100644 --- a/firmware/tunerstudio/rusefi.input +++ b/firmware/tunerstudio/rusefi.input @@ -245,7 +245,7 @@ enable2ndByteCanID = false wboFaultCodeList = bits, U08, [0:3], "OK", "Unk", "Unk", "failed to heat", "overheat", "underheat", "no supply" ; ClearReason - fuelIgnCutCodeList = bits, U08, [0:7], "None", "fatal error", "setting disabled", "RPM limit", "fault RPM limit", "boost cut", "oil pressure", "stop requested", "ETB problem", "launch control", "max injector duty", "flood clear", "engine sync", "kickstart", "ign off" + fuelIgnCutCodeList = bits, U08, [0:7], "None", "fatal error", "setting disabled", "RPM limit", "fault RPM limit", "boost cut", "oil pressure", "stop requested", "ETB problem", "launch control", "max injector duty", "flood clear", "engine sync", "kickstart", "ign off", "Lua" ; TpsState etbCutCodeList = bits, U08, [0:7], "None", "engine stopped", "TPS error", "PPS error", "TPS noise", "PID noise", "Lua", "Manual", "N/A", "Redundancy", "PPS noise"