automation around outputs section #197

This commit is contained in:
rusefillc 2021-11-27 12:28:59 -05:00
parent e41a9ab7b0
commit 412d804350
5 changed files with 99 additions and 77 deletions

View File

@ -62,57 +62,57 @@ uint16_t rpmAcceleration;;"RPM/s",1, 0, 0, 0, 0
uint8_t autoscale knockRetard;;"",{1/10}, 0, 0, 0, 0 uint8_t autoscale knockRetard;;"",{1/10}, 0, 0, 0, 0
uint8_t unused37;;"",1, 0, 0, 0, 0 uint8_t unused37;;"",1, 0, 0, 0, 0
uint16_t autoscale VBatt;;"",{1/@@PACK_MULT_VOLTAGE@@}, 0, 0, 0, 0 uint16_t autoscale VBatt;;"V",{1/@@PACK_MULT_VOLTAGE@@}, 0, 0, 0, 0
uint16_t autoscale oilPressure;;"",{1/@@PACK_MULT_PRESSURE@@}, 0, 0, 0, 0 uint16_t autoscale oilPressure;;"kPa",{1/@@PACK_MULT_PRESSURE@@}, 0, 0, 0, 0
uint16_t autoscale vvtPositionB1I;;"deg",{1/@@PACK_MULT_ANGLE@@}, 0, 0, 0, 0 uint16_t autoscale vvtPositionB1I;;"deg",{1/@@PACK_MULT_ANGLE@@}, 0, 0, 0, 0
uint16_t autoscale chargeAirMass;;"",{1/1000}, 0, 0, 0, 0 uint16_t autoscale chargeAirMass;;"g",{1/1000}, 0, 0, 0, 0
uint16_t autoscale crankingFuelMass;airmass in mg, 0-65 grams;"",{1/@@PACK_MULT_FUEL_MASS@@}, 0, 0, 0, 0 uint16_t autoscale crankingFuelMass;airmass in mg, 0-65 grams;"ms",{1/@@PACK_MULT_FUEL_MASS@@}, 0, 0, 0, 0
uint16_t autoscale currentTargetAfr;;"",{1/@@PACK_MULT_AFR@@}, 0, 0, 0, 0 uint16_t autoscale currentTargetAfr;;"ratio",{1/@@PACK_MULT_AFR@@}, 0, 0, 0, 0
uint16_t autoscale fuelBase;This is the raw value we take from the fuel map or base fuel algorithm, before the corrections;"",{1/@@PACK_MULT_FUEL_MASS@@}, 0, 0, 0, 0 uint16_t autoscale fuelBase;This is the raw value we take from the fuel map or base fuel algorithm, before the corrections;"mg",{1/@@PACK_MULT_FUEL_MASS@@}, 0, 0, 0, 0
uint16_t autoscale fuelRunning;Total fuel with CLT IAT and TPS acceleration without injector lag corrections per cycle, as pulse per cycle;"",{1/@@PACK_MULT_FUEL_MASS@@}, 0, 0, 0, 0 uint16_t autoscale fuelRunning;Total fuel with CLT IAT and TPS acceleration without injector lag corrections per cycle, as pulse per cycle;"mg",{1/@@PACK_MULT_FUEL_MASS@@}, 0, 0, 0, 0
uint16_t autoscale actualLastInjection;Actual last injection time - including all compensation and injection mode;"",{1/@@PACK_MULT_MS@@}, 0, 0, 0, 0 uint16_t autoscale actualLastInjection;Actual last injection time - including all compensation and injection mode;"ms",{1/@@PACK_MULT_MS@@}, 0, 0, 0, 0
uint8_t autoscale injectorDutyCycle;;"",{1/2}, 0, 0, 0, 0 uint8_t autoscale injectorDutyCycle;;"%",{1/2}, 0, 0, 0, 0
uint8_t autoscale veValue;;"",{1/2}, 0, 0, 0, 0 uint8_t autoscale veValue;;"ratio",{1/2}, 0, 0, 0, 0
uint16_t autoscale injectionOffset;;"",{1/@@PACK_MULT_ANGLE@@}, 0, 0, 0, 0 uint16_t autoscale injectionOffset;;"deg",{1/@@PACK_MULT_ANGLE@@}, 0, 0, 0, 0
uint16_t autoscale tCharge;;"",{1/@@PACK_MULT_TEMPERATURE@@}, 0, 0, 0, 0 uint16_t autoscale tCharge;;"deg C",{1/@@PACK_MULT_TEMPERATURE@@}, 0, 0, 0, 0
! Corrections ! Corrections
uint16_t autoscale injectorLagMs;;"",{1/@@PACK_MULT_MS@@}, 0, 0, 0, 0 uint16_t autoscale injectorLagMs;;"ms",{1/@@PACK_MULT_MS@@}, 0, 0, 0, 0
uint16_t autoscale iatCorrection;;"",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0 uint16_t autoscale iatCorrection;;"%",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0
uint16_t autoscale cltCorrection;;"",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0 uint16_t autoscale cltCorrection;;"%",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0
uint16_t autoscale baroCorrection;;"",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0 uint16_t autoscale baroCorrection;;"%",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0
uint16_t autoscale currentEnginePhase;;"",1, 0, 0, 0, 0 uint16_t autoscale currentEnginePhase;;"deg",1, 0, 0, 0, 0
! Wall model AE ! Wall model AE
uint16_t autoscale wallFuelAmount;;"",{1/@@PACK_MULT_FUEL_MASS@@}, 0, 0, 0, 0 uint16_t autoscale wallFuelAmount;;"mg",{1/@@PACK_MULT_FUEL_MASS@@}, 0, 0, 0, 0
uint16_t autoscale wallFuelCorrection;;"",{1/@@PACK_MULT_FUEL_MASS@@}, 0, 0, 0, 0 uint16_t autoscale wallFuelCorrection;;"mg",{1/@@PACK_MULT_FUEL_MASS@@}, 0, 0, 0, 0
uint16_t unused76;;"",1, 0, 0, 0, 0 uint16_t unused76;;"",1, 0, 0, 0, 0
uint16_t autoscale deltaTps;TPS acceleration enrichment;"",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0 uint16_t autoscale deltaTps;TPS acceleration enrichment;"ratio",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0
uint16_t unused80;;"",1, 0, 0, 0, 0 uint16_t unused80;;"",1, 0, 0, 0, 0
uint16_t autoscale tpsAccelFuel;;"",{1/@@PACK_MULT_MS@@}, 0, 0, 0, 0 uint16_t autoscale tpsAccelFuel;;"ms",{1/@@PACK_MULT_MS@@}, 0, 0, 0, 0
! Ignition ! Ignition
uint16_t autoscale ignitionAdvance;;"",{1/@@PACK_MULT_ANGLE@@}, 0, 0, 0, 0 uint16_t autoscale ignitionAdvance;;"deg",{1/@@PACK_MULT_ANGLE@@}, 0, 0, 0, 0
uint16_t autoscale sparkDwell;;"",{1/@@PACK_MULT_MS@@}, 0, 0, 0, 0 uint16_t autoscale sparkDwellValue;;"ms",{1/@@PACK_MULT_MS@@}, 0, 0, 0, 0
uint16_t autoscale coilDutyCycle;;"",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0 uint16_t autoscale coilDutyCycle;;"%",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0
! Idle & ETB ! Idle & ETB
uint16_t autoscale idlePosition;;"",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0 uint16_t autoscale idleAirValvePosition;;"%",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0
uint16_t autoscale etbTarget;;"",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0 uint16_t autoscale etbTarget;;"%",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0
uint16_t autoscale etb1DutyCycle;;"",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0 uint16_t autoscale etb1DutyCycle;;"%",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0
uint16_t autoscale etb1Error;;"",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0 uint16_t autoscale etb1Error;;"%",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0
! Fuel system ! Fuel system
uint16_t autoscale fuelTankLevel;;"",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0 uint16_t autoscale fuelTankLevel;;"%",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0
uint16_t autoscale totalFuelConsumption;;"",1, 0, 0, 0, 0 uint16_t autoscale totalFuelConsumption;;"grams",1, 0, 0, 0, 0
uint16_t autoscale fuelFlowRate;;"",{1/@@PACK_MULT_FUEL_FLOW@@}, 0, 0, 0, 0 uint16_t autoscale fuelFlowRate;;"gram/s",{1/@@PACK_MULT_FUEL_FLOW@@}, 0, 0, 0, 0
! Y axis values for selectable tables ! Y axis values for selectable tables
uint16_t autoscale veTableYAxis;;"",{1/100}, 0, 0, 0, 0 uint16_t autoscale veTableYAxis;;"",{1/100}, 0, 0, 0, 0

View File

@ -1,4 +1,4 @@
// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on (unknown script) console/binary/output_channels.txt Sat Nov 27 05:37:21 PST 2021 // this section was generated automatically by rusEFI tool ConfigDefinition.jar based on (unknown script) console/binary/output_channels.txt Sat Nov 27 11:56:34 EST 2021
// by class com.rusefi.output.CHeaderConsumer // by class com.rusefi.output.CHeaderConsumer
// begin // begin
#pragma once #pragma once
@ -194,10 +194,12 @@ struct ts_outputs_s {
*/ */
uint8_t unused37 = (uint8_t)0; uint8_t unused37 = (uint8_t)0;
/** /**
V
* offset 38 * offset 38
*/ */
scaled_channel<uint16_t, 1000, 1> VBatt = (uint16_t)0; scaled_channel<uint16_t, 1000, 1> VBatt = (uint16_t)0;
/** /**
kPa
* offset 40 * offset 40
*/ */
scaled_channel<uint16_t, 30, 1> oilPressure = (uint16_t)0; scaled_channel<uint16_t, 30, 1> oilPressure = (uint16_t)0;
@ -207,74 +209,91 @@ struct ts_outputs_s {
*/ */
scaled_channel<uint16_t, 50, 1> vvtPositionB1I = (uint16_t)0; scaled_channel<uint16_t, 50, 1> vvtPositionB1I = (uint16_t)0;
/** /**
g
* offset 44 * offset 44
*/ */
scaled_channel<uint16_t, 1000, 1> chargeAirMass = (uint16_t)0; scaled_channel<uint16_t, 1000, 1> chargeAirMass = (uint16_t)0;
/** /**
* airmass in mg, 0-65 grams * airmass in mg, 0-65 grams
ms
* offset 46 * offset 46
*/ */
scaled_channel<uint16_t, 100, 1> crankingFuelMass = (uint16_t)0; scaled_channel<uint16_t, 100, 1> crankingFuelMass = (uint16_t)0;
/** /**
ratio
* offset 48 * offset 48
*/ */
scaled_channel<uint16_t, 1000, 1> currentTargetAfr = (uint16_t)0; scaled_channel<uint16_t, 1000, 1> currentTargetAfr = (uint16_t)0;
/** /**
* This is the raw value we take from the fuel map or base fuel algorithm, before the corrections * This is the raw value we take from the fuel map or base fuel algorithm, before the corrections
mg
* offset 50 * offset 50
*/ */
scaled_channel<uint16_t, 100, 1> fuelBase = (uint16_t)0; scaled_channel<uint16_t, 100, 1> fuelBase = (uint16_t)0;
/** /**
* Total fuel with CLT IAT and TPS acceleration without injector lag corrections per cycle, as pulse per cycle * Total fuel with CLT IAT and TPS acceleration without injector lag corrections per cycle, as pulse per cycle
mg
* offset 52 * offset 52
*/ */
scaled_channel<uint16_t, 100, 1> fuelRunning = (uint16_t)0; scaled_channel<uint16_t, 100, 1> fuelRunning = (uint16_t)0;
/** /**
* Actual last injection time - including all compensation and injection mode * Actual last injection time - including all compensation and injection mode
ms
* offset 54 * offset 54
*/ */
scaled_channel<uint16_t, 300, 1> actualLastInjection = (uint16_t)0; scaled_channel<uint16_t, 300, 1> actualLastInjection = (uint16_t)0;
/** /**
%
* offset 56 * offset 56
*/ */
scaled_channel<uint8_t, 2, 1> injectorDutyCycle = (uint8_t)0; scaled_channel<uint8_t, 2, 1> injectorDutyCycle = (uint8_t)0;
/** /**
ratio
* offset 57 * offset 57
*/ */
scaled_channel<uint8_t, 2, 1> veValue = (uint8_t)0; scaled_channel<uint8_t, 2, 1> veValue = (uint8_t)0;
/** /**
deg
* offset 58 * offset 58
*/ */
scaled_channel<uint16_t, 50, 1> injectionOffset = (uint16_t)0; scaled_channel<uint16_t, 50, 1> injectionOffset = (uint16_t)0;
/** /**
deg C
* offset 60 * offset 60
*/ */
scaled_channel<uint16_t, 100, 1> tCharge = (uint16_t)0; scaled_channel<uint16_t, 100, 1> tCharge = (uint16_t)0;
/** /**
ms
* offset 62 * offset 62
*/ */
scaled_channel<uint16_t, 300, 1> injectorLagMs = (uint16_t)0; scaled_channel<uint16_t, 300, 1> injectorLagMs = (uint16_t)0;
/** /**
%
* offset 64 * offset 64
*/ */
scaled_channel<uint16_t, 100, 1> iatCorrection = (uint16_t)0; scaled_channel<uint16_t, 100, 1> iatCorrection = (uint16_t)0;
/** /**
%
* offset 66 * offset 66
*/ */
scaled_channel<uint16_t, 100, 1> cltCorrection = (uint16_t)0; scaled_channel<uint16_t, 100, 1> cltCorrection = (uint16_t)0;
/** /**
%
* offset 68 * offset 68
*/ */
scaled_channel<uint16_t, 100, 1> baroCorrection = (uint16_t)0; scaled_channel<uint16_t, 100, 1> baroCorrection = (uint16_t)0;
/** /**
deg
* offset 70 * offset 70
*/ */
scaled_channel<uint16_t, 1, 1> currentEnginePhase = (uint16_t)0; scaled_channel<uint16_t, 1, 1> currentEnginePhase = (uint16_t)0;
/** /**
mg
* offset 72 * offset 72
*/ */
scaled_channel<uint16_t, 100, 1> wallFuelAmount = (uint16_t)0; scaled_channel<uint16_t, 100, 1> wallFuelAmount = (uint16_t)0;
/** /**
mg
* offset 74 * offset 74
*/ */
scaled_channel<uint16_t, 100, 1> wallFuelCorrection = (uint16_t)0; scaled_channel<uint16_t, 100, 1> wallFuelCorrection = (uint16_t)0;
@ -284,6 +303,7 @@ struct ts_outputs_s {
uint16_t unused76 = (uint16_t)0; uint16_t unused76 = (uint16_t)0;
/** /**
* TPS acceleration enrichment * TPS acceleration enrichment
ratio
* offset 78 * offset 78
*/ */
scaled_channel<uint16_t, 100, 1> deltaTps = (uint16_t)0; scaled_channel<uint16_t, 100, 1> deltaTps = (uint16_t)0;
@ -292,46 +312,57 @@ struct ts_outputs_s {
*/ */
uint16_t unused80 = (uint16_t)0; uint16_t unused80 = (uint16_t)0;
/** /**
ms
* offset 82 * offset 82
*/ */
scaled_channel<uint16_t, 300, 1> tpsAccelFuel = (uint16_t)0; scaled_channel<uint16_t, 300, 1> tpsAccelFuel = (uint16_t)0;
/** /**
deg
* offset 84 * offset 84
*/ */
scaled_channel<uint16_t, 50, 1> ignitionAdvance = (uint16_t)0; scaled_channel<uint16_t, 50, 1> ignitionAdvance = (uint16_t)0;
/** /**
ms
* offset 86 * offset 86
*/ */
scaled_channel<uint16_t, 300, 1> sparkDwell = (uint16_t)0; scaled_channel<uint16_t, 300, 1> sparkDwellValue = (uint16_t)0;
/** /**
%
* offset 88 * offset 88
*/ */
scaled_channel<uint16_t, 100, 1> coilDutyCycle = (uint16_t)0; scaled_channel<uint16_t, 100, 1> coilDutyCycle = (uint16_t)0;
/** /**
%
* offset 90 * offset 90
*/ */
scaled_channel<uint16_t, 100, 1> idlePosition = (uint16_t)0; scaled_channel<uint16_t, 100, 1> idleAirValvePosition = (uint16_t)0;
/** /**
%
* offset 92 * offset 92
*/ */
scaled_channel<uint16_t, 100, 1> etbTarget = (uint16_t)0; scaled_channel<uint16_t, 100, 1> etbTarget = (uint16_t)0;
/** /**
%
* offset 94 * offset 94
*/ */
scaled_channel<uint16_t, 100, 1> etb1DutyCycle = (uint16_t)0; scaled_channel<uint16_t, 100, 1> etb1DutyCycle = (uint16_t)0;
/** /**
%
* offset 96 * offset 96
*/ */
scaled_channel<uint16_t, 100, 1> etb1Error = (uint16_t)0; scaled_channel<uint16_t, 100, 1> etb1Error = (uint16_t)0;
/** /**
%
* offset 98 * offset 98
*/ */
scaled_channel<uint16_t, 100, 1> fuelTankLevel = (uint16_t)0; scaled_channel<uint16_t, 100, 1> fuelTankLevel = (uint16_t)0;
/** /**
grams
* offset 100 * offset 100
*/ */
scaled_channel<uint16_t, 1, 1> totalFuelConsumption = (uint16_t)0; scaled_channel<uint16_t, 1, 1> totalFuelConsumption = (uint16_t)0;
/** /**
gram/s
* offset 102 * offset 102
*/ */
scaled_channel<uint16_t, 200, 1> fuelFlowRate = (uint16_t)0; scaled_channel<uint16_t, 200, 1> fuelFlowRate = (uint16_t)0;
@ -640,4 +671,4 @@ struct ts_outputs_s {
}; };
// end // end
// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on (unknown script) console/binary/output_channels.txt Sat Nov 27 05:37:21 PST 2021 // this section was generated automatically by rusEFI tool ConfigDefinition.jar based on (unknown script) console/binary/output_channels.txt Sat Nov 27 11:56:34 EST 2021

View File

@ -88,9 +88,9 @@ static constexpr LogField fields[] = {
{tsOutputChannels.wallFuelCorrection, GAUGE_NAME_FUEL_WALL_CORRECTION, "ms", 3}, {tsOutputChannels.wallFuelCorrection, GAUGE_NAME_FUEL_WALL_CORRECTION, "ms", 3},
{tsOutputChannels.tpsAccelFuel, GAUGE_NAME_FUEL_TPS_EXTRA, "ms", 3}, {tsOutputChannels.tpsAccelFuel, GAUGE_NAME_FUEL_TPS_EXTRA, "ms", 3},
{tsOutputChannels.ignitionAdvance, GAUGE_NAME_TIMING_ADVANCE, "deg", 1}, {tsOutputChannels.ignitionAdvance, GAUGE_NAME_TIMING_ADVANCE, "deg", 1},
{tsOutputChannels.sparkDwell, GAUGE_COIL_DWELL_TIME, "ms", 1}, {tsOutputChannels.sparkDwellValue, GAUGE_COIL_DWELL_TIME, "ms", 1},
{tsOutputChannels.coilDutyCycle, GAUGE_NAME_DWELL_DUTY, "%", 0}, {tsOutputChannels.coilDutyCycle, GAUGE_NAME_DWELL_DUTY, "%", 0},
{tsOutputChannels.idlePosition, GAUGE_NAME_IAC, "%", 1}, {tsOutputChannels.idleAirValvePosition, GAUGE_NAME_IAC, "%", 1},
{tsOutputChannels.etbTarget, GAUGE_NAME_ETB_TARGET, "%", 2}, {tsOutputChannels.etbTarget, GAUGE_NAME_ETB_TARGET, "%", 2},
{tsOutputChannels.etb1DutyCycle, GAUGE_NAME_ETB_DUTY, "%", 1}, {tsOutputChannels.etb1DutyCycle, GAUGE_NAME_ETB_DUTY, "%", 1},
{tsOutputChannels.etb1Error, GAUGE_NAME_ETB_ERROR, "%", 3}, {tsOutputChannels.etb1Error, GAUGE_NAME_ETB_ERROR, "%", 3},

View File

@ -628,7 +628,7 @@ static void updateIgnition(int rpm) {
// that's weird logic. also seems broken for two stroke? // that's weird logic. also seems broken for two stroke?
tsOutputChannels.ignitionAdvance = timing > FOUR_STROKE_CYCLE_DURATION / 2 ? timing - FOUR_STROKE_CYCLE_DURATION : timing; tsOutputChannels.ignitionAdvance = timing > FOUR_STROKE_CYCLE_DURATION / 2 ? timing - FOUR_STROKE_CYCLE_DURATION : timing;
// 60 // 60
tsOutputChannels.sparkDwell = engine->engineState.sparkDwell; tsOutputChannels.sparkDwellValue = engine->engineState.sparkDwell;
tsOutputChannels.coilDutyCycle = getCoilDutyCycle(rpm); tsOutputChannels.coilDutyCycle = getCoilDutyCycle(rpm);
@ -761,7 +761,7 @@ void updateTunerStudioState(TunerStudioOutputChannels *tsOutputChannels) {
#endif /* EFI_MAX_31855 */ #endif /* EFI_MAX_31855 */
#if EFI_IDLE_CONTROL #if EFI_IDLE_CONTROL
tsOutputChannels->idlePosition = getIdlePosition(); tsOutputChannels->idleAirValvePosition = getIdlePosition();
#endif #endif
tsOutputChannels->warningCounter = engine->engineState.warnings.warningCounter; tsOutputChannels->warningCounter = engine->engineState.warnings.warningCounter;

View File

@ -235,42 +235,31 @@ baroPressure = scalar, U16, 32, "kPa", 0.03333333333333333, 0
lambdaValue = scalar, U16, 34, "", 1.0E-4, 0 lambdaValue = scalar, U16, 34, "", 1.0E-4, 0
knockRetard = scalar, U08, 36, "", 0.1, 0 knockRetard = scalar, U08, 36, "", 0.1, 0
unused37 = scalar, U08, 37, "", 1, 0 unused37 = scalar, U08, 37, "", 1, 0
VBatt = scalar, U16, 38, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0.0 VBatt = scalar, U16, 38, "V", 0.001, 0
oilPressure = scalar, U16, 40, "kPa",{1/@@PACK_MULT_PRESSURE@@}, 0.0 oilPressure = scalar, U16, 40, "kPa", 0.03333333333333333, 0
vvtPositionB1I = scalar, S16, 42, "deg",{1/@@PACK_MULT_ANGLE@@}, 0 vvtPositionB1I = scalar, U16, 42, "deg", 0.02, 0
chargeAirMass = scalar, U16, 44, "g", 0.001, 0
; 10 bit TPS ADC value (from 0 to 1023 in 5v scale) crankingFuelMass = scalar, U16, 46, "ms", 0.01, 0
;tpsADC2 = scalar, U16, 44, "ADC", 1, 0.0; currentTargetAfr = scalar, U16, 48, "ratio", 0.001, 0
fuelBase = scalar, U16, 50, "mg", 0.01, 0
; fuel math fuelRunning = scalar, U16, 52, "mg", 0.01, 0
chargeAirMass = scalar, U16, 44, "g",0.001, 0 actualLastInjection = scalar, U16, 54, "ms", 0.0033333333333333335, 0
crankingFuelMs = scalar, U16, 46, "mg",{1/@@PACK_MULT_FUEL_MASS@@}, 0.0 injectorDutyCycle = scalar, U08, 56, "%", 0.5, 0
currentTargetAfr= scalar, U16, 48, "ratio",{1/@@PACK_MULT_AFR@@}, 0 veValue = scalar, U08, 57, "ratio", 0.5, 0
baseFuel = scalar, U16, 50, "mg",{1/@@PACK_MULT_FUEL_MASS@@}, 0 injectionOffset = scalar, U16, 58, "deg", 0.02, 0
fuelRunning = scalar, U16, 52, "mg",{1/@@PACK_MULT_FUEL_MASS@@}, 0 tCharge = scalar, U16, 60, "deg C", 0.01, 0
actualLastInjection=scalar,U16, 54, "ms",{1/@@PACK_MULT_MS@@}, 0.0 injectorLagMs = scalar, U16, 62, "ms", 0.0033333333333333335, 0
injectorDutyCycle=scalar, U08, 56, "%", 0.5, 0 iatCorrection = scalar, U16, 64, "%", 0.01, 0
veValue = scalar, U08, 57, "ratio", 0.5, 0 cltCorrection = scalar, U16, 66, "%", 0.01, 0
injectionOffset = scalar, S16, 58, "deg",{1/@@PACK_MULT_ANGLE@@}, 0 baroCorrection = scalar, U16, 68, "%", 0.01, 0
tCharge = scalar, U16, 60, "deg C",{1/@@PACK_MULT_TEMPERATURE@@}, 0.0 currentEnginePhase = scalar, U16, 70, "deg", 1, 0
currentEnginePhase = scalar, U16, 70, "deg", 1, 0
; Corrections wallFuelAmount = scalar, U16, 72, "mg", 0.01, 0
injectorLagMs = scalar, U16, 62, "ms",{1/@@PACK_MULT_MS@@}, 0.0 wallFuelCorrection = scalar, U16, 74, "mg", 0.01, 0
iatCorrection = scalar, S16, 64, "%",{1/@@PACK_MULT_PERCENT@@}, 0 unused76 = scalar, U16, 76, "", 1, 0
cltCorrection = scalar, S16, 66, "%",{1/@@PACK_MULT_PERCENT@@}, 0 deltaTps = scalar, U16, 78, "ratio", 0.01, 0
baroCorrection = scalar, S16, 68, "%",{1/@@PACK_MULT_PERCENT@@}, 0 unused80 = scalar, U16, 80, "", 1, 0
fuelPidCorrection=scalar, S16, 296, "%",{1/@@PACK_MULT_PERCENT@@}, 0 tpsAccelFuel = scalar, U16, 82, "ms", 0.0033333333333333335, 0
fuelPidCorrection2=scalar, S16, 298, "%",{1/@@PACK_MULT_PERCENT@@}, 0
; Wall model AE
wallFuelAmount = scalar, U16, 72, "mg",{1/@@PACK_MULT_FUEL_MASS@@}, 0
wallFuelCorrection=scalar, S16, 74, "mg",{1/@@PACK_MULT_FUEL_MASS@@}, 0
; TPS/load AE
unusedLoadDelta = scalar, S16, 76, "value",{1/@@PACK_MULT_PERCENT@@}, 0
deltaTps = scalar, S16, 78, "ratio",{1/@@PACK_MULT_PERCENT@@}, 0
unusedLoadAccelExtra=scalar,S16, 80, "value",{1/@@PACK_MULT_PERCENT@@}, 0
tpsAccelFuel = scalar, U16, 82, "ms",{1/@@PACK_MULT_MS@@}, 0
; Ignition ; Ignition
ignitionAdvance = scalar, S16, 84, "deg",{1/@@PACK_MULT_ANGLE@@}, 0.0 ignitionAdvance = scalar, S16, 84, "deg",{1/@@PACK_MULT_ANGLE@@}, 0.0
@ -407,6 +396,9 @@ unused37 = scalar, U08, 37, "", 1, 0
vvtPositionB2I=scalar,S16, 292, "deg",{1/@@PACK_MULT_ANGLE@@}, 0 vvtPositionB2I=scalar,S16, 292, "deg",{1/@@PACK_MULT_ANGLE@@}, 0
vvtPositionB2E=scalar,S16, 294, "deg",{1/@@PACK_MULT_ANGLE@@}, 0 vvtPositionB2E=scalar,S16, 294, "deg",{1/@@PACK_MULT_ANGLE@@}, 0
fuelPidCorrection=scalar, S16, 296, "%",{1/@@PACK_MULT_PERCENT@@}, 0
fuelPidCorrection2=scalar, S16, 298, "%",{1/@@PACK_MULT_PERCENT@@}, 0
vvtTargetB1I = scalar, S08, 314, "deg", 1, 0 vvtTargetB1I = scalar, S08, 314, "deg", 1, 0
vvtTargetB1E = scalar, S08, 315, "deg", 1, 0 vvtTargetB1E = scalar, S08, 315, "deg", 1, 0
vvtTargetB2I = scalar, S08, 316, "deg", 1, 0 vvtTargetB2I = scalar, S08, 316, "deg", 1, 0
@ -418,7 +410,6 @@ unused37 = scalar, U08, 37, "", 1, 0
rawTps2Primary = scalar, U16, 302, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0.0 rawTps2Primary = scalar, U16, 302, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0.0
rawTps2Secondary = scalar, U16, 304, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0.0 rawTps2Secondary = scalar, U16, 304, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0.0
currentEnginePhase = scalar, U16, 70, "deg", 1, 0
; ;
; see TunerStudioOutputChannels struct ; see TunerStudioOutputChannels struct
; ;
@ -3764,7 +3755,7 @@ cmd_set_engine_type_default = "@@TS_IO_TEST_COMMAND_char@@\x00\x31\x00\x00"
field = "Trailing Pin 4", trailingCoilPins4 field = "Trailing Pin 4", trailingCoilPins4
dialog = parkingLot, "Experimental/Broken" dialog = parkingLot, "Experimental/Broken"
field = "mapCamDetectionAnglePosition", mapCapDetectionAnglePosition field = "mapCamDetectionAnglePosition", mapCamDetectionAnglePosition
field = "mapCamDetectionThreshold", mapCamDetectionThreshold field = "mapCamDetectionThreshold", mapCamDetectionThreshold
field = "#System hacks" field = "#System hacks"
field = "Global fuel correction", globalFuelCorrection field = "Global fuel correction", globalFuelCorrection