Add true cranking enrichment (As opposed to ASE)
This commit is contained in:
parent
bd2fe2e660
commit
8523472e42
|
@ -22,6 +22,8 @@ byte correctionsTotal()
|
|||
if (currentStatus.wueCorrection != 100) { sumCorrections = div((sumCorrections * currentStatus.wueCorrection), 100).quot; }
|
||||
result = correctionASE();
|
||||
if (result != 100) { sumCorrections = div((sumCorrections * result), 100).quot; }
|
||||
result = correctionCranking();
|
||||
if (result != 100) { sumCorrections = div((sumCorrections * result), 100).quot; }
|
||||
currentStatus.TAEamount = correctionAccel();
|
||||
if (currentStatus.TAEamount != 100) { sumCorrections = div((sumCorrections * currentStatus.TAEamount), 100).quot; }
|
||||
result = correctionFloodClear();
|
||||
|
@ -44,6 +46,16 @@ byte correctionWUE()
|
|||
return table2D_getValue(WUETable, currentStatus.coolant + CALIBRATION_TEMPERATURE_OFFSET);
|
||||
}
|
||||
|
||||
/*
|
||||
Cranking Enrichment
|
||||
Additional fuel % to be added when the engine is cranking
|
||||
*/
|
||||
byte correctionCranking()
|
||||
{
|
||||
if ( BIT_CHECK(currentStatus.engine, BIT_ENGINE_CRANK) ) { return 100 + configPage1.crankingPct; }
|
||||
else { return 100; }
|
||||
}
|
||||
|
||||
/*
|
||||
After Start Enrichment
|
||||
This is a short period (Usually <20 seconds) immediately after the engine first fires (But not when cranking)
|
||||
|
@ -51,8 +63,10 @@ where an additional amount of fuel is added (Over and above the WUE amount)
|
|||
*/
|
||||
byte correctionASE()
|
||||
{
|
||||
|
||||
if (currentStatus.runSecs < configPage1.aseCount)
|
||||
//Two checks are requiredL:
|
||||
//1) Is the negine run time less than the configured ase time
|
||||
//2) Make sure we're not still cranking
|
||||
if ( (currentStatus.runSecs < configPage1.aseCount) && !(BIT_CHECK(currentStatus.engine, BIT_ENGINE_CRANK)) )
|
||||
{
|
||||
BIT_SET(currentStatus.engine, BIT_ENGINE_ASE); //Mark ASE as active.
|
||||
return 100 + configPage1.asePct;
|
||||
|
@ -60,8 +74,6 @@ byte correctionASE()
|
|||
|
||||
BIT_CLEAR(currentStatus.engine, BIT_ENGINE_ASE); //Mark ASE as inactive.
|
||||
return 100;
|
||||
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
@ -89,7 +89,10 @@ struct config1 {
|
|||
byte asePct; //Afterstart enrichment (%)
|
||||
byte aseCount; //Afterstart enrichment cycles. This is the number of ignition cycles that the afterstart enrichment % lasts for
|
||||
byte wueValues[10]; //Warm up enrichment array (10 bytes)
|
||||
byte taeBins[4]; //TPS based acceleration enrichment bin 1 of 4 (ms)
|
||||
byte crankingPct; //Cranking enrichment
|
||||
byte unused95;
|
||||
byte unused96;
|
||||
byte unused97;
|
||||
byte taeColdA;
|
||||
byte tpsThresh;
|
||||
byte taeTime;
|
||||
|
|
|
@ -90,7 +90,7 @@ page = 1
|
|||
asePct = scalar, U08, 82, "%", 1.0, 0.0, 0.0, 95.0, 0
|
||||
aseCount = scalar, U08, 83, "s", 1.0, 0.0, 0.0, 255, 0
|
||||
wueBins = array, U08, 84, [ 10], "%", 1.0, 0.0, 0.0, 255, 0
|
||||
unused94 = scalar, U08, 94, "ms", 0.1, 0.0, 0.0, 25.5, 1
|
||||
crankingPct= scalar, U08, 94, "%", 1.0, 0.0, 0.0, 255, 0
|
||||
unused95 = scalar, U08, 95, "ms", 0.1, 0.0, 0.0, 25.5, 1
|
||||
unused96 = scalar, U08, 96, "ms", 0.1, 0.0, 0.0, 25.5, 1
|
||||
unused97 = scalar, U08, 97, "ms", 0.1, 0.0, 0.0, 25.5, 1
|
||||
|
@ -427,8 +427,7 @@ page = 3
|
|||
field = "Pulsewidth at -40°C", crankCold
|
||||
field = "Pulsewidth at 77°C", crankHot
|
||||
field = ""
|
||||
field = "Cranking Enrichment %", asePct
|
||||
field = "Number of seconds to run", aseCount
|
||||
field = "Cranking Enrichment %", crankingPct
|
||||
#else
|
||||
field = "Cranking RPM (Max)", crankRPM
|
||||
field = "Flood Clear level", tpsflood
|
||||
|
@ -437,8 +436,7 @@ page = 3
|
|||
field = "Pulsewidth at -40°F", crankCold
|
||||
field = "Pulsewidth at 170°F", crankHot
|
||||
field = ""
|
||||
field = "Cranking Enrichment %", asePct
|
||||
field = "Number of seconds to run", aseCount
|
||||
field = "Cranking Enrichment %", crankingPct
|
||||
#endif
|
||||
|
||||
dialog = aseSettings, "Afterstart Enrichment"
|
||||
|
@ -775,7 +773,7 @@ help = helpEnrichments, "Enrichments Help"
|
|||
indicator = { mapaccaen }, "MAP Accel", "MAP Accel", white, black, green, black
|
||||
indicator = { tpsaccden }, "TPS Decel", "TPS Decel", white, black, green, black
|
||||
indicator = { mapaccden }, "MAP Decel", "MAP Decel", white, black, green, black
|
||||
indicator = { tps > tpsflood }, "FLOOD OFF", "FLOOD CLEAR", white, black, red, black
|
||||
indicator = { (tps > tpsflood) && (rpm < crankRPM) }, "FLOOD OFF", "FLOOD CLEAR", white, black, red, black
|
||||
;-------------------------------------------------------------------------------
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue