diff --git a/firmware/controllers/math/engine_math.cpp b/firmware/controllers/math/engine_math.cpp index 4ff774e8af..efd8a49acd 100644 --- a/firmware/controllers/math/engine_math.cpp +++ b/firmware/controllers/math/engine_math.cpp @@ -387,17 +387,36 @@ void prepareOutputSignals(DECLARE_ENGINE_PARAMETER_F) { // dwell at cranking is constant angle or constant time, dwell at cranking threshold is the highest angle duration // lower RPM angle duration goes up - angle_t maxCrankingDwellAngle = crankingDwell / getOneDegreeTimeMs(CONFIG(cranking.rpm)); + angle_t maxDwellAngle = crankingDwell / getOneDegreeTimeMs(CONFIG(cranking.rpm)); - printf("cranking angle %f\r\n", maxCrankingDwellAngle); + printf("cranking angle %f\r\n", maxDwellAngle); for (int i = 0;isparkDwellBins[i]; floatms_t dwell = engineConfiguration->sparkDwell[i]; angle_t dwellAngle = dwell / getOneDegreeTimeMs(rpm); printf("dwell angle %f at %d\r\n", dwellAngle, rpm); + maxDwellAngle = maxF(maxDwellAngle, dwellAngle); } + angle_t maxIatAdvanceCorr = -720; + for (int r = 0;rignitionIatCorrTable[l][r]); + } + } + + angle_t maxAdvance = -720; + for (int r = 0;rignitionTable[l][r]); + } + } + + + printf("max dwell angle %f/%d/%d\r\n", maxDwellAngle, (int)maxAdvance, (int)maxIatAdvanceCorr); + + #endif