SD card log fields list should be auto-generated #3985

progress
This commit is contained in:
rusefillc 2022-10-12 19:35:54 -04:00
parent 4aaa56436c
commit 7250f8f4dc
1 changed files with 102 additions and 37 deletions

View File

@ -1,5 +1,5 @@
static constexpr LogField fields[] = {
{packedTime, GAUGE_NAME_TIME, "sec", 0},
{packedTime, GAUGE_NAME_TIME, "sec", 0},
{engine->outputChannels.RPMValue, "RPM", "RPM", 0},
{engine->outputChannels.rpmAcceleration, "dRPM", "RPM/s", 2},
{engine->outputChannels.speedToRpmRatio, "Gearbox Ratio", "value", 2},
@ -140,40 +140,105 @@ static constexpr LogField fields[] = {
{engine->outputChannels.rawTps2Primary, "rawTps2Primary", "V", 3},
{engine->outputChannels.rawTps2Secondary, "rawTps2Secondary", "V", 3},
{engine->outputChannels.knockCount, "knock: count", "", 0},
{engine->outputChannels.AFRValue2, GAUGE_NAME_AFR2, "afr", 2},
{engine->outputChannels.lambdaValue2, GAUGE_NAME_LAMBDA2, "", 3},
{engine->outputChannels.accelerationZ, GAUGE_NAME_ACCEL_Z, "", 2},
{engine->outputChannels.accelerationRoll, GAUGE_NAME_ACCEL_ROLL, "", 2},
{engine->outputChannels.accelerationYaw, GAUGE_NAME_ACCEL_YAW, "", 2},
{engine->outputChannels.lowFuelPressure, GAUGE_NAME_FUEL_PRESSURE_LOW, GAUGE_NAME_FUEL_PRESSURE_LOW_UNITS, 0},
{engine->outputChannels.highFuelPressure, GAUGE_NAME_FUEL_PRESSURE_HIGH, GAUGE_NAME_FUEL_PRESSURE_HIGH_UNITS, 0},
{engine->outputChannels.vvtPositionB1E, GAUGE_NAME_VVT_B1E, "deg", 1},
{engine->outputChannels.vvtPositionB2I, GAUGE_NAME_VVT_B2I, "deg", 1},
{engine->outputChannels.vvtPositionB2E, GAUGE_NAME_VVT_B2E, "deg", 1},
{engine->outputChannels.vvtTargets[0], GAUGE_NAME_VVT_TARGET_B1I, "deg", 0},
{engine->outputChannels.vvtTargets[1], GAUGE_NAME_VVT_TARGET_B1E, "deg", 0},
{engine->outputChannels.vvtTargets[2], GAUGE_NAME_VVT_TARGET_B2I, "deg", 0},
{engine->outputChannels.vvtTargets[3], GAUGE_NAME_VVT_TARGET_B2E, "deg", 0},
{engine->outputChannels.wastegatePositionSensor, GAUGE_NAME_WG_POSITION, "%", 2},
{engine->outputChannels.idlePositionSensor, GAUGE_NAME_IDLE_POSITION, "%", 2},
{engine->outputChannels.injectorLagMs, GAUGE_NAME_INJECTOR_LAG, "ms", 3},
{engine->outputChannels.ignitionAdvance, GAUGE_NAME_TIMING_ADVANCE, "deg", 1},
// {engine->outputChannels.fuelingLoad, GAUGE_NAME_FUEL_LOAD, "%", 1},
// {engine->outputChannels.ignitionLoad, GAUGE_NAME_IGNITION_LOAD, "%", 1},
{engine->outputChannels.mafEstimate, GAUGE_NAME_AIR_FLOW_ESTIMATE, "kg/h", 1},
{engine->outputChannels.sparkCutReason, "Spark Cut Code", "", 0},
{engine->outputChannels.fuelCutReason, "Fuel Cut Code", "", 0},
{engine->outputChannels.auxLinear1, GAUGE_NAME_AUX_LINEAR_1, "", 2},
{engine->outputChannels.auxLinear2, GAUGE_NAME_AUX_LINEAR_2, "", 2},
{engine->outputChannels.boostControllerOutput, GAUGE_NAME_BOOST_OUTPUT, "%", 1},
{engine->outputChannels.boostControllerOpenLoopPart, GAUGE_NAME_BOOST_OPEN_LOOP, "%", 1},
{engine->outputChannels.gppwmOutput[0], "GPPWM Output 1", "%", 1},
{engine->outputChannels.gppwmOutput[1], "GPPWM Output 2", "%", 1},
{engine->outputChannels.gppwmOutput[2], "GPPWM Output 3", "%", 1},
{engine->outputChannels.gppwmOutput[3], "GPPWM Output 4", "%", 1},
{engine->outputChannels.accelerationZ, "Acceleration: Z", "G", 0},
{engine->outputChannels.accelerationRoll, "Acceleration: Roll", "G", 0},
{engine->outputChannels.accelerationYaw, "Acceleration: Yaw", "G", 0},
{engine->outputChannels.vvtTargets[0], "vvtTargets 1", "deg", 0},
{engine->outputChannels.vvtTargets[1], "vvtTargets 2", "deg", 0},
{engine->outputChannels.vvtTargets[2], "vvtTargets 3", "deg", 0},
{engine->outputChannels.vvtTargets[3], "vvtTargets 4", "deg", 0},
// {engine->outputChannels.turboSpeed, "Turbocharger Speed", "hz", 0},
// {engine->outputChannels.tps1Split, "tps1Split", "%", 2},
// {engine->outputChannels.tps2Split, "tps2Split", "%", 2},
// {engine->outputChannels.tps12Split, "tps12Split", "%", 2},
// {engine->outputChannels.accPedalSplit, "accPedalSplit", "%", 2},
// {engine->outputChannels.sparkCutReason, "Spark Cut Code", "code", 0},
// {engine->outputChannels.fuelCutReason, "Fuel Cut Code", "code", 0},
// {engine->outputChannels.mafEstimate, "MAF estimate", "kg/h", 0},
// {engine->outputChannels.instantRpm, "instantRpm", "rpm", 0},
// {engine->outputChannels.systemEventReuse, "systemEventReuse", "counter", 0},
// {engine->outputChannels.rawMap, "rawMap", "V", 3},
// {engine->outputChannels.rawAfr, "rawAfr", "V", 3},
// {engine->outputChannels.tpsAccelFrom, "tpsAccelFrom", "%", 0},
// {engine->outputChannels.tpsAccelTo, "tpsAccelTo", "%", 0},
// {engine->outputChannels.calibrationValue2, "calibrationValue2", "", 0},
// {engine->outputChannels.luaInvocationCounter, "luaInvocationCounter", "count", 0},
// {engine->outputChannels.luaLastCycleDuration, "luaLastCycleDuration", "nt", 0},
// {engine->outputChannels.testBenchIter, "testBenchIter", "count", 0},
// {engine->outputChannels.tcu_currentRange, "Current Range", "", 0},
// {engine->outputChannels.tcRatio, "Torque Converter Ratio", "value", 0},
// {engine->outputChannels.lastShiftTime, "lastShiftTime", "", 0},
// {engine->outputChannels.vssEdgeCounter, "vssEdgeCounter", "", 0},
// {engine->outputChannels.issEdgeCounter, "issEdgeCounter", "", 0},
// {engine->outputChannels.auxLinear1, "Aux Linear 1", "", 2},
// {engine->outputChannels.auxLinear2, "Aux Linear 2", "", 2},
// {engine->outputChannels.boostControllerOutput, "Boost Output", "%", 1},
// {engine->outputChannels.boostControllerOpenLoopPart, "Boost Open Loop", "%", 1},
// {engine->outputChannels.fallbackMap, "fallbackMap", "kPa", 1},
// {engine->outputChannels.detectedGear, "Detected Gear", "", 0},
// {engine->outputChannels.instantMAPValue, "Instant MAP", "kPa", 2},
// {engine->outputChannels.maxLockedDuration, "maxLockedDuration", "us", 0},
// {engine->outputChannels.maxTriggerReentrant, "maxTriggerReentrant", "", 0},
// {engine->outputChannels.canWriteOk, "canWriteOk", "", 3},
// {engine->outputChannels.canWriteNotOk, "canWriteNotOk", "", 3},
// {engine->outputChannels.triggerPrimaryFall, "triggerPrimaryFall", "", 3},
// {engine->outputChannels.triggerPrimaryRise, "triggerPrimaryRise", "", 3},
// {engine->outputChannels.triggerSecondaryFall, "triggerSecondaryFall", "", 3},
// {engine->outputChannels.triggerSecondaryRise, "triggerSecondaryRise", "", 3},
// {engine->outputChannels.triggerVvtFall, "triggerVvtFall", "", 3},
// {engine->outputChannels.triggerVvtRise, "triggerVvtRise", "", 3},
// {engine->outputChannels.starterState, "starterState", "", 3},
// {engine->outputChannels.starterRelayDisable, "starterRelayDisable", "", 3},
// {engine->outputChannels.multiSparkCounter, "multiSparkCounter", "", 3},
// {engine->outputChannels.alternatorStatus.pTerm, "alternatorStatus.pTerm", "", 2},
// {engine->outputChannels.alternatorStatus.iTerm, "alternatorStatus.iTerm", "", 2},
// {engine->outputChannels.alternatorStatus.dTerm, "alternatorStatus.dTerm", "", 2},
// {engine->outputChannels.alternatorStatus.output, "alternatorStatus.output", "", 2},
// {engine->outputChannels.alternatorStatus.error, "alternatorStatus.error", "", 2},
// {engine->outputChannels.alternatorStatus.resetCounter, "alternatorStatus.resetCounter", "", 0},
// {engine->outputChannels.idleStatus.pTerm, "idleStatus.pTerm", "", 2},
// {engine->outputChannels.idleStatus.iTerm, "idleStatus.iTerm", "", 2},
// {engine->outputChannels.idleStatus.dTerm, "idleStatus.dTerm", "", 2},
// {engine->outputChannels.idleStatus.output, "idleStatus.output", "", 2},
// {engine->outputChannels.idleStatus.error, "idleStatus.error", "", 2},
// {engine->outputChannels.idleStatus.resetCounter, "idleStatus.resetCounter", "", 0},
// {engine->outputChannels.etbStatus.pTerm, "etbStatus.pTerm", "", 2},
// {engine->outputChannels.etbStatus.iTerm, "etbStatus.iTerm", "", 2},
// {engine->outputChannels.etbStatus.dTerm, "etbStatus.dTerm", "", 2},
// {engine->outputChannels.etbStatus.output, "etbStatus.output", "", 2},
// {engine->outputChannels.etbStatus.error, "etbStatus.error", "", 2},
// {engine->outputChannels.etbStatus.resetCounter, "etbStatus.resetCounter", "", 0},
// {engine->outputChannels.boostStatus.pTerm, "boostStatus.pTerm", "", 2},
// {engine->outputChannels.boostStatus.iTerm, "boostStatus.iTerm", "", 2},
// {engine->outputChannels.boostStatus.dTerm, "boostStatus.dTerm", "", 2},
// {engine->outputChannels.boostStatus.output, "boostStatus.output", "", 2},
// {engine->outputChannels.boostStatus.error, "boostStatus.error", "", 2},
// {engine->outputChannels.boostStatus.resetCounter, "boostStatus.resetCounter", "", 0},
// {engine->outputChannels.auxSpeed1, "aux speed 1", "s", 0},
// {engine->outputChannels.auxSpeed2, "aux speed 2", "s", 0},
// {engine->outputChannels.ISSValue, "Input Shaft Speed", "RPM", 0},
// {engine->outputChannels.rawAnalogInput[0], "rawAnalogInput 1", "V", 3},
// {engine->outputChannels.rawAnalogInput[1], "rawAnalogInput 2", "V", 3},
// {engine->outputChannels.rawAnalogInput[2], "rawAnalogInput 3", "V", 3},
// {engine->outputChannels.rawAnalogInput[3], "rawAnalogInput 4", "V", 3},
// {engine->outputChannels.rawAnalogInput[4], "rawAnalogInput 5", "V", 3},
// {engine->outputChannels.rawAnalogInput[5], "rawAnalogInput 6", "V", 3},
// {engine->outputChannels.rawAnalogInput[6], "rawAnalogInput 7", "V", 3},
// {engine->outputChannels.rawAnalogInput[7], "rawAnalogInput 8", "V", 3},
// {engine->outputChannels.gppwmOutput[0], "GPPWM Output 1", "%", 2},
// {engine->outputChannels.gppwmOutput[1], "GPPWM Output 2", "%", 2},
// {engine->outputChannels.gppwmOutput[2], "GPPWM Output 3", "%", 2},
// {engine->outputChannels.gppwmOutput[3], "GPPWM Output 4", "%", 2},
// {engine->outputChannels.rawBattery, "rawBattery", "V", 3},
// {engine->outputChannels.extiOverflowCount, "extiOverflowCount", "", 0},
// {engine->outputChannels.ignBlendBias[0], "ignBlendBias 1", "%", 1},
// {engine->outputChannels.ignBlendBias[1], "ignBlendBias 2", "%", 1},
// {engine->outputChannels.ignBlendBias[2], "ignBlendBias 3", "%", 1},
// {engine->outputChannels.ignBlendBias[3], "ignBlendBias 4", "%", 1},
// {engine->outputChannels.ignBlendOutput[0], "ignBlendOutput 1", "deg", 2},
// {engine->outputChannels.ignBlendOutput[1], "ignBlendOutput 2", "deg", 2},
// {engine->outputChannels.ignBlendOutput[2], "ignBlendOutput 3", "deg", 2},
// {engine->outputChannels.ignBlendOutput[3], "ignBlendOutput 4", "deg", 2},
// {engine->outputChannels.outputRequestPeriod, "outputRequestPeriod", "", 0},
// {engine->outputChannels.mapFast, "mapFast", "", 0},
};