Auto-generated default tune

This commit is contained in:
GitHub gen-default-tune Action 2024-03-06 16:50:22 +00:00
parent bf68919fd6
commit fb3f26b7da
8 changed files with 2290 additions and 0 deletions

View File

@ -0,0 +1,320 @@
# MazdaMiataNB2-comparing-against-current-MazdaMiataNB2-default
// canned tune https://rusefi.com/online/view.php?msq=985
```
// default 0.9
engineConfiguration->tChargeMaxRpmMaxTps = 0.900002;
// default 1.0
engineConfiguration->tChargeAirIncrLimit = 15;
// default 0.098
engineConfiguration->tChargeAirCoefMin = 0.0980001;
// default 0.902
engineConfiguration->tChargeAirCoefMax = 0.902;
// default 153.6
engineConfiguration->tChargeAirFlowMax = 165;
// default 0.0
engineConfiguration->fixedTiming = 10;
// default 1.839
engineConfiguration->displacement = 1.838997;
// default 9.0
engineConfiguration->compressionRatio = 10;
// default "Miata NB"
engineConfiguration->trigger.type = TT_TOOTHED_WHEEL_36_1;
// default 0.0
engineConfiguration->globalTriggerAngleOffset = 76;
// default 98.0
engineConfiguration->vvtOffsets[0] = 76;
// default "false"
engineConfiguration->displayLogicLevelsInEngineSniffer = true;
// default 0.0
engineConfiguration->cylinderBankSelect[0] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[1] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[2] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[3] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[4] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[5] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[6] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[7] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[8] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[9] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[10] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[11] = 1;
// default 0.0
engineConfiguration->injectorCorrectionPolynomial[4] = 8.2652E-39;
// default 4.0
engineConfiguration->benchTestOnTime = 0;
// default 110.0
engineConfiguration->tpsMin = 107;
// default 650.0
engineConfiguration->tpsMax = 739;
// default 1000.0
engineConfiguration->tps1SecondaryMin = 0;
// default 0.0
engineConfiguration->tps1SecondaryMax = 1000;
// default 1000.0
engineConfiguration->tps2SecondaryMin = 0;
// default 0.0
engineConfiguration->tps2SecondaryMax = 1000;
// default 5.0
engineConfiguration->throttlePedalSecondaryUpVoltage = 0;
// default 0.0
engineConfiguration->throttlePedalSecondaryWOTVoltage = 5;
// default 65.0
engineConfiguration->mc33_hvolt = 0;
// default 13000.0
engineConfiguration->mc33_i_boost = 0;
// default 400.0
engineConfiguration->mc33_t_max_boost = 0;
// default 9400.0
engineConfiguration->mc33_i_peak = 0;
// default 700.0
engineConfiguration->mc33_t_peak_tot = 0;
// default 10.0
engineConfiguration->mc33_t_peak_off = 0;
// default 10.0
engineConfiguration->mc33_t_bypass = 0;
// default 3700.0
engineConfiguration->mc33_i_hold = 0;
// default 60.0
engineConfiguration->mc33_t_hold_off = 0;
// default 10000.0
engineConfiguration->mc33_t_hold_tot = 0;
// default "false"
engineConfiguration->clutchDownPinInverted = true;
// default 1.0
engineConfiguration->turboSpeedSensorMultiplier = 0;
// default 689.476
engineConfiguration->oilPressure.value2 = 689.4766;
// default 410.0
engineConfiguration->mapErrorDetectionTooHigh = 250;
// default "14Point7"
engineConfiguration->afr_type = ES_Custom;
// default 0.0
engineConfiguration->afr.v1 = 1;
// default 9.996
engineConfiguration->afr.value1 = 8.099976;
// default 5.0
engineConfiguration->afr.v2 = 4;
// default 19.992
engineConfiguration->afr.value2 = 17.8;
// default 0.0
engineConfiguration->egoValueShift = -0.200001;
// default 300.0
engineConfiguration->idle.solenoidFrequency = 500;
// default 3.0
engineConfiguration->idleStepperReactionTime = 0;
// default 200.0
engineConfiguration->idleStepperTotalSteps = 0;
// default "true"
engineConfiguration->stepperForceParkingEveryRestart = false;
// default 15.0
engineConfiguration->etbIdleThrottleRange = 5;
// default 0.0065
engineConfiguration->idleRpmPid.pFactor = 0.00649999;
// default 0.3
engineConfiguration->idleRpmPid.iFactor = 0.03;
// default 10.0
engineConfiguration->idleRpmPid.maxValue = 76;
// default 2.0
engineConfiguration->fan1ExtraIdle = 0;
// default 2.0
engineConfiguration->fan2ExtraIdle = 0;
// default 6.0
engineConfiguration->iacByTpsTaper = 5;
// default 5.0
engineConfiguration->idlePidDeactivationTpsThreshold = 1;
// default 100.0
engineConfiguration->idlePidRpmDeadZone = 65;
// default "false"
engineConfiguration->useSeparateAdvanceForIdle = true;
// default "false"
engineConfiguration->useSeparateVeForIdle = true;
// default 0.1
engineConfiguration->idleTimingPid.pFactor = 0.01;
// default 10.0
engineConfiguration->idleTimingPid.maxValue = 12;
// default 95.0
engineConfiguration->fanOnTemperature = 97;
// default 91.0
engineConfiguration->fanOffTemperature = 94;
// default 95.0
engineConfiguration->fan2OnTemperature = 99;
// default 91.0
engineConfiguration->fan2OffTemperature = 94;
// default "false"
engineConfiguration->enableFan2WithAc = true;
// default 5000.0
engineConfiguration->maxAcRpm = 5200;
// default 75.0
engineConfiguration->maxAcTps = 70;
// default 0.0
engineConfiguration->warningPeriod = 10;
// default "false"
engineConfiguration->enableSoftwareKnock = true;
// default 13.8
engineConfiguration->knockBandCustom = 13.80627;
// default 20.0
engineConfiguration->knockRetardAggression = 0;
// default 3.0
engineConfiguration->knockRetardReapplyRate = 0;
// default 35.0
engineConfiguration->stft.maxOverrunLoad = 30;
// default "false"
engineConfiguration->fuelClosedLoopCorrectionEnabled = true;
// default 60.0
engineConfiguration->stft.startupDelay = 25;
// default 60.0
engineConfiguration->stft.minClt = 80;
// default 12.0
engineConfiguration->stft.minAfr = 10.5;
// default 17.0
engineConfiguration->stft.maxAfr = 18;
// default 0.5
engineConfiguration->stft.deadband = 0;
// default 90.0
engineConfiguration->auxPid[1].maxValue = 0;
// default 14.0
engineConfiguration->targetVBatt = 14.19995;
// default 3.0
engineConfiguration->vssFilterReciprocal = 5;
// default 538.0
engineConfiguration->driveWheelRevPerKm = 570;
// default 1.117
engineConfiguration->vssGearRatio = 4.1;
// default 4.0
engineConfiguration->vssToothCount = 1;
// default "BMW_e46"
engineConfiguration->canVssNbcType = W202;
// default 3.91
engineConfiguration->finalGearRatio = 4.1;
// default 6.0
engineConfiguration->totalGearsCount = 5;
// default 3.76
engineConfiguration->gearRatio[0] = 3.14;
// default 2.27
engineConfiguration->gearRatio[1] = 1.89;
// default 1.65
engineConfiguration->gearRatio[2] = 1.33;
// default 1.26
engineConfiguration->gearRatio[3] = 1;
// default 1.0
engineConfiguration->gearRatio[4] = 0.81;
// default 0.84
engineConfiguration->gearRatio[5] = 0;
// default "500kbps"
engineConfiguration->can2BaudRate = B100KBPS;
// default "MAP"
engineConfiguration->debugMode = DBG_TPS_ACCEL;
// default 300.0
engineConfiguration->boostCutPressure = 0;
// default 250.0
engineConfiguration->etbRevLimitRange = 0;
// default 60.0
engineConfiguration->crankingIACposition = 33;
// default 250.0
engineConfiguration->afterCrankingIACtaperDuration = 189;
// default "false"
engineConfiguration->overrideCrankingIacSetting = true;
// default 0.5
engineConfiguration->primingDelay = 0;
// default "true"
engineConfiguration->isFasterEngineSpinUpEnabled = false;
// default 0.0
engineConfiguration->tpsAccelLookback = 0.2;
// default 40.0
engineConfiguration->tpsAccelEnrichmentThreshold = 4;
// default 0.1
engineConfiguration->wwaeTau = 0.15;
// default 0.0
engineConfiguration->scriptSetting[0] = 5000;
// default 2.0
engineConfiguration->issFilterReciprocal = 0;
// default 1.0
engineConfiguration->tcuInputSpeedSensorTeeth = 0;
// default 0.3
engineConfiguration->boostPid.iFactor = 0.299999;
// default 0.05
engineConfiguration->etb.dFactor = 0.05;
// default 100.0
engineConfiguration->etbMaximumPosition = 0;
// default 400.0
engineConfiguration->engineChartSize = 300;
// default "Launch Button"
engineConfiguration->launchActivationMode = CLUTCH_INPUT_LAUNCH;
// default 30.0
engineConfiguration->launchSpeedThreshold = 1;
// default 3000.0
engineConfiguration->launchRpm = 3500;
// default 500.0
engineConfiguration->launchTimingRpmRange = 100;
// default 500.0
engineConfiguration->hardCutRpmRange = 100;
// default "false"
engineConfiguration->enableLaunchRetard = true;
// default 0.0
engineConfiguration->launchTimingRetard = -40;
// default "false"
engineConfiguration->launchSmoothRetard = true;
// default "false"
engineConfiguration->launchSparkCutEnable = true;
// default "Switch Input"
engineConfiguration->antiLagActivationMode = ALWAYS_ON_ANTILAG;
// default 1500.0
engineConfiguration->coastingFuelCutRpmHigh = 2250;
// default 1300.0
engineConfiguration->coastingFuelCutRpmLow = 1400;
// default 2.0
engineConfiguration->coastingFuelCutTps = 1;
// default "Zero"
engineConfiguration->gppwm[0].loadAxis = GPPWM_Tps;
// default "Zero"
engineConfiguration->gppwm[1].loadAxis = GPPWM_Tps;
// default "Zero"
engineConfiguration->gppwm[2].loadAxis = GPPWM_Tps;
// default "Zero"
engineConfiguration->gppwm[3].loadAxis = GPPWM_Tps;
// default 3.0
engineConfiguration->hpfpCamLobes = 0;
// default 10.0
engineConfiguration->hpfpPeakPos = 0;
// default 0.29
engineConfiguration->hpfpPumpVolume = 0;
// default 10.0
engineConfiguration->hpfpMinAngle = 0;
// default 30.0
engineConfiguration->hpfpActivationAngle = 0;
// default 2000.0
engineConfiguration->hpfpTargetDecay = 0;
// default 0.01
engineConfiguration->hpfpPidP = 0;
// default 3.0E-4
engineConfiguration->hpfpPidI = 0;
cannedtpsTpsAccelTable();
cannedboostTableOpenLoop();
cannedboostTableClosedLoop();
cannedvvtTable1();
cannedscriptTable4();
cannedignitionTable();
cannedignitionIatCorrTable();
cannedveTable();
cannedidleVeTable();
cannedmapEstimateTable();
cannedinjectionPhase();
cannedlambdaTable();
cannedtcuSolenoidTable();
cannedpostCrankingFactor();
```

View File

@ -0,0 +1,228 @@
static void cannedtpsTpsAccelTable() {
static const float hardCodedtpsTpsAccelTable[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{1.484, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{1.822, 1.649, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{2.103, 2.024, 1.653, 0.000, 0.000, 0.000, 0.000, 0.000, },
{2.257, 2.337, 2.024, 1.649, 0.000, 0.000, 0.000, 0.000, },
{2.380, 2.508, 2.337, 2.024, 1.649, 0.000, 0.000, 0.000, },
{2.467, 2.645, 2.508, 2.337, 2.024, 1.649, 0.000, 0.000, },
{2.586, 2.467, 2.380, 2.257, 2.103, 1.822, 1.484, 0.000, },
};
copyTable(config->tpsTpsAccelTable, hardCodedtpsTpsAccelTable);
}
static void cannedboostTableOpenLoop() {
static const float hardCodedboostTableOpenLoop[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, },
{28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, },
{42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, },
{58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, },
{72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, },
{86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, },
{100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, },
};
copyTable(config->boostTableOpenLoop, hardCodedboostTableOpenLoop);
}
static void cannedboostTableClosedLoop() {
static const float hardCodedboostTableClosedLoop[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, },
{28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, },
{42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, },
{58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, },
{72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, },
{86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, },
{100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, },
};
copyTable(config->boostTableClosedLoop, hardCodedboostTableClosedLoop);
}
static void cannedvvtTable1() {
static const float hardCodedvvtTable1[8][8] = {
{0.000, 0.000, 10.000, 10.000, 10.000, 10.000, 0.000, 0.000, },
{0.000, 0.000, 15.000, 15.000, 15.000, 15.000, 0.000, 0.000, },
{0.000, 0.000, 20.000, 20.000, 20.000, 18.000, 12.000, 8.000, },
{6.000, 12.000, 30.000, 25.000, 25.000, 15.000, 12.000, 8.000, },
{6.000, 12.000, 30.000, 25.000, 25.000, 15.000, 12.000, 8.000, },
{6.000, 12.000, 30.000, 25.000, 25.000, 15.000, 12.000, 8.000, },
{6.000, 12.000, 30.000, 25.000, 25.000, 15.000, 12.000, 8.000, },
{6.000, 12.000, 30.000, 25.000, 25.000, 15.000, 12.000, 8.000, },
};
copyTable(config->vvtTable1, hardCodedvvtTable1);
}
static void cannedscriptTable4() {
static const float hardCodedscriptTable4[8][10] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(config->scriptTable4, hardCodedscriptTable4);
}
static void cannedignitionTable() {
static const float hardCodedignitionTable[16][16] = {
{16.000, 16.000, 16.000, 16.000, 16.000, 16.000, 15.000, 6.100, -3.000, -3.000, -3.000, -3.000, -2.000, -2.000, -2.000, -2.000, },
{16.000, 10.000, 10.000, 20.000, 24.000, 24.000, 24.000, 26.700, 30.000, 30.000, 30.000, 30.000, 30.000, 30.000, 30.000, 30.000, },
{16.000, 10.000, 10.000, 20.000, 26.700, 26.400, 28.500, 31.200, 32.000, 32.700, 33.000, 33.300, 33.900, 34.100, 34.300, 35.700, },
{16.800, 18.900, 20.100, 22.400, 27.000, 27.000, 29.100, 32.700, 32.000, 32.800, 33.700, 33.100, 34.200, 35.900, 37.300, 37.800, },
{16.800, 18.900, 20.500, 23.700, 25.800, 28.500, 30.600, 31.500, 32.000, 32.800, 32.900, 33.400, 34.400, 35.600, 35.600, 35.900, },
{15.800, 15.800, 17.700, 21.700, 26.200, 28.600, 30.800, 33.100, 31.200, 31.500, 31.900, 32.400, 32.800, 33.700, 33.800, 34.100, },
{15.800, 15.800, 17.100, 19.700, 25.300, 26.800, 29.000, 31.400, 30.000, 31.000, 31.100, 31.200, 31.500, 32.100, 32.500, 33.000, },
{15.800, 15.800, 16.500, 17.900, 23.800, 25.100, 26.700, 29.000, 27.900, 29.000, 29.000, 29.100, 29.400, 30.000, 30.400, 31.200, },
{15.800, 15.800, 16.100, 16.800, 23.000, 24.200, 25.600, 26.000, 26.800, 27.900, 27.900, 28.100, 28.400, 29.000, 29.400, 30.300, },
{15.000, 15.000, 15.400, 16.100, 16.600, 17.900, 19.000, 21.100, 22.400, 23.100, 23.400, 23.900, 24.200, 24.800, 25.200, 26.000, },
{15.000, 15.000, 15.000, 12.700, 14.800, 15.800, 16.900, 18.800, 20.100, 20.800, 21.100, 21.600, 22.000, 22.700, 23.100, 24.000, },
{6.500, 7.600, 9.000, 11.300, 12.900, 13.700, 14.700, 16.400, 17.800, 18.500, 18.900, 19.400, 19.900, 20.600, 21.000, 21.900, },
{5.900, 6.700, 7.800, 9.800, 11.000, 11.700, 12.600, 14.000, 15.500, 16.200, 16.600, 17.200, 17.700, 18.600, 19.000, 19.900, },
{5.300, 5.800, 6.700, 8.400, 9.200, 9.600, 10.400, 11.700, 13.200, 13.900, 14.300, 15.000, 15.500, 16.500, 16.900, 17.800, },
{4.800, 5.100, 5.800, 7.300, 7.800, 8.100, 8.800, 9.900, 11.500, 12.200, 12.600, 13.300, 13.900, 15.000, 15.300, 16.300, },
{4.400, 4.400, 4.900, 6.200, 6.400, 6.500, 7.200, 8.100, 9.700, 10.400, 10.800, 11.600, 12.300, 13.400, 13.800, 14.700, },
};
copyTable(config->ignitionTable, hardCodedignitionTable);
}
static void cannedignitionIatCorrTable() {
static const float hardCodedignitionIatCorrTable[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(config->ignitionIatCorrTable, hardCodedignitionIatCorrTable);
}
static void cannedveTable() {
static const float hardCodedveTable[16][16] = {
{13.500, 22.000, 22.000, 19.700, 19.000, 19.000, 19.000, 21.000, 24.000, 24.000, 24.000, 23.500, 22.500, 22.800, 22.800, 22.200, },
{40.000, 46.200, 37.700, 38.000, 48.000, 45.200, 43.100, 42.500, 35.400, 40.900, 45.300, 45.800, 37.600, 38.500, 36.300, 38.100, },
{42.000, 40.200, 44.800, 41.100, 48.700, 44.700, 49.200, 47.400, 48.500, 57.200, 64.600, 73.700, 68.200, 60.000, 58.300, 56.500, },
{41.400, 42.200, 45.600, 45.900, 51.900, 47.100, 50.800, 46.300, 48.700, 54.900, 68.600, 72.500, 72.800, 63.000, 61.400, 59.800, },
{43.200, 44.800, 50.400, 52.800, 52.700, 48.800, 52.000, 50.700, 48.700, 54.700, 72.300, 71.400, 68.400, 66.000, 63.100, 60.100, },
{49.500, 49.900, 52.600, 56.700, 52.500, 50.400, 54.500, 50.100, 47.600, 58.000, 74.100, 72.700, 70.300, 66.100, 64.200, 62.300, },
{55.500, 56.400, 56.000, 57.100, 54.100, 52.000, 56.600, 48.000, 47.300, 58.000, 72.200, 74.300, 73.900, 70.600, 67.200, 63.800, },
{60.900, 63.500, 61.400, 52.900, 55.600, 56.700, 59.400, 50.700, 49.200, 61.400, 77.300, 80.000, 74.300, 72.200, 67.900, 63.500, },
{72.200, 69.200, 62.800, 56.500, 59.100, 61.600, 60.300, 52.700, 51.600, 68.200, 79.900, 77.900, 72.300, 68.600, 65.700, 63.100, },
{74.500, 78.300, 69.800, 62.200, 61.200, 64.700, 64.900, 55.100, 57.400, 74.400, 81.900, 79.200, 77.100, 75.400, 67.900, 65.900, },
{83.500, 79.600, 76.100, 65.300, 65.300, 65.300, 65.200, 64.000, 62.500, 76.600, 81.800, 82.500, 76.700, 77.300, 70.800, 69.300, },
{73.000, 82.900, 88.000, 63.300, 62.900, 62.700, 66.300, 61.200, 66.400, 78.800, 80.000, 78.900, 75.200, 76.400, 72.700, 67.400, },
{73.400, 78.700, 87.800, 66.600, 64.700, 67.300, 66.600, 61.700, 67.800, 78.100, 82.300, 83.000, 82.000, 81.400, 80.500, 78.200, },
{69.700, 83.700, 76.900, 62.400, 65.100, 68.100, 65.600, 62.400, 68.700, 76.400, 83.000, 84.500, 83.200, 82.500, 81.300, 77.700, },
{75.400, 81.100, 78.300, 71.600, 71.800, 72.700, 70.000, 70.100, 70.700, 76.400, 89.300, 90.000, 89.300, 82.500, 77.700, 72.900, },
{78.000, 78.200, 78.700, 74.000, 73.300, 71.000, 71.300, 70.700, 73.000, 86.400, 89.000, 86.900, 86.300, 83.600, 80.300, 78.400, },
};
copyTable(config->veTable, hardCodedveTable);
}
static void cannedidleVeTable() {
static const float hardCodedidleVeTable[4][4] = {
{41.000, 41.000, 41.000, 43.000, },
{42.000, 40.000, 40.000, 43.300, },
{42.000, 40.000, 45.000, 47.000, },
{47.000, 45.000, 47.000, 47.000, },
};
copyTable(config->idleVeTable, hardCodedidleVeTable);
}
static void cannedmapEstimateTable() {
static const float hardCodedmapEstimateTable[16][16] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(config->mapEstimateTable, hardCodedmapEstimateTable);
}
static void cannedinjectionPhase() {
static const float hardCodedinjectionPhase[16][16] = {
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
};
copyTable(config->injectionPhase, hardCodedinjectionPhase);
}
static void cannedlambdaTable() {
static const float hardCodedlambdaTable[16][16] = {
{14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 15.400, 15.400, 15.400, 15.400, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, },
{14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 15.400, 15.400, 15.400, 15.400, 14.500, 14.200, 14.200, 14.200, 14.200, 14.200, },
{14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 15.400, 15.400, 15.400, 15.400, 14.500, 14.200, 14.200, 14.200, 14.200, 14.200, },
{14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 15.000, 15.000, 15.000, 15.000, 14.500, 14.200, 14.200, 14.200, 14.200, 14.200, },
{14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.000, 14.000, 14.000, 14.000, 14.000, },
{14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, },
{14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, },
{13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.600, 13.600, 13.600, 13.600, 13.600, 13.600, },
{13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.600, 13.600, 13.600, 13.600, 13.600, 13.600, },
{13.700, 13.700, 13.700, 13.700, 13.700, 13.700, 13.700, 13.700, 13.700, 13.700, 13.400, 13.400, 13.400, 13.400, 13.400, 13.400, },
{13.500, 13.500, 13.500, 13.500, 13.500, 13.500, 13.500, 13.500, 13.500, 13.500, 13.200, 13.200, 13.200, 13.200, 13.200, 13.200, },
{13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, },
{12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, },
{12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, },
{11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, },
{11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, },
};
copyTable(config->lambdaTable, hardCodedlambdaTable);
}
static void cannedtcuSolenoidTable() {
static const float hardCodedtcuSolenoidTable[6][10] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(config->tcuSolenoidTable, hardCodedtcuSolenoidTable);
}
static void cannedpostCrankingFactor() {
static const float hardCodedpostCrankingFactor[6][6] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(engineConfiguration->postCrankingFactor, hardCodedpostCrankingFactor);
}

View File

@ -0,0 +1,376 @@
# MazdaMiataNB2-comparing-against-global-defaults
// canned tune https://rusefi.com/online/view.php?msq=985
```
// default 0.9
engineConfiguration->tChargeMaxRpmMaxTps = 0.900002;
// default 1.0
engineConfiguration->tChargeAirIncrLimit = 15;
// default 0.098
engineConfiguration->tChargeAirCoefMin = 0.0980001;
// default 0.902
engineConfiguration->tChargeAirCoefMax = 0.902;
// default 153.6
engineConfiguration->tChargeAirFlowMax = 165;
// default "Single Coil"
engineConfiguration->ignitionMode = IM_WASTED_SPARK;
// default 0.0
engineConfiguration->fixedTiming = 10;
// default 2.0
engineConfiguration->displacement = 1.838997;
// default 0.0
engineConfiguration->vehicleWeight = 1070;
// default 9.0
engineConfiguration->compressionRatio = 10;
// default "60/2"
engineConfiguration->trigger.type = TT_TOOTHED_WHEEL_36_1;
// default 0.0
engineConfiguration->globalTriggerAngleOffset = 76;
// default "Single Tooth"
engineConfiguration->vvtMode[0] = VVT_MIATA_NB;
// default 450.0
engineConfiguration->vvtOffsets[0] = 76;
// default "false"
engineConfiguration->displayLogicLevelsInEngineSniffer = true;
// default 200.0
engineConfiguration->injector.flow = 265;
// default "None"
engineConfiguration->injectorCompensationMode = ICM_FixedRailPressure;
// default 300.0
engineConfiguration->fuelReferencePressure = 400;
// default 0.0
engineConfiguration->cylinderBankSelect[0] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[1] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[2] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[3] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[4] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[5] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[6] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[7] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[8] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[9] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[10] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[11] = 1;
// default 0.0
engineConfiguration->injectorCorrectionPolynomial[4] = 8.2652E-39;
// default 4.0
engineConfiguration->benchTestOnTime = 0;
// default 0.0
engineConfiguration->tpsMin = 107;
// default 1000.0
engineConfiguration->tpsMax = 739;
// default 1000.0
engineConfiguration->tps1SecondaryMin = 0;
// default 0.0
engineConfiguration->tps1SecondaryMax = 1000;
// default 1000.0
engineConfiguration->tps2SecondaryMin = 0;
// default 0.0
engineConfiguration->tps2SecondaryMax = 1000;
// default 5.0
engineConfiguration->throttlePedalSecondaryUpVoltage = 0;
// default 0.0
engineConfiguration->throttlePedalSecondaryWOTVoltage = 5;
// default 65.0
engineConfiguration->mc33_hvolt = 0;
// default 13000.0
engineConfiguration->mc33_i_boost = 0;
// default 400.0
engineConfiguration->mc33_t_max_boost = 0;
// default 9400.0
engineConfiguration->mc33_i_peak = 0;
// default 700.0
engineConfiguration->mc33_t_peak_tot = 0;
// default 10.0
engineConfiguration->mc33_t_peak_off = 0;
// default 10.0
engineConfiguration->mc33_t_bypass = 0;
// default 3700.0
engineConfiguration->mc33_i_hold = 0;
// default 60.0
engineConfiguration->mc33_t_hold_off = 0;
// default 10000.0
engineConfiguration->mc33_t_hold_tot = 0;
// default "false"
engineConfiguration->clutchDownPinInverted = true;
// default 1.0
engineConfiguration->turboSpeedSensorMultiplier = 0;
// default 689.476
engineConfiguration->oilPressure.value2 = 689.4766;
// default 410.0
engineConfiguration->mapErrorDetectionTooHigh = 250;
// default "14Point7"
engineConfiguration->afr_type = ES_Custom;
// default 0.0
engineConfiguration->afr.v1 = 1;
// default 9.996
engineConfiguration->afr.value1 = 8.099976;
// default 5.0
engineConfiguration->afr.v2 = 4;
// default 19.992
engineConfiguration->afr.value2 = 17.8;
// default 0.0
engineConfiguration->egoValueShift = -0.200001;
// default 300.0
engineConfiguration->idle.solenoidFrequency = 500;
// default 3.0
engineConfiguration->idleStepperReactionTime = 0;
// default 200.0
engineConfiguration->idleStepperTotalSteps = 0;
// default "true"
engineConfiguration->stepperForceParkingEveryRestart = false;
// default 15.0
engineConfiguration->etbIdleThrottleRange = 5;
// default 0.05
engineConfiguration->idleRpmPid.pFactor = 0.00649999;
// default 0.002
engineConfiguration->idleRpmPid.iFactor = 0.03;
// default 0.0
engineConfiguration->idle_derivativeFilterLoss = 0.08;
// default 0.0
engineConfiguration->idle_antiwindupFreq = 0.03;
// default 0.0
engineConfiguration->idleRpmPid.dFactor = 0.002;
// default -20.0
engineConfiguration->idleRpmPid.minValue = -8;
// default 20.0
engineConfiguration->idleRpmPid.maxValue = 76;
// default -20.0
engineConfiguration->idlerpmpid_iTermMin = -15;
// default 20.0
engineConfiguration->idlerpmpid_iTermMax = 30;
// default 2.0
engineConfiguration->fan1ExtraIdle = 0;
// default 2.0
engineConfiguration->fan2ExtraIdle = 0;
// default 2.0
engineConfiguration->iacByTpsTaper = 5;
// default 5.0
engineConfiguration->idlePidDeactivationTpsThreshold = 1;
// default 300.0
engineConfiguration->idlePidRpmUpperLimit = 350;
// default 50.0
engineConfiguration->idlePidRpmDeadZone = 65;
// default "false"
engineConfiguration->useSeparateAdvanceForIdle = true;
// default "false"
engineConfiguration->useSeparateVeForIdle = true;
// default "Open Loop"
engineConfiguration->idleMode = IM_AUTO;
// default "false"
engineConfiguration->useIdleTimingPidControl = true;
// default 0.1
engineConfiguration->idleTimingPid.pFactor = 0.01;
// default 10.0
engineConfiguration->idleTimingPid.maxValue = 12;
// default 95.0
engineConfiguration->fanOnTemperature = 97;
// default 91.0
engineConfiguration->fanOffTemperature = 94;
// default "false"
engineConfiguration->enableFan1WithAc = true;
// default 95.0
engineConfiguration->fan2OnTemperature = 99;
// default 91.0
engineConfiguration->fan2OffTemperature = 94;
// default "false"
engineConfiguration->enableFan2WithAc = true;
// default 5000.0
engineConfiguration->maxAcRpm = 5200;
// default 75.0
engineConfiguration->maxAcTps = 70;
// default 0.0
engineConfiguration->warningPeriod = 10;
// default 1.0
engineConfiguration->tachPulsePerRev = 2;
// default "false"
engineConfiguration->enableSoftwareKnock = true;
// default 87.5
engineConfiguration->cylinderBore = 83;
// default 0.0
engineConfiguration->knockBandCustom = 13.80627;
// default 20.0
engineConfiguration->knockRetardAggression = 0;
// default 3.0
engineConfiguration->knockRetardReapplyRate = 0;
// default 35.0
engineConfiguration->stft.maxOverrunLoad = 30;
// default "false"
engineConfiguration->fuelClosedLoopCorrectionEnabled = true;
// default 60.0
engineConfiguration->stft.startupDelay = 25;
// default 60.0
engineConfiguration->stft.minClt = 80;
// default 12.0
engineConfiguration->stft.minAfr = 10.5;
// default 17.0
engineConfiguration->stft.maxAfr = 18;
// default 0.5
engineConfiguration->stft.deadband = 0;
// default 0.0
engineConfiguration->auxPid[0].dFactor = 0.002;
// default 10.0
engineConfiguration->auxPid[0].minValue = 20;
// default 90.0
engineConfiguration->auxPid[1].maxValue = 0;
// default "false"
engineConfiguration->isAlternatorControlEnabled = true;
// default 14.0
engineConfiguration->targetVBatt = 14.19995;
// default 0.0
engineConfiguration->alternatorControl.offset = 20;
// default 30.0
engineConfiguration->alternatorControl.pFactor = 16;
// default 0.0
engineConfiguration->alternatorControl.iFactor = 8;
// default 0.0
engineConfiguration->alternatorControl.dFactor = 0.1;
// default 3.0
engineConfiguration->vssFilterReciprocal = 5;
// default 1000.0
engineConfiguration->driveWheelRevPerKm = 570;
// default 3.73
engineConfiguration->vssGearRatio = 4.1;
// default 21.0
engineConfiguration->vssToothCount = 1;
// default "BMW_e46"
engineConfiguration->canVssNbcType = W202;
// default 1.0
engineConfiguration->finalGearRatio = 4.1;
// default 0.0
engineConfiguration->totalGearsCount = 5;
// default 0.0
engineConfiguration->gearRatio[0] = 3.14;
// default 0.0
engineConfiguration->gearRatio[1] = 1.89;
// default 0.0
engineConfiguration->gearRatio[2] = 1.33;
// default 0.0
engineConfiguration->gearRatio[3] = 1;
// default 0.0
engineConfiguration->gearRatio[4] = 0.81;
// default "500kbps"
engineConfiguration->can2BaudRate = B100KBPS;
// default "MAP"
engineConfiguration->debugMode = DBG_TPS_ACCEL;
// default 7000.0
engineConfiguration->rpmHardLimit = 7200;
// default 300.0
engineConfiguration->boostCutPressure = 0;
// default 250.0
engineConfiguration->etbRevLimitRange = 0;
// default 27.0
engineConfiguration->cranking.baseFuel = 27.5;
// default 50.0
engineConfiguration->crankingIACposition = 33;
// default 200.0
engineConfiguration->afterCrankingIACtaperDuration = 189;
// default "false"
engineConfiguration->overrideCrankingIacSetting = true;
// default 6.0
engineConfiguration->ignitionDwellForCrankingMs = 4;
// default 0.5
engineConfiguration->primingDelay = 0;
// default "true"
engineConfiguration->isFasterEngineSpinUpEnabled = false;
// default 550.0
engineConfiguration->cranking.rpm = 400;
// default 0.0
engineConfiguration->tpsAccelLookback = 0.2;
// default 40.0
engineConfiguration->tpsAccelEnrichmentThreshold = 4;
// default 0.3
engineConfiguration->wwaeTau = 0.15;
// default 0.0
engineConfiguration->scriptSetting[0] = 5000;
// default 2.0
engineConfiguration->issFilterReciprocal = 0;
// default 1.0
engineConfiguration->tcuInputSpeedSensorTeeth = 0;
// default 0.3
engineConfiguration->boostPid.iFactor = 0.299999;
// default 0.05
engineConfiguration->etb.dFactor = 0.05;
// default 100.0
engineConfiguration->etbMaximumPosition = 0;
// default 400.0
engineConfiguration->engineChartSize = 300;
// default "Launch Button"
engineConfiguration->launchActivationMode = CLUTCH_INPUT_LAUNCH;
// default 30.0
engineConfiguration->launchSpeedThreshold = 1;
// default 3000.0
engineConfiguration->launchRpm = 3500;
// default 500.0
engineConfiguration->launchTimingRpmRange = 100;
// default 500.0
engineConfiguration->hardCutRpmRange = 100;
// default "false"
engineConfiguration->enableLaunchRetard = true;
// default 0.0
engineConfiguration->launchTimingRetard = -40;
// default "false"
engineConfiguration->launchSmoothRetard = true;
// default "false"
engineConfiguration->launchSparkCutEnable = true;
// default "Switch Input"
engineConfiguration->antiLagActivationMode = ALWAYS_ON_ANTILAG;
// default 1500.0
engineConfiguration->coastingFuelCutRpmHigh = 2250;
// default 1300.0
engineConfiguration->coastingFuelCutRpmLow = 1400;
// default 2.0
engineConfiguration->coastingFuelCutTps = 1;
// default "Zero"
engineConfiguration->gppwm[0].loadAxis = GPPWM_Tps;
// default "Zero"
engineConfiguration->gppwm[1].loadAxis = GPPWM_Tps;
// default "Zero"
engineConfiguration->gppwm[2].loadAxis = GPPWM_Tps;
// default "Zero"
engineConfiguration->gppwm[3].loadAxis = GPPWM_Tps;
// default 3.0
engineConfiguration->hpfpCamLobes = 0;
// default 10.0
engineConfiguration->hpfpPeakPos = 0;
// default 0.29
engineConfiguration->hpfpPumpVolume = 0;
// default 10.0
engineConfiguration->hpfpMinAngle = 0;
// default 30.0
engineConfiguration->hpfpActivationAngle = 0;
// default 2000.0
engineConfiguration->hpfpTargetDecay = 0;
// default 0.01
engineConfiguration->hpfpPidP = 0;
// default 3.0E-4
engineConfiguration->hpfpPidI = 0;
cannedtpsTpsAccelTable();
cannedboostTableOpenLoop();
cannedboostTableClosedLoop();
cannedvvtTable1();
cannedscriptTable4();
cannedignitionTable();
cannedignitionIatCorrTable();
cannedveTable();
cannedidleVeTable();
cannedmapEstimateTable();
cannedinjectionPhase();
cannedlambdaTable();
cannedtcuSolenoidTable();
cannedpostCrankingFactor();
```

View File

@ -0,0 +1,228 @@
static void cannedtpsTpsAccelTable() {
static const float hardCodedtpsTpsAccelTable[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{1.484, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{1.822, 1.649, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{2.103, 2.024, 1.653, 0.000, 0.000, 0.000, 0.000, 0.000, },
{2.257, 2.337, 2.024, 1.649, 0.000, 0.000, 0.000, 0.000, },
{2.380, 2.508, 2.337, 2.024, 1.649, 0.000, 0.000, 0.000, },
{2.467, 2.645, 2.508, 2.337, 2.024, 1.649, 0.000, 0.000, },
{2.586, 2.467, 2.380, 2.257, 2.103, 1.822, 1.484, 0.000, },
};
copyTable(config->tpsTpsAccelTable, hardCodedtpsTpsAccelTable);
}
static void cannedboostTableOpenLoop() {
static const float hardCodedboostTableOpenLoop[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, },
{28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, },
{42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, },
{58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, },
{72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, },
{86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, },
{100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, },
};
copyTable(config->boostTableOpenLoop, hardCodedboostTableOpenLoop);
}
static void cannedboostTableClosedLoop() {
static const float hardCodedboostTableClosedLoop[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, },
{28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, },
{42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, },
{58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, },
{72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, },
{86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, },
{100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, },
};
copyTable(config->boostTableClosedLoop, hardCodedboostTableClosedLoop);
}
static void cannedvvtTable1() {
static const float hardCodedvvtTable1[8][8] = {
{0.000, 0.000, 10.000, 10.000, 10.000, 10.000, 0.000, 0.000, },
{0.000, 0.000, 15.000, 15.000, 15.000, 15.000, 0.000, 0.000, },
{0.000, 0.000, 20.000, 20.000, 20.000, 18.000, 12.000, 8.000, },
{6.000, 12.000, 30.000, 25.000, 25.000, 15.000, 12.000, 8.000, },
{6.000, 12.000, 30.000, 25.000, 25.000, 15.000, 12.000, 8.000, },
{6.000, 12.000, 30.000, 25.000, 25.000, 15.000, 12.000, 8.000, },
{6.000, 12.000, 30.000, 25.000, 25.000, 15.000, 12.000, 8.000, },
{6.000, 12.000, 30.000, 25.000, 25.000, 15.000, 12.000, 8.000, },
};
copyTable(config->vvtTable1, hardCodedvvtTable1);
}
static void cannedscriptTable4() {
static const float hardCodedscriptTable4[8][10] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(config->scriptTable4, hardCodedscriptTable4);
}
static void cannedignitionTable() {
static const float hardCodedignitionTable[16][16] = {
{16.000, 16.000, 16.000, 16.000, 16.000, 16.000, 15.000, 6.100, -3.000, -3.000, -3.000, -3.000, -2.000, -2.000, -2.000, -2.000, },
{16.000, 10.000, 10.000, 20.000, 24.000, 24.000, 24.000, 26.700, 30.000, 30.000, 30.000, 30.000, 30.000, 30.000, 30.000, 30.000, },
{16.000, 10.000, 10.000, 20.000, 26.700, 26.400, 28.500, 31.200, 32.000, 32.700, 33.000, 33.300, 33.900, 34.100, 34.300, 35.700, },
{16.800, 18.900, 20.100, 22.400, 27.000, 27.000, 29.100, 32.700, 32.000, 32.800, 33.700, 33.100, 34.200, 35.900, 37.300, 37.800, },
{16.800, 18.900, 20.500, 23.700, 25.800, 28.500, 30.600, 31.500, 32.000, 32.800, 32.900, 33.400, 34.400, 35.600, 35.600, 35.900, },
{15.800, 15.800, 17.700, 21.700, 26.200, 28.600, 30.800, 33.100, 31.200, 31.500, 31.900, 32.400, 32.800, 33.700, 33.800, 34.100, },
{15.800, 15.800, 17.100, 19.700, 25.300, 26.800, 29.000, 31.400, 30.000, 31.000, 31.100, 31.200, 31.500, 32.100, 32.500, 33.000, },
{15.800, 15.800, 16.500, 17.900, 23.800, 25.100, 26.700, 29.000, 27.900, 29.000, 29.000, 29.100, 29.400, 30.000, 30.400, 31.200, },
{15.800, 15.800, 16.100, 16.800, 23.000, 24.200, 25.600, 26.000, 26.800, 27.900, 27.900, 28.100, 28.400, 29.000, 29.400, 30.300, },
{15.000, 15.000, 15.400, 16.100, 16.600, 17.900, 19.000, 21.100, 22.400, 23.100, 23.400, 23.900, 24.200, 24.800, 25.200, 26.000, },
{15.000, 15.000, 15.000, 12.700, 14.800, 15.800, 16.900, 18.800, 20.100, 20.800, 21.100, 21.600, 22.000, 22.700, 23.100, 24.000, },
{6.500, 7.600, 9.000, 11.300, 12.900, 13.700, 14.700, 16.400, 17.800, 18.500, 18.900, 19.400, 19.900, 20.600, 21.000, 21.900, },
{5.900, 6.700, 7.800, 9.800, 11.000, 11.700, 12.600, 14.000, 15.500, 16.200, 16.600, 17.200, 17.700, 18.600, 19.000, 19.900, },
{5.300, 5.800, 6.700, 8.400, 9.200, 9.600, 10.400, 11.700, 13.200, 13.900, 14.300, 15.000, 15.500, 16.500, 16.900, 17.800, },
{4.800, 5.100, 5.800, 7.300, 7.800, 8.100, 8.800, 9.900, 11.500, 12.200, 12.600, 13.300, 13.900, 15.000, 15.300, 16.300, },
{4.400, 4.400, 4.900, 6.200, 6.400, 6.500, 7.200, 8.100, 9.700, 10.400, 10.800, 11.600, 12.300, 13.400, 13.800, 14.700, },
};
copyTable(config->ignitionTable, hardCodedignitionTable);
}
static void cannedignitionIatCorrTable() {
static const float hardCodedignitionIatCorrTable[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(config->ignitionIatCorrTable, hardCodedignitionIatCorrTable);
}
static void cannedveTable() {
static const float hardCodedveTable[16][16] = {
{13.500, 22.000, 22.000, 19.700, 19.000, 19.000, 19.000, 21.000, 24.000, 24.000, 24.000, 23.500, 22.500, 22.800, 22.800, 22.200, },
{40.000, 46.200, 37.700, 38.000, 48.000, 45.200, 43.100, 42.500, 35.400, 40.900, 45.300, 45.800, 37.600, 38.500, 36.300, 38.100, },
{42.000, 40.200, 44.800, 41.100, 48.700, 44.700, 49.200, 47.400, 48.500, 57.200, 64.600, 73.700, 68.200, 60.000, 58.300, 56.500, },
{41.400, 42.200, 45.600, 45.900, 51.900, 47.100, 50.800, 46.300, 48.700, 54.900, 68.600, 72.500, 72.800, 63.000, 61.400, 59.800, },
{43.200, 44.800, 50.400, 52.800, 52.700, 48.800, 52.000, 50.700, 48.700, 54.700, 72.300, 71.400, 68.400, 66.000, 63.100, 60.100, },
{49.500, 49.900, 52.600, 56.700, 52.500, 50.400, 54.500, 50.100, 47.600, 58.000, 74.100, 72.700, 70.300, 66.100, 64.200, 62.300, },
{55.500, 56.400, 56.000, 57.100, 54.100, 52.000, 56.600, 48.000, 47.300, 58.000, 72.200, 74.300, 73.900, 70.600, 67.200, 63.800, },
{60.900, 63.500, 61.400, 52.900, 55.600, 56.700, 59.400, 50.700, 49.200, 61.400, 77.300, 80.000, 74.300, 72.200, 67.900, 63.500, },
{72.200, 69.200, 62.800, 56.500, 59.100, 61.600, 60.300, 52.700, 51.600, 68.200, 79.900, 77.900, 72.300, 68.600, 65.700, 63.100, },
{74.500, 78.300, 69.800, 62.200, 61.200, 64.700, 64.900, 55.100, 57.400, 74.400, 81.900, 79.200, 77.100, 75.400, 67.900, 65.900, },
{83.500, 79.600, 76.100, 65.300, 65.300, 65.300, 65.200, 64.000, 62.500, 76.600, 81.800, 82.500, 76.700, 77.300, 70.800, 69.300, },
{73.000, 82.900, 88.000, 63.300, 62.900, 62.700, 66.300, 61.200, 66.400, 78.800, 80.000, 78.900, 75.200, 76.400, 72.700, 67.400, },
{73.400, 78.700, 87.800, 66.600, 64.700, 67.300, 66.600, 61.700, 67.800, 78.100, 82.300, 83.000, 82.000, 81.400, 80.500, 78.200, },
{69.700, 83.700, 76.900, 62.400, 65.100, 68.100, 65.600, 62.400, 68.700, 76.400, 83.000, 84.500, 83.200, 82.500, 81.300, 77.700, },
{75.400, 81.100, 78.300, 71.600, 71.800, 72.700, 70.000, 70.100, 70.700, 76.400, 89.300, 90.000, 89.300, 82.500, 77.700, 72.900, },
{78.000, 78.200, 78.700, 74.000, 73.300, 71.000, 71.300, 70.700, 73.000, 86.400, 89.000, 86.900, 86.300, 83.600, 80.300, 78.400, },
};
copyTable(config->veTable, hardCodedveTable);
}
static void cannedidleVeTable() {
static const float hardCodedidleVeTable[4][4] = {
{41.000, 41.000, 41.000, 43.000, },
{42.000, 40.000, 40.000, 43.300, },
{42.000, 40.000, 45.000, 47.000, },
{47.000, 45.000, 47.000, 47.000, },
};
copyTable(config->idleVeTable, hardCodedidleVeTable);
}
static void cannedmapEstimateTable() {
static const float hardCodedmapEstimateTable[16][16] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(config->mapEstimateTable, hardCodedmapEstimateTable);
}
static void cannedinjectionPhase() {
static const float hardCodedinjectionPhase[16][16] = {
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
{-180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, -180.000, },
};
copyTable(config->injectionPhase, hardCodedinjectionPhase);
}
static void cannedlambdaTable() {
static const float hardCodedlambdaTable[16][16] = {
{14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 15.400, 15.400, 15.400, 15.400, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, },
{14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 15.400, 15.400, 15.400, 15.400, 14.500, 14.200, 14.200, 14.200, 14.200, 14.200, },
{14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 15.400, 15.400, 15.400, 15.400, 14.500, 14.200, 14.200, 14.200, 14.200, 14.200, },
{14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 15.000, 15.000, 15.000, 15.000, 14.500, 14.200, 14.200, 14.200, 14.200, 14.200, },
{14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.000, 14.000, 14.000, 14.000, 14.000, },
{14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, },
{14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, },
{13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.600, 13.600, 13.600, 13.600, 13.600, 13.600, },
{13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.800, 13.600, 13.600, 13.600, 13.600, 13.600, 13.600, },
{13.700, 13.700, 13.700, 13.700, 13.700, 13.700, 13.700, 13.700, 13.700, 13.700, 13.400, 13.400, 13.400, 13.400, 13.400, 13.400, },
{13.500, 13.500, 13.500, 13.500, 13.500, 13.500, 13.500, 13.500, 13.500, 13.500, 13.200, 13.200, 13.200, 13.200, 13.200, 13.200, },
{13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, 13.100, },
{12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, 12.500, },
{12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, 12.000, },
{11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, 11.500, },
{11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, 11.000, },
};
copyTable(config->lambdaTable, hardCodedlambdaTable);
}
static void cannedtcuSolenoidTable() {
static const float hardCodedtcuSolenoidTable[6][10] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(config->tcuSolenoidTable, hardCodedtcuSolenoidTable);
}
static void cannedpostCrankingFactor() {
static const float hardCodedpostCrankingFactor[6][6] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(engineConfiguration->postCrankingFactor, hardCodedpostCrankingFactor);
}

View File

@ -0,0 +1,353 @@
# m111-alex-comparing-against-current-m111-alex-default
// canned tune https://rusefi.com/online/view.php?msq=1490
```
// default 0.9
engineConfiguration->tChargeMaxRpmMaxTps = 0.900002;
// default "RPM+TPS (Default)"
engineConfiguration->tChargeMode = TCHARGE_MODE_AIR_INTERP;
// default 1.0
engineConfiguration->tChargeAirIncrLimit = 15;
// default 12.5
engineConfiguration->tChargeAirDecrLimit = 15;
// default 0.098
engineConfiguration->tChargeAirCoefMin = 0.4;
// default 0.902
engineConfiguration->tChargeAirCoefMax = 0.889999;
// default 153.6
engineConfiguration->tChargeAirFlowMax = 220;
// default "Sequential"
engineConfiguration->injectionMode = IM_BATCH;
// default "Individual Coils"
engineConfiguration->ignitionMode = IM_WASTED_SPARK;
// default 0.0
engineConfiguration->fixedTiming = 10;
// default 2.295
engineConfiguration->displacement = 2.2;
// default 0.0
engineConfiguration->vehicleWeight = 1250;
// default 9.0
engineConfiguration->compressionRatio = 9.5;
// default 469.0
engineConfiguration->globalTriggerAngleOffset = 72;
// default 450.0
engineConfiguration->vvtOffsets[0] = 0;
// default 200.0
engineConfiguration->injector.flow = 196;
// default 300.0
engineConfiguration->fuelReferencePressure = 0;
// default 0.0
engineConfiguration->cylinderBankSelect[0] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[1] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[2] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[3] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[4] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[5] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[6] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[7] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[8] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[9] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[10] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[11] = 1;
// default 4.0
engineConfiguration->benchTestOnTime = 5;
// default 891.0
engineConfiguration->tpsMin = 890;
// default 69.0
engineConfiguration->tpsMax = 35;
// default 98.0
engineConfiguration->tps1SecondaryMin = 93;
// default 926.0
engineConfiguration->tps1SecondaryMax = 903;
// default 1000.0
engineConfiguration->tps2SecondaryMin = 0;
// default 0.0
engineConfiguration->tps2SecondaryMax = 1000;
// default 0.38
engineConfiguration->throttlePedalUpVoltage = 0.290001;
// default 4.77
engineConfiguration->throttlePedalWOTVoltage = 4.599976;
// default 4.64
engineConfiguration->throttlePedalSecondaryUpVoltage = 0.12;
// default 2.47
engineConfiguration->throttlePedalSecondaryWOTVoltage = 2.130005;
// default 65.0
engineConfiguration->mc33_hvolt = 0;
// default 13000.0
engineConfiguration->mc33_i_boost = 0;
// default 400.0
engineConfiguration->mc33_t_max_boost = 0;
// default 9400.0
engineConfiguration->mc33_i_peak = 0;
// default 700.0
engineConfiguration->mc33_t_peak_tot = 0;
// default 10.0
engineConfiguration->mc33_t_peak_off = 0;
// default 10.0
engineConfiguration->mc33_t_bypass = 0;
// default 3700.0
engineConfiguration->mc33_i_hold = 0;
// default 60.0
engineConfiguration->mc33_t_hold_off = 0;
// default 10000.0
engineConfiguration->mc33_t_hold_tot = 0;
// default 1.0
engineConfiguration->turboSpeedSensorMultiplier = 0;
// default 689.476
engineConfiguration->oilPressure.value2 = 689.4766;
// default 0.3
engineConfiguration->mapLowValueVoltage = 0.2;
// default 4.65
engineConfiguration->mapHighValueVoltage = 4.950012;
// default 410.0
engineConfiguration->mapErrorDetectionTooHigh = 250;
// default 1.0
engineConfiguration->mapMinBufferLength = 2;
// default 0.0
engineConfiguration->baroSensor.lowValue = 38.5;
// default 500.0
engineConfiguration->baroSensor.highValue = 250;
// default 9.996
engineConfiguration->afr.value1 = 9.995972;
// default 19.992
engineConfiguration->afr.value2 = 19.99194;
// default "false"
engineConfiguration->enableAemXSeries = true;
// default 300.0
engineConfiguration->idle.solenoidFrequency = 200;
// default 3.0
engineConfiguration->idleStepperReactionTime = 10;
// default 200.0
engineConfiguration->idleStepperTotalSteps = 150;
// default "true"
engineConfiguration->stepperForceParkingEveryRestart = false;
// default 15.0
engineConfiguration->etbIdleThrottleRange = 10;
// default 0.05
engineConfiguration->idleRpmPid.pFactor = 0.05;
// default 0.002
engineConfiguration->idleRpmPid.iFactor = 0.002;
// default -20.0
engineConfiguration->idleRpmPid.minValue = 0;
// default 20.0
engineConfiguration->idleRpmPid.maxValue = 99;
// default 15.0
engineConfiguration->acIdleExtraOffset = 7;
// default 2.0
engineConfiguration->fan1ExtraIdle = 0;
// default 2.0
engineConfiguration->fan2ExtraIdle = 0;
// default 2.0
engineConfiguration->iacByTpsTaper = 0;
// default 5.0
engineConfiguration->idlePidDeactivationTpsThreshold = 2;
// default 300.0
engineConfiguration->idlePidRpmUpperLimit = 450;
// default "false"
engineConfiguration->useIdleTimingPidControl = true;
// default 0.1
engineConfiguration->idleTimingPid.pFactor = 0.25;
// default -10.0
engineConfiguration->idleTimingPid.minValue = -20;
// default 0.5
engineConfiguration->acDelay = 0;
// default 0.0
engineConfiguration->warningPeriod = 10;
// default "false"
engineConfiguration->enableSoftwareKnock = true;
// default 87.5
engineConfiguration->cylinderBore = 89.90039;
// default 0.0
engineConfiguration->knockBandCustom = 12.80005;
// default 20.0
engineConfiguration->knockRetardAggression = 5;
// default 3.0
engineConfiguration->knockRetardReapplyRate = 0.1;
// default 1000.0
engineConfiguration->stft.maxIdleRegionRpm = 900;
// default "false"
engineConfiguration->fuelClosedLoopCorrectionEnabled = true;
// default 60.0
engineConfiguration->stft.startupDelay = 90;
// default 60.0
engineConfiguration->stft.minClt = 70;
// default 6000.0
engineConfiguration->vvtActivationDelayMs = 0;
// default 500.0
engineConfiguration->vvtControlMinRpm = 550;
// default 33.0
engineConfiguration->auxPid[0].offset = 0;
// default 2.0
engineConfiguration->auxPid[0].pFactor = 0;
// default 0.005
engineConfiguration->auxPid[0].iFactor = 0;
// default 10.0
engineConfiguration->auxPid[1].minValue = 0;
// default 90.0
engineConfiguration->auxPid[1].maxValue = 0;
// default 0.0
engineConfiguration->alternatorControl.minValue = 10;
// default 3.0
engineConfiguration->vssFilterReciprocal = 10;
// default 1000.0
engineConfiguration->driveWheelRevPerKm = 500;
// default "false"
engineConfiguration->enableCanVss = true;
// default "BMW_e46"
engineConfiguration->canVssNbcType = W202;
// default 1.0
engineConfiguration->finalGearRatio = 0;
// default 38400.0
engineConfiguration->tunerStudioSerialSpeed = 115200;
// default "500kbps"
engineConfiguration->can2BaudRate = B100KBPS;
// default "None"
engineConfiguration->canNbcType = CAN_BUS_W202_C180;
// default 0.0
engineConfiguration->auxSerialSpeed = 115200;
// default "MAP"
engineConfiguration->debugMode = DBG_TPS_ACCEL;
// default 7000.0
engineConfiguration->rpmHardLimit = 6200;
// default 300.0
engineConfiguration->boostCutPressure = 0;
// default 0.0
engineConfiguration->etbRevLimitStart = 6100;
// default 250.0
engineConfiguration->etbRevLimitRange = 200;
// default "Sequential"
engineConfiguration->crankingInjectionMode = IM_SIMULTANEOUS;
// default 27.0
engineConfiguration->cranking.baseFuel = 36;
// default "false"
engineConfiguration->overrideCrankingIacSetting = true;
// default 6.0
engineConfiguration->crankingTimingAngle = 3;
// default 6.0
engineConfiguration->ignitionDwellForCrankingMs = 5;
// default 0.5
engineConfiguration->primingDelay = 0;
// default 0.0
engineConfiguration->tpsAccelLookback = 0.35;
// default 40.0
engineConfiguration->tpsAccelEnrichmentThreshold = 80;
// default 0.0
engineConfiguration->tpsDecelEnleanmentThreshold = 0.8;
// default 0.0
engineConfiguration->tpsAccelFractionPeriod = 1;
// default 0.0
engineConfiguration->tpsAccelFractionDivisor = 0.8;
// default "Basic (constants)"
engineConfiguration->complexWallModel = Advanced (tables);
// default 0.3
engineConfiguration->wwaeTau = 0.1;
// default 0.3
engineConfiguration->wwaeBeta = 0.83;
// default 0.0
engineConfiguration->scriptSetting[0] = 5000;
// default 2000.0
engineConfiguration->boostControlMinRpm = 0;
// default 30.0
engineConfiguration->boostControlMinTps = 0;
// default 110.0
engineConfiguration->boostControlMinMap = 0;
// default 0.3
engineConfiguration->boostPid.iFactor = 0.299999;
// default "Throttle 2"
engineConfiguration->etbFunctions[1] = DC_None;
// default 5.12
engineConfiguration->etb.pFactor = 5.101013;
// default 47.0
engineConfiguration->etb.iFactor = 80.29004;
// default 0.088
engineConfiguration->etb.dFactor = 0.1184;
// default -30.0
engineConfiguration->etb_iTermMin = -40;
// default 30.0
engineConfiguration->etb_iTermMax = 40;
// default 800.0
engineConfiguration->etbFreq = 500;
// default 100.0
engineConfiguration->etbMaximumPosition = 0;
// default 400.0
engineConfiguration->engineChartSize = 300;
// default "false"
engineConfiguration->launchControlEnabled = true;
// default "Launch Button"
engineConfiguration->launchActivationMode = ALWAYS_ACTIVE_LAUNCH;
// default 30.0
engineConfiguration->launchSpeedThreshold = 15;
// default 3000.0
engineConfiguration->launchRpm = 3500;
// default "false"
engineConfiguration->enableLaunchRetard = true;
// default 0.0
engineConfiguration->launchTimingRetard = 10;
// default "false"
engineConfiguration->launchFuelCutEnable = true;
// default "Switch Input"
engineConfiguration->antiLagActivationMode = ALWAYS_ON_ANTILAG;
// default 60.0
engineConfiguration->coastingFuelCutClt = 30;
// default 1500.0
engineConfiguration->coastingFuelCutRpmHigh = 2000;
// default 2.0
engineConfiguration->coastingFuelCutTps = 5;
// default 250.0
engineConfiguration->gppwm[0].pwmFrequency = 10;
// default 0.0
engineConfiguration->gppwm[0].dutyIfError = 10;
// default "Zero"
engineConfiguration->gppwm[0].loadAxis = GPPWM_Clt;
// default 250.0
engineConfiguration->gppwm[1].pwmFrequency = 125;
// default "Zero"
engineConfiguration->gppwm[1].loadAxis = GPPWM_Map;
// default "Zero"
engineConfiguration->gppwm[2].loadAxis = GPPWM_Tps;
// default "Zero"
engineConfiguration->gppwm[3].loadAxis = GPPWM_Tps;
// default 3.0
engineConfiguration->hpfpCamLobes = 0;
// default 10.0
engineConfiguration->hpfpPeakPos = 0;
// default 0.29
engineConfiguration->hpfpPumpVolume = 0;
// default 10.0
engineConfiguration->hpfpMinAngle = 0;
// default 30.0
engineConfiguration->hpfpActivationAngle = 0;
// default 2000.0
engineConfiguration->hpfpTargetDecay = 0;
// default 0.01
engineConfiguration->hpfpPidP = 0;
// default 3.0E-4
engineConfiguration->hpfpPidI = 0;
cannedtpsTpsAccelTable();
cannedboostTableOpenLoop();
cannedboostTableClosedLoop();
cannedscriptTable4();
cannedignitionTable();
cannedignitionIatCorrTable();
cannedveTable();
cannedmapEstimateTable();
cannedinjectionPhase();
cannedpedalToTpsTable();
cannedlambdaTable();
cannedtcuSolenoidTable();
cannedpostCrankingFactor();
```

View File

@ -0,0 +1,218 @@
static void cannedtpsTpsAccelTable() {
static const float hardCodedtpsTpsAccelTable[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{3.459, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{6.282, 2.880, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{11.927, 4.896, 2.500, 0.000, 0.000, 0.000, 0.000, 0.000, },
{14.515, 6.624, 4.250, 2.500, 0.000, 0.000, 0.000, 0.000, },
{16.589, 8.064, 5.750, 4.250, 2.500, 0.000, 0.000, 0.000, },
{18.144, 9.216, 7.000, 5.750, 4.250, 5.000, 0.000, 0.000, },
{19.181, 10.080, 8.000, 7.000, 5.750, 8.500, 5.000, 0.000, },
};
copyTable(config->tpsTpsAccelTable, hardCodedtpsTpsAccelTable);
}
static void cannedboostTableOpenLoop() {
static const float hardCodedboostTableOpenLoop[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, },
{28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, },
{42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, },
{58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, },
{72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, },
{86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, },
{100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, },
};
copyTable(config->boostTableOpenLoop, hardCodedboostTableOpenLoop);
}
static void cannedboostTableClosedLoop() {
static const float hardCodedboostTableClosedLoop[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, },
{28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, },
{42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, },
{58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, },
{72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, },
{86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, },
{100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, },
};
copyTable(config->boostTableClosedLoop, hardCodedboostTableClosedLoop);
}
static void cannedscriptTable4() {
static const float hardCodedscriptTable4[8][10] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(config->scriptTable4, hardCodedscriptTable4);
}
static void cannedignitionTable() {
static const float hardCodedignitionTable[16][16] = {
{15.000, 15.000, 15.000, 15.000, 21.800, 23.600, 26.900, 29.600, 32.300, 35.000, 37.100, 37.900, 38.400, 39.000, 39.900, 40.100, },
{15.000, 15.000, 15.000, 15.000, 21.800, 23.600, 26.900, 29.700, 32.100, 34.500, 36.600, 37.400, 38.100, 38.600, 39.500, 39.800, },
{15.000, 15.000, 15.000, 18.000, 21.800, 23.600, 26.900, 29.600, 31.800, 34.100, 36.100, 36.600, 37.400, 38.000, 39.000, 39.400, },
{15.000, 15.000, 15.000, 19.000, 20.800, 22.600, 25.800, 28.400, 30.400, 32.400, 34.300, 34.800, 35.600, 36.200, 37.200, 38.200, },
{15.000, 15.000, 15.000, 19.000, 20.800, 22.600, 25.600, 28.100, 30.000, 31.800, 33.600, 34.100, 35.000, 35.500, 36.900, 37.900, },
{15.000, 15.000, 16.000, 18.600, 20.200, 21.700, 23.400, 24.600, 26.800, 29.100, 31.300, 32.200, 33.400, 34.100, 35.200, 36.400, },
{14.800, 14.900, 16.100, 18.200, 19.400, 20.300, 21.700, 22.600, 24.700, 27.000, 29.200, 30.100, 31.400, 32.100, 33.300, 34.500, },
{13.800, 14.300, 15.200, 16.800, 18.300, 19.600, 20.700, 21.200, 23.300, 25.500, 27.700, 28.600, 30.100, 30.800, 32.100, 33.300, },
{13.600, 14.000, 14.500, 15.100, 16.800, 18.400, 19.400, 19.900, 21.900, 24.100, 26.300, 27.200, 28.800, 29.500, 30.900, 32.100, },
{13.500, 14.000, 14.300, 13.000, 14.900, 16.800, 18.000, 18.700, 20.600, 22.900, 23.700, 23.400, 23.200, 23.000, 22.800, 22.300, },
{12.800, 13.400, 13.600, 12.400, 14.300, 16.200, 17.400, 18.000, 19.900, 20.100, 20.900, 20.600, 20.400, 20.100, 19.900, 19.300, },
{11.200, 12.200, 12.400, 11.000, 12.900, 14.800, 15.900, 16.400, 18.300, 18.400, 19.200, 18.900, 18.500, 18.100, 17.800, 17.100, },
{9.100, 9.600, 10.400, 10.000, 12.000, 13.900, 14.900, 15.400, 17.300, 17.400, 18.100, 17.800, 17.400, 16.900, 16.600, 15.900, },
{4.700, 6.100, 7.400, 9.000, 11.000, 12.900, 13.900, 14.300, 16.200, 16.300, 17.000, 16.700, 16.200, 15.700, 15.300, 14.700, },
{2.200, 3.800, 4.800, 7.800, 9.800, 11.700, 12.600, 13.000, 14.800, 14.800, 15.600, 15.200, 14.700, 14.100, 13.700, 13.100, },
{0.300, 1.900, 2.900, 5.900, 7.900, 9.800, 10.700, 11.000, 12.700, 12.700, 13.600, 13.200, 12.600, 12.000, 11.600, 10.900, },
};
copyTable(config->ignitionTable, hardCodedignitionTable);
}
static void cannedignitionIatCorrTable() {
static const float hardCodedignitionIatCorrTable[8][8] = {
{4.000, 4.000, 4.000, 4.000, 4.000, 4.000, 4.000, 4.000, },
{2.900, 2.900, 2.900, 2.900, 2.900, 2.900, 2.900, 2.900, },
{0.700, 0.700, 0.700, 0.700, 0.700, 0.700, 0.700, 0.700, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{-0.600, -0.600, -0.600, -0.600, -0.600, -0.600, -0.600, -0.600, },
{-3.400, -3.400, -3.400, -3.400, -3.400, -3.400, -3.400, -3.400, },
{-4.000, -4.000, -4.000, -4.000, -4.000, -4.000, -4.000, -4.000, },
{-6.000, -6.000, -6.000, -6.000, -6.000, -6.000, -6.000, -6.000, },
};
copyTable(config->ignitionIatCorrTable, hardCodedignitionIatCorrTable);
}
static void cannedveTable() {
static const float hardCodedveTable[16][16] = {
{43.000, 41.700, 40.000, 32.000, 28.100, 27.200, 28.900, 24.900, 26.100, 27.400, 28.700, 29.900, 31.200, 32.500, 35.300, 36.800, },
{42.500, 40.800, 39.800, 37.100, 36.300, 36.800, 37.200, 37.900, 41.400, 42.700, 44.000, 45.400, 46.700, 48.000, 49.800, 51.100, },
{43.000, 41.200, 40.900, 41.600, 44.400, 45.800, 46.500, 47.800, 49.100, 50.400, 51.700, 53.100, 54.400, 55.700, 57.000, 58.300, },
{43.400, 44.000, 44.100, 47.400, 49.100, 50.800, 51.100, 51.900, 53.500, 54.600, 55.700, 56.800, 57.900, 59.000, 60.100, 61.200, },
{47.300, 47.600, 49.900, 51.500, 53.600, 53.700, 53.800, 54.900, 55.900, 57.000, 58.300, 59.100, 60.200, 61.300, 62.300, 63.400, },
{57.400, 55.400, 55.200, 55.400, 56.800, 57.800, 56.900, 55.700, 57.600, 58.600, 58.200, 60.100, 62.100, 64.100, 66.000, 68.000, },
{57.700, 58.600, 59.200, 58.500, 60.100, 60.300, 59.100, 58.800, 57.800, 58.800, 56.800, 59.700, 62.600, 65.500, 68.300, 71.200, },
{60.100, 62.100, 62.100, 60.900, 62.200, 62.000, 61.200, 61.600, 62.000, 62.500, 63.100, 63.600, 64.100, 66.700, 69.400, 72.100, },
{71.200, 66.000, 63.000, 62.800, 63.700, 63.400, 64.000, 64.700, 65.000, 65.500, 65.900, 66.200, 66.500, 68.800, 71.100, 73.400, },
{73.300, 66.900, 63.100, 64.500, 65.900, 65.900, 66.200, 65.300, 65.700, 66.000, 66.200, 66.500, 66.700, 68.900, 71.000, 73.200, },
{76.900, 68.500, 65.200, 64.400, 66.600, 67.100, 67.400, 66.500, 66.300, 66.100, 66.200, 68.400, 70.900, 73.200, 75.700, 78.300, },
{78.700, 68.300, 65.800, 63.200, 66.000, 67.300, 68.000, 67.000, 67.200, 67.500, 69.500, 71.600, 73.700, 75.600, 77.600, 79.700, },
{78.600, 68.800, 66.700, 64.600, 66.400, 66.900, 68.700, 69.500, 70.300, 71.100, 71.900, 72.700, 74.900, 76.900, 79.000, 81.100, },
{78.500, 69.300, 67.600, 66.000, 66.800, 66.500, 69.400, 70.300, 71.200, 72.000, 72.900, 73.800, 76.000, 78.200, 80.400, 82.600, },
{78.400, 69.700, 68.500, 67.300, 67.200, 66.000, 70.000, 71.000, 71.900, 72.900, 73.800, 74.800, 77.200, 79.400, 81.700, 84.000, },
{78.300, 70.200, 69.400, 68.700, 67.600, 65.600, 70.700, 71.700, 72.800, 73.800, 74.900, 75.900, 78.300, 80.700, 83.100, 85.400, },
};
copyTable(config->veTable, hardCodedveTable);
}
static void cannedmapEstimateTable() {
static const float hardCodedmapEstimateTable[16][16] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(config->mapEstimateTable, hardCodedmapEstimateTable);
}
static void cannedinjectionPhase() {
static const float hardCodedinjectionPhase[16][16] = {
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
};
copyTable(config->injectionPhase, hardCodedinjectionPhase);
}
static void cannedpedalToTpsTable() {
static const float hardCodedpedalToTpsTable[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{4.000, 4.000, 4.000, 4.000, 6.000, 7.000, 10.000, 10.000, },
{6.000, 8.000, 8.000, 8.000, 12.000, 14.000, 15.000, 15.000, },
{10.000, 10.000, 10.000, 12.000, 18.000, 20.000, 20.000, 20.000, },
{18.000, 18.000, 18.000, 20.000, 30.000, 33.000, 35.000, 35.000, },
{40.000, 40.000, 40.000, 50.000, 60.000, 65.000, 71.000, 71.000, },
{86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, },
{100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, },
};
copyTable(config->pedalToTpsTable, hardCodedpedalToTpsTable);
}
static void cannedlambdaTable() {
static const float hardCodedlambdaTable[16][16] = {
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.200, 14.200, 14.200, },
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.200, 14.200, 14.200, },
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.200, 14.200, 14.200, },
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.200, 14.200, 14.200, },
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.200, 14.200, 14.200, },
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.200, 14.000, 14.000, },
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.000, 14.000, },
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.000, 14.000, },
{14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.000, 14.000, },
{14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.000, 14.000, },
{14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.000, 14.000, 14.000, },
{14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.000, 14.000, 14.000, },
{14.200, 14.200, 14.200, 14.300, 14.300, 14.300, 14.300, 14.300, 14.700, 14.700, 14.700, 14.700, 14.700, 14.300, 14.300, 14.300, },
{14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.400, 14.400, 14.400, 14.400, 14.400, 14.200, 14.200, 14.200, },
{14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, },
{13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, },
};
copyTable(config->lambdaTable, hardCodedlambdaTable);
}
static void cannedtcuSolenoidTable() {
static const float hardCodedtcuSolenoidTable[6][10] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(config->tcuSolenoidTable, hardCodedtcuSolenoidTable);
}
static void cannedpostCrankingFactor() {
static const float hardCodedpostCrankingFactor[6][6] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(engineConfiguration->postCrankingFactor, hardCodedpostCrankingFactor);
}

View File

@ -0,0 +1,349 @@
# m111-alex-comparing-against-global-defaults
// canned tune https://rusefi.com/online/view.php?msq=1490
```
// default 0.9
engineConfiguration->tChargeMaxRpmMaxTps = 0.900002;
// default "RPM+TPS (Default)"
engineConfiguration->tChargeMode = TCHARGE_MODE_AIR_INTERP;
// default 1.0
engineConfiguration->tChargeAirIncrLimit = 15;
// default 12.5
engineConfiguration->tChargeAirDecrLimit = 15;
// default 0.098
engineConfiguration->tChargeAirCoefMin = 0.4;
// default 0.902
engineConfiguration->tChargeAirCoefMax = 0.889999;
// default 153.6
engineConfiguration->tChargeAirFlowMax = 220;
// default "Sequential"
engineConfiguration->injectionMode = IM_BATCH;
// default "Single Coil"
engineConfiguration->ignitionMode = IM_WASTED_SPARK;
// default 0.0
engineConfiguration->fixedTiming = 10;
// default 2.0
engineConfiguration->displacement = 2.2;
// default 0.0
engineConfiguration->vehicleWeight = 1250;
// default 9.0
engineConfiguration->compressionRatio = 9.5;
// default 0.0
engineConfiguration->globalTriggerAngleOffset = 72;
// default 450.0
engineConfiguration->vvtOffsets[0] = 0;
// default 200.0
engineConfiguration->injector.flow = 196;
// default 300.0
engineConfiguration->fuelReferencePressure = 0;
// default 0.0
engineConfiguration->cylinderBankSelect[0] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[1] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[2] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[3] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[4] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[5] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[6] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[7] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[8] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[9] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[10] = 1;
// default 0.0
engineConfiguration->cylinderBankSelect[11] = 1;
// default 4.0
engineConfiguration->benchTestOnTime = 5;
// default 0.0
engineConfiguration->tpsMin = 890;
// default 1000.0
engineConfiguration->tpsMax = 35;
// default 1000.0
engineConfiguration->tps1SecondaryMin = 93;
// default 0.0
engineConfiguration->tps1SecondaryMax = 903;
// default 1000.0
engineConfiguration->tps2SecondaryMin = 0;
// default 0.0
engineConfiguration->tps2SecondaryMax = 1000;
// default 0.0
engineConfiguration->throttlePedalUpVoltage = 0.290001;
// default 5.0
engineConfiguration->throttlePedalWOTVoltage = 4.599976;
// default 5.0
engineConfiguration->throttlePedalSecondaryUpVoltage = 0.12;
// default 0.0
engineConfiguration->throttlePedalSecondaryWOTVoltage = 2.130005;
// default 65.0
engineConfiguration->mc33_hvolt = 0;
// default 13000.0
engineConfiguration->mc33_i_boost = 0;
// default 400.0
engineConfiguration->mc33_t_max_boost = 0;
// default 9400.0
engineConfiguration->mc33_i_peak = 0;
// default 700.0
engineConfiguration->mc33_t_peak_tot = 0;
// default 10.0
engineConfiguration->mc33_t_peak_off = 0;
// default 10.0
engineConfiguration->mc33_t_bypass = 0;
// default 3700.0
engineConfiguration->mc33_i_hold = 0;
// default 60.0
engineConfiguration->mc33_t_hold_off = 0;
// default 10000.0
engineConfiguration->mc33_t_hold_tot = 0;
// default 1.0
engineConfiguration->turboSpeedSensorMultiplier = 0;
// default 689.476
engineConfiguration->oilPressure.value2 = 689.4766;
// default 0.0
engineConfiguration->mapLowValueVoltage = 0.2;
// default 5.0
engineConfiguration->mapHighValueVoltage = 4.950012;
// default 410.0
engineConfiguration->mapErrorDetectionTooHigh = 250;
// default 1.0
engineConfiguration->mapMinBufferLength = 2;
// default 0.0
engineConfiguration->baroSensor.lowValue = 38.5;
// default 500.0
engineConfiguration->baroSensor.highValue = 250;
// default 9.996
engineConfiguration->afr.value1 = 9.995972;
// default 19.992
engineConfiguration->afr.value2 = 19.99194;
// default "false"
engineConfiguration->enableAemXSeries = true;
// default 300.0
engineConfiguration->idle.solenoidFrequency = 200;
// default 3.0
engineConfiguration->idleStepperReactionTime = 10;
// default 200.0
engineConfiguration->idleStepperTotalSteps = 150;
// default "true"
engineConfiguration->stepperForceParkingEveryRestart = false;
// default 15.0
engineConfiguration->etbIdleThrottleRange = 10;
// default 0.05
engineConfiguration->idleRpmPid.pFactor = 0.05;
// default 0.002
engineConfiguration->idleRpmPid.iFactor = 0.002;
// default -20.0
engineConfiguration->idleRpmPid.minValue = 0;
// default 20.0
engineConfiguration->idleRpmPid.maxValue = 99;
// default 15.0
engineConfiguration->acIdleExtraOffset = 7;
// default 2.0
engineConfiguration->fan1ExtraIdle = 0;
// default 2.0
engineConfiguration->fan2ExtraIdle = 0;
// default 2.0
engineConfiguration->iacByTpsTaper = 0;
// default 5.0
engineConfiguration->idlePidDeactivationTpsThreshold = 2;
// default 300.0
engineConfiguration->idlePidRpmUpperLimit = 450;
// default "false"
engineConfiguration->useIdleTimingPidControl = true;
// default 0.1
engineConfiguration->idleTimingPid.pFactor = 0.25;
// default -10.0
engineConfiguration->idleTimingPid.minValue = -20;
// default 0.5
engineConfiguration->acDelay = 0;
// default 0.0
engineConfiguration->warningPeriod = 10;
// default "false"
engineConfiguration->enableSoftwareKnock = true;
// default 87.5
engineConfiguration->cylinderBore = 89.90039;
// default 0.0
engineConfiguration->knockBandCustom = 12.80005;
// default 20.0
engineConfiguration->knockRetardAggression = 5;
// default 3.0
engineConfiguration->knockRetardReapplyRate = 0.1;
// default 1000.0
engineConfiguration->stft.maxIdleRegionRpm = 900;
// default "false"
engineConfiguration->fuelClosedLoopCorrectionEnabled = true;
// default 60.0
engineConfiguration->stft.startupDelay = 90;
// default 60.0
engineConfiguration->stft.minClt = 70;
// default 6000.0
engineConfiguration->vvtActivationDelayMs = 0;
// default 33.0
engineConfiguration->auxPid[0].offset = 0;
// default 2.0
engineConfiguration->auxPid[0].pFactor = 0;
// default 0.005
engineConfiguration->auxPid[0].iFactor = 0;
// default 10.0
engineConfiguration->auxPid[1].minValue = 0;
// default 90.0
engineConfiguration->auxPid[1].maxValue = 0;
// default 0.0
engineConfiguration->alternatorControl.minValue = 10;
// default 3.0
engineConfiguration->vssFilterReciprocal = 10;
// default 1000.0
engineConfiguration->driveWheelRevPerKm = 500;
// default "false"
engineConfiguration->enableCanVss = true;
// default "BMW_e46"
engineConfiguration->canVssNbcType = W202;
// default 1.0
engineConfiguration->finalGearRatio = 0;
// default 38400.0
engineConfiguration->tunerStudioSerialSpeed = 115200;
// default "500kbps"
engineConfiguration->can2BaudRate = B100KBPS;
// default "None"
engineConfiguration->canNbcType = CAN_BUS_W202_C180;
// default 0.0
engineConfiguration->auxSerialSpeed = 115200;
// default "MAP"
engineConfiguration->debugMode = DBG_TPS_ACCEL;
// default 7000.0
engineConfiguration->rpmHardLimit = 6200;
// default 300.0
engineConfiguration->boostCutPressure = 0;
// default 0.0
engineConfiguration->etbRevLimitStart = 6100;
// default 250.0
engineConfiguration->etbRevLimitRange = 200;
// default 27.0
engineConfiguration->cranking.baseFuel = 36;
// default "false"
engineConfiguration->overrideCrankingIacSetting = true;
// default 6.0
engineConfiguration->crankingTimingAngle = 3;
// default 6.0
engineConfiguration->ignitionDwellForCrankingMs = 5;
// default 0.5
engineConfiguration->primingDelay = 0;
// default 0.0
engineConfiguration->tpsAccelLookback = 0.35;
// default 40.0
engineConfiguration->tpsAccelEnrichmentThreshold = 80;
// default 0.0
engineConfiguration->tpsDecelEnleanmentThreshold = 0.8;
// default 0.0
engineConfiguration->tpsAccelFractionPeriod = 1;
// default 0.0
engineConfiguration->tpsAccelFractionDivisor = 0.8;
// default "Basic (constants)"
engineConfiguration->complexWallModel = Advanced (tables);
// default 0.3
engineConfiguration->wwaeTau = 0.1;
// default 0.3
engineConfiguration->wwaeBeta = 0.83;
// default 0.0
engineConfiguration->scriptSetting[0] = 5000;
// default 2000.0
engineConfiguration->boostControlMinRpm = 0;
// default 30.0
engineConfiguration->boostControlMinTps = 0;
// default 110.0
engineConfiguration->boostControlMinMap = 0;
// default 0.3
engineConfiguration->boostPid.iFactor = 0.299999;
// default "Throttle 2"
engineConfiguration->etbFunctions[1] = DC_None;
// default 1.0
engineConfiguration->etb.pFactor = 5.101013;
// default 10.0
engineConfiguration->etb.iFactor = 80.29004;
// default 0.05
engineConfiguration->etb.dFactor = 0.1184;
// default -30.0
engineConfiguration->etb_iTermMin = -40;
// default 30.0
engineConfiguration->etb_iTermMax = 40;
// default 800.0
engineConfiguration->etbFreq = 500;
// default 100.0
engineConfiguration->etbMaximumPosition = 0;
// default 400.0
engineConfiguration->engineChartSize = 300;
// default "false"
engineConfiguration->launchControlEnabled = true;
// default "Launch Button"
engineConfiguration->launchActivationMode = ALWAYS_ACTIVE_LAUNCH;
// default 30.0
engineConfiguration->launchSpeedThreshold = 15;
// default 3000.0
engineConfiguration->launchRpm = 3500;
// default "false"
engineConfiguration->enableLaunchRetard = true;
// default 0.0
engineConfiguration->launchTimingRetard = 10;
// default "false"
engineConfiguration->launchFuelCutEnable = true;
// default "Switch Input"
engineConfiguration->antiLagActivationMode = ALWAYS_ON_ANTILAG;
// default 60.0
engineConfiguration->coastingFuelCutClt = 30;
// default 1500.0
engineConfiguration->coastingFuelCutRpmHigh = 2000;
// default 2.0
engineConfiguration->coastingFuelCutTps = 5;
// default 250.0
engineConfiguration->gppwm[0].pwmFrequency = 10;
// default 0.0
engineConfiguration->gppwm[0].dutyIfError = 10;
// default "Zero"
engineConfiguration->gppwm[0].loadAxis = GPPWM_Clt;
// default 250.0
engineConfiguration->gppwm[1].pwmFrequency = 125;
// default "Zero"
engineConfiguration->gppwm[1].loadAxis = GPPWM_Map;
// default "Zero"
engineConfiguration->gppwm[2].loadAxis = GPPWM_Tps;
// default "Zero"
engineConfiguration->gppwm[3].loadAxis = GPPWM_Tps;
// default 3.0
engineConfiguration->hpfpCamLobes = 0;
// default 10.0
engineConfiguration->hpfpPeakPos = 0;
// default 0.29
engineConfiguration->hpfpPumpVolume = 0;
// default 10.0
engineConfiguration->hpfpMinAngle = 0;
// default 30.0
engineConfiguration->hpfpActivationAngle = 0;
// default 2000.0
engineConfiguration->hpfpTargetDecay = 0;
// default 0.01
engineConfiguration->hpfpPidP = 0;
// default 3.0E-4
engineConfiguration->hpfpPidI = 0;
cannedtpsTpsAccelTable();
cannedboostTableOpenLoop();
cannedboostTableClosedLoop();
cannedscriptTable4();
cannedignitionTable();
cannedignitionIatCorrTable();
cannedveTable();
cannedmapEstimateTable();
cannedinjectionPhase();
cannedpedalToTpsTable();
cannedlambdaTable();
cannedtcuSolenoidTable();
cannedpostCrankingFactor();
```

View File

@ -0,0 +1,218 @@
static void cannedtpsTpsAccelTable() {
static const float hardCodedtpsTpsAccelTable[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{3.459, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{6.282, 2.880, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{11.927, 4.896, 2.500, 0.000, 0.000, 0.000, 0.000, 0.000, },
{14.515, 6.624, 4.250, 2.500, 0.000, 0.000, 0.000, 0.000, },
{16.589, 8.064, 5.750, 4.250, 2.500, 0.000, 0.000, 0.000, },
{18.144, 9.216, 7.000, 5.750, 4.250, 5.000, 0.000, 0.000, },
{19.181, 10.080, 8.000, 7.000, 5.750, 8.500, 5.000, 0.000, },
};
copyTable(config->tpsTpsAccelTable, hardCodedtpsTpsAccelTable);
}
static void cannedboostTableOpenLoop() {
static const float hardCodedboostTableOpenLoop[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, },
{28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, },
{42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, },
{58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, },
{72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, },
{86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, },
{100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, },
};
copyTable(config->boostTableOpenLoop, hardCodedboostTableOpenLoop);
}
static void cannedboostTableClosedLoop() {
static const float hardCodedboostTableClosedLoop[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, },
{28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, 28.000, },
{42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, 42.000, },
{58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, 58.000, },
{72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, 72.000, },
{86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, },
{100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, },
};
copyTable(config->boostTableClosedLoop, hardCodedboostTableClosedLoop);
}
static void cannedscriptTable4() {
static const float hardCodedscriptTable4[8][10] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(config->scriptTable4, hardCodedscriptTable4);
}
static void cannedignitionTable() {
static const float hardCodedignitionTable[16][16] = {
{15.000, 15.000, 15.000, 15.000, 21.800, 23.600, 26.900, 29.600, 32.300, 35.000, 37.100, 37.900, 38.400, 39.000, 39.900, 40.100, },
{15.000, 15.000, 15.000, 15.000, 21.800, 23.600, 26.900, 29.700, 32.100, 34.500, 36.600, 37.400, 38.100, 38.600, 39.500, 39.800, },
{15.000, 15.000, 15.000, 18.000, 21.800, 23.600, 26.900, 29.600, 31.800, 34.100, 36.100, 36.600, 37.400, 38.000, 39.000, 39.400, },
{15.000, 15.000, 15.000, 19.000, 20.800, 22.600, 25.800, 28.400, 30.400, 32.400, 34.300, 34.800, 35.600, 36.200, 37.200, 38.200, },
{15.000, 15.000, 15.000, 19.000, 20.800, 22.600, 25.600, 28.100, 30.000, 31.800, 33.600, 34.100, 35.000, 35.500, 36.900, 37.900, },
{15.000, 15.000, 16.000, 18.600, 20.200, 21.700, 23.400, 24.600, 26.800, 29.100, 31.300, 32.200, 33.400, 34.100, 35.200, 36.400, },
{14.800, 14.900, 16.100, 18.200, 19.400, 20.300, 21.700, 22.600, 24.700, 27.000, 29.200, 30.100, 31.400, 32.100, 33.300, 34.500, },
{13.800, 14.300, 15.200, 16.800, 18.300, 19.600, 20.700, 21.200, 23.300, 25.500, 27.700, 28.600, 30.100, 30.800, 32.100, 33.300, },
{13.600, 14.000, 14.500, 15.100, 16.800, 18.400, 19.400, 19.900, 21.900, 24.100, 26.300, 27.200, 28.800, 29.500, 30.900, 32.100, },
{13.500, 14.000, 14.300, 13.000, 14.900, 16.800, 18.000, 18.700, 20.600, 22.900, 23.700, 23.400, 23.200, 23.000, 22.800, 22.300, },
{12.800, 13.400, 13.600, 12.400, 14.300, 16.200, 17.400, 18.000, 19.900, 20.100, 20.900, 20.600, 20.400, 20.100, 19.900, 19.300, },
{11.200, 12.200, 12.400, 11.000, 12.900, 14.800, 15.900, 16.400, 18.300, 18.400, 19.200, 18.900, 18.500, 18.100, 17.800, 17.100, },
{9.100, 9.600, 10.400, 10.000, 12.000, 13.900, 14.900, 15.400, 17.300, 17.400, 18.100, 17.800, 17.400, 16.900, 16.600, 15.900, },
{4.700, 6.100, 7.400, 9.000, 11.000, 12.900, 13.900, 14.300, 16.200, 16.300, 17.000, 16.700, 16.200, 15.700, 15.300, 14.700, },
{2.200, 3.800, 4.800, 7.800, 9.800, 11.700, 12.600, 13.000, 14.800, 14.800, 15.600, 15.200, 14.700, 14.100, 13.700, 13.100, },
{0.300, 1.900, 2.900, 5.900, 7.900, 9.800, 10.700, 11.000, 12.700, 12.700, 13.600, 13.200, 12.600, 12.000, 11.600, 10.900, },
};
copyTable(config->ignitionTable, hardCodedignitionTable);
}
static void cannedignitionIatCorrTable() {
static const float hardCodedignitionIatCorrTable[8][8] = {
{4.000, 4.000, 4.000, 4.000, 4.000, 4.000, 4.000, 4.000, },
{2.900, 2.900, 2.900, 2.900, 2.900, 2.900, 2.900, 2.900, },
{0.700, 0.700, 0.700, 0.700, 0.700, 0.700, 0.700, 0.700, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{-0.600, -0.600, -0.600, -0.600, -0.600, -0.600, -0.600, -0.600, },
{-3.400, -3.400, -3.400, -3.400, -3.400, -3.400, -3.400, -3.400, },
{-4.000, -4.000, -4.000, -4.000, -4.000, -4.000, -4.000, -4.000, },
{-6.000, -6.000, -6.000, -6.000, -6.000, -6.000, -6.000, -6.000, },
};
copyTable(config->ignitionIatCorrTable, hardCodedignitionIatCorrTable);
}
static void cannedveTable() {
static const float hardCodedveTable[16][16] = {
{43.000, 41.700, 40.000, 32.000, 28.100, 27.200, 28.900, 24.900, 26.100, 27.400, 28.700, 29.900, 31.200, 32.500, 35.300, 36.800, },
{42.500, 40.800, 39.800, 37.100, 36.300, 36.800, 37.200, 37.900, 41.400, 42.700, 44.000, 45.400, 46.700, 48.000, 49.800, 51.100, },
{43.000, 41.200, 40.900, 41.600, 44.400, 45.800, 46.500, 47.800, 49.100, 50.400, 51.700, 53.100, 54.400, 55.700, 57.000, 58.300, },
{43.400, 44.000, 44.100, 47.400, 49.100, 50.800, 51.100, 51.900, 53.500, 54.600, 55.700, 56.800, 57.900, 59.000, 60.100, 61.200, },
{47.300, 47.600, 49.900, 51.500, 53.600, 53.700, 53.800, 54.900, 55.900, 57.000, 58.300, 59.100, 60.200, 61.300, 62.300, 63.400, },
{57.400, 55.400, 55.200, 55.400, 56.800, 57.800, 56.900, 55.700, 57.600, 58.600, 58.200, 60.100, 62.100, 64.100, 66.000, 68.000, },
{57.700, 58.600, 59.200, 58.500, 60.100, 60.300, 59.100, 58.800, 57.800, 58.800, 56.800, 59.700, 62.600, 65.500, 68.300, 71.200, },
{60.100, 62.100, 62.100, 60.900, 62.200, 62.000, 61.200, 61.600, 62.000, 62.500, 63.100, 63.600, 64.100, 66.700, 69.400, 72.100, },
{71.200, 66.000, 63.000, 62.800, 63.700, 63.400, 64.000, 64.700, 65.000, 65.500, 65.900, 66.200, 66.500, 68.800, 71.100, 73.400, },
{73.300, 66.900, 63.100, 64.500, 65.900, 65.900, 66.200, 65.300, 65.700, 66.000, 66.200, 66.500, 66.700, 68.900, 71.000, 73.200, },
{76.900, 68.500, 65.200, 64.400, 66.600, 67.100, 67.400, 66.500, 66.300, 66.100, 66.200, 68.400, 70.900, 73.200, 75.700, 78.300, },
{78.700, 68.300, 65.800, 63.200, 66.000, 67.300, 68.000, 67.000, 67.200, 67.500, 69.500, 71.600, 73.700, 75.600, 77.600, 79.700, },
{78.600, 68.800, 66.700, 64.600, 66.400, 66.900, 68.700, 69.500, 70.300, 71.100, 71.900, 72.700, 74.900, 76.900, 79.000, 81.100, },
{78.500, 69.300, 67.600, 66.000, 66.800, 66.500, 69.400, 70.300, 71.200, 72.000, 72.900, 73.800, 76.000, 78.200, 80.400, 82.600, },
{78.400, 69.700, 68.500, 67.300, 67.200, 66.000, 70.000, 71.000, 71.900, 72.900, 73.800, 74.800, 77.200, 79.400, 81.700, 84.000, },
{78.300, 70.200, 69.400, 68.700, 67.600, 65.600, 70.700, 71.700, 72.800, 73.800, 74.900, 75.900, 78.300, 80.700, 83.100, 85.400, },
};
copyTable(config->veTable, hardCodedveTable);
}
static void cannedmapEstimateTable() {
static const float hardCodedmapEstimateTable[16][16] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(config->mapEstimateTable, hardCodedmapEstimateTable);
}
static void cannedinjectionPhase() {
static const float hardCodedinjectionPhase[16][16] = {
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
{-246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -246.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, -330.000, },
};
copyTable(config->injectionPhase, hardCodedinjectionPhase);
}
static void cannedpedalToTpsTable() {
static const float hardCodedpedalToTpsTable[8][8] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{4.000, 4.000, 4.000, 4.000, 6.000, 7.000, 10.000, 10.000, },
{6.000, 8.000, 8.000, 8.000, 12.000, 14.000, 15.000, 15.000, },
{10.000, 10.000, 10.000, 12.000, 18.000, 20.000, 20.000, 20.000, },
{18.000, 18.000, 18.000, 20.000, 30.000, 33.000, 35.000, 35.000, },
{40.000, 40.000, 40.000, 50.000, 60.000, 65.000, 71.000, 71.000, },
{86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, 86.000, },
{100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, 100.000, },
};
copyTable(config->pedalToTpsTable, hardCodedpedalToTpsTable);
}
static void cannedlambdaTable() {
static const float hardCodedlambdaTable[16][16] = {
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.200, 14.200, 14.200, },
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.200, 14.200, 14.200, },
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.200, 14.200, 14.200, },
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.200, 14.200, 14.200, },
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.200, 14.200, 14.200, },
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.200, 14.000, 14.000, },
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.000, 14.000, },
{14.000, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.000, 14.000, },
{14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.000, 14.000, },
{14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.200, 14.000, 14.000, },
{14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.000, 14.000, 14.000, },
{14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.500, 14.700, 14.700, 14.700, 14.700, 14.700, 14.700, 14.000, 14.000, 14.000, },
{14.200, 14.200, 14.200, 14.300, 14.300, 14.300, 14.300, 14.300, 14.700, 14.700, 14.700, 14.700, 14.700, 14.300, 14.300, 14.300, },
{14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.200, 14.400, 14.400, 14.400, 14.400, 14.400, 14.200, 14.200, 14.200, },
{14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, 14.000, },
{13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, 13.900, },
};
copyTable(config->lambdaTable, hardCodedlambdaTable);
}
static void cannedtcuSolenoidTable() {
static const float hardCodedtcuSolenoidTable[6][10] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(config->tcuSolenoidTable, hardCodedtcuSolenoidTable);
}
static void cannedpostCrankingFactor() {
static const float hardCodedpostCrankingFactor[6][6] = {
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
{0.000, 0.000, 0.000, 0.000, 0.000, 0.000, },
};
copyTable(engineConfiguration->postCrankingFactor, hardCodedpostCrankingFactor);
}