mirror of https://github.com/rusefi/rusefi-1.git
1677 lines
79 KiB
Plaintext
1677 lines
79 KiB
Plaintext
; this is TunerStudio project for www.rusefi.com DIY engine management system
|
||
|
||
; this should stop TS from looking for the CAN ID in the 2nd byte location and allow the page reads to work correctly.
|
||
enable2ndByteCanID = false
|
||
|
||
#unset tuneByMAF
|
||
|
||
[TunerStudio]
|
||
queryCommand = "S"
|
||
versionInfo = "V" ; firmwave version for title bar.
|
||
signature = "MShift v0.02" ; signature is expected to be 7 or more characters.
|
||
|
||
[Constants]
|
||
; new packet serial format with CRC
|
||
messageEnvelopeFormat = msEnvelope_1.0
|
||
|
||
endianness = little
|
||
nPages = 1
|
||
|
||
|
||
pageIdentifier = "\x00\x00"
|
||
pageReadCommand = "R\x00\x00%2o%2c"
|
||
burnCommand = "B\x00\x00"
|
||
pageActivate = "P\x00\x00"
|
||
pageValueWrite = "W\x00\x00%2o%v"
|
||
pageChunkWrite = "C\x00\x00%2o%2c%v"
|
||
; crc32CheckCommand = "k%2i%2o\xB8\x36"
|
||
crc32CheckCommand = "k\x00\x00\x00\x00\x36\xB8"
|
||
|
||
;communication settings
|
||
pageActivationDelay = 500 ; Milliseconds delay after burn command. See https://sourceforge.net/p/rusefi/tickets/77/
|
||
;e.g. put writeblocks off and add an interwrite delay
|
||
writeBlocks = on
|
||
interWriteDelay = 10
|
||
blockReadTimeout = 3000; Milliseconds general timeout
|
||
|
||
; delayAfterPortOpen = 500
|
||
|
||
blockingFactor = 400 ; max chunk size
|
||
;end communication settings
|
||
|
||
; name = bits, type, offset, bits
|
||
; name = array, type, offset, shape, units, scale, translate, lo, hi, digits
|
||
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
|
||
|
||
; see PAGE_0_SIZE in C source code
|
||
; CONFIG_DEFINITION_START
|
||
|
||
; this section will be generated automatically by ConfigDefinition.jar based on rusefi_config.txt
|
||
|
||
; CONFIG_DEFINITION_END
|
||
|
||
|
||
[Tuning]
|
||
spotDepth = 2 ; 0 = no indicators, 1 = Z only, 2 = XYZ indicators.
|
||
cursorDepth = 2 ; Same as spot depth.
|
||
|
||
gaugeColumns = 1 ; Only 1 or 2 are valid.
|
||
|
||
pageButtons = "&EGO"
|
||
gauge1 = tachometer
|
||
gauge2 = afr1Gauge
|
||
gauge3 = mapGaugeValue
|
||
gauge4 = veValueGauge
|
||
|
||
|
||
[VeAnalyze]
|
||
|
||
; tableName, lambdaTargetTableName, lambdaChannel, egoCorrectionChannel, activeCondition
|
||
#if tuneByMAF
|
||
veAnalyzeMap = fuelTableTbl, afrTableTbl, AFRactual, egoCorrection, { 1 }
|
||
#else
|
||
veAnalyzeMap = veTableTbl, afrTableTbl, AFRactual, egoCorrection, { 1 }
|
||
#endif
|
||
;lambdaTargetTables = afrTable1Tbl, afrTable2Tbl, afrTSCustom
|
||
|
||
; filter = Name, "DisplayName", outputChannel, operator, defaultVal, userAdjustable
|
||
filter = minRPMFilter, "Minimum RPM", rpm, < , 500, , true
|
||
|
||
#if CELSIUS
|
||
filter = minCltFilter, "Minimum CLT", coolant, < , 60, , true
|
||
#else
|
||
filter = minCltFilter, "Minimum CLT", coolant, < , 160, , true
|
||
#endif
|
||
|
||
filter = deltaTps, "dTPS", deltaTps > , 50, , true
|
||
|
||
filter = VBatt, "VBatt", VBatt < , 12, , true
|
||
|
||
; filter = minTps, "Minimum TPS", TPS, > , 1, , true
|
||
|
||
|
||
;[VeAnalyze]
|
||
; fuelAnalyzeMap = fuelTableTbl, afrTableTbl, AFRactual, egoCorrection , { 1 }
|
||
; filter = minRPMFilter, "Minimum RPM", rpm, < , 500, , true
|
||
|
||
|
||
|
||
[OutputChannels]
|
||
|
||
; see TS_FILE_VERSION in firmware code
|
||
fileVersion = { 20161225 }
|
||
|
||
ochGetCommand = "O"
|
||
|
||
; see TS_OUTPUT_SIZE in console source code
|
||
ochBlockSize = 356
|
||
|
||
rpm = scalar, U32, 0, "RPM", 1, 0.00000
|
||
#if CELSIUS
|
||
coolant = scalar, F32, 4, "<22>C", 1, 0.0
|
||
#else
|
||
coolant = scalar, F32, 4, "<22>F", {9/5}, 17.77777
|
||
#endif
|
||
#if CELSIUS
|
||
intake = scalar, F32, 8, "<22>C", 1, 0.0
|
||
#else
|
||
intake = scalar, F32, 8, "<22>F", {9/5}, 17.77777
|
||
#endif
|
||
TPS = scalar, F32, 12, "%", 1, 0
|
||
MAF = scalar, F32, 16, "V", 1, 0
|
||
AFRactual = scalar, F32, 20, "AFR", 1, 0.0
|
||
engineLoad = scalar, F32, 24, "%", 1, 0.0 ; Blend of MAP and TPS, depends on algorithm
|
||
VBatt = scalar, F32, 28, "V", 1, 0.0
|
||
; 10 bit TPS ADC value (from 0 to 1023 in 5v scale)
|
||
tpsADC = scalar, U16, 32, "ADC", 1, 0.0;
|
||
alignmet = scalar, U16, 34, "al", 1, 0.0;
|
||
baroPressure = scalar, F32, 36, "pres", 1, 0.0;
|
||
MAPValue = scalar, F32, 40, "MAP", 1, 0.0;
|
||
; total fuel squirt duration (in MS) per engine cycle according to current CLT
|
||
crankingFuel = scalar, F32, 44, "ms", 1, 0.0;
|
||
baseFuel = scalar, F32, 48, "ms", 1, 0
|
||
tCharge = scalar, F32, 52, "T", 1, 0.0;
|
||
ignitionAdvance = scalar, F32, 56, "deg", 1, 0.0;
|
||
sparkDwellValue = scalar, F32, 60, "ms", 1, 0.0;
|
||
; actual total Ms time per engine cycle with all corrections
|
||
pulseWidth = scalar, F32, 64, "ms", 1, 0.0;
|
||
debugFloatField1 = scalar, F32, 68, "val", 1, 0.0;
|
||
|
||
hasSdCard = bits, U32, 72, [0:0], "true", "false";
|
||
isIgnitionEnabledIndicator=bits, U32, 72, [1:1], "true", "false";
|
||
ind_injection_enabled=bits,U32, 72, [2:2], "true", "false";
|
||
isCylinderCleanupEnabled=bits, U32, 72, [3:3], "true", "false";
|
||
isCylinderCleanupActivated=bits,U32,72, [4:4], "true", "false";
|
||
ind_fuel_pump = bits, U32, 72, [5:5], "true", "false";
|
||
ind_fan = bits, U32, 72, [6:6], "true", "false";
|
||
ind_o2_heater = bits, U32, 72, [7:7], "true", "false";
|
||
ind_check_engine= bits, U32, 72, [8:8], "true", "false";
|
||
needBurn = bits, U32, 72, [9:9], "true", "false";
|
||
ind_2nd_trigger_en=bits, U32, 72, [10:10], "true", "false";
|
||
clutchUpState =bits, U32, 72, [11:11], "true", "false";
|
||
clutchDownState =bits, U32, 72, [12:12], "true", "false";
|
||
knockEverIndicator=bits, U32, 72, [13:13], "true", "false";
|
||
knockNowIndicator=bits, U32, 72, [14:14], "true", "false";
|
||
brakePedalIndicator=bits, U32, 72, [15:15], "true", "false";
|
||
vehicleSpeedKph = scalar, F32, 76, "kph", 1, 0.0;
|
||
|
||
ind_tps_error = bits, U32, 80, [0:0], "true", "false";
|
||
ind_clt_error = bits, U32, 80, [1:1], "true", "false";
|
||
ind_map_error = bits, U32, 80, [2:2], "true", "false";
|
||
ind_iat_error = bits, U32, 80, [3:3], "true", "false";
|
||
ind_isTriggerError = bits, U32, 80, [5:5], "true", "false";
|
||
ind_hasFatalError=bits, U32, 80, [6:6], "true", "false";
|
||
ind_isWarnNow =bits, U32, 80, [7:7], "true", "false";
|
||
firmwareTsVersion = scalar,U32, 84, "version_p", 1, 0
|
||
egt1 = scalar, S16, 88, "<22>C", 1, 0
|
||
egt2 = scalar, S16, 90, "<22>C", 1, 0
|
||
egt3 = scalar, S16, 92, "<22>C", 1, 0
|
||
egt4 = scalar, S16, 94, "<22>C", 1, 0
|
||
egt5 = scalar, S16, 96, "<22>C", 1, 0
|
||
egt6 = scalar, S16, 98, "<22>C", 1, 0
|
||
egt7 = scalar, S16, 100, "<22>C", 1, 0
|
||
egt8 = scalar, S16, 102, "<22>C", 1, 0
|
||
rpmAcceleration = scalar, F32, 104, "dRpm", 1, 0
|
||
massAirFlowValue= scalar, F32, 108, "Kg/h", 1, 0
|
||
veValue = scalar, F32, 112, "ratio", 1, 0
|
||
deltaTps = scalar, F32, 116, "ratio", 1, 0
|
||
triggerErrorsCounter = scalar, U32,120, "counter", 1, 0
|
||
engineLoadAccelExtra = scalar,F32, 124, "value", 1, 0
|
||
tpsAccelFuel = scalar, F32, 128, "ms", 1, 0
|
||
baroCorrection = scalar, F32, 132, "%", 1, 0
|
||
pedalPosition = scalar, F32, 136, "%", 1, 0
|
||
injectorDutyCycle= scalar, F32, 140, "%", 1, 0
|
||
knockCount = scalar, U32, 144, "counter", 1, 0
|
||
; fuelLevel 148
|
||
knockLevel = scalar, F32, 152, "Volts", 1, 0
|
||
; totalTriggerErrorCounter 156
|
||
wallFuelAmount = scalar, F32, 160, "ms", 1, 0
|
||
iatCorrection = scalar, F32, 164, "%", 1, 0
|
||
wallFuelCorrection = scalar, F32, 168, "ms", 1, 0
|
||
curIdlePosition = scalar, F32, 172, "percent", 1, 0
|
||
cltCorrection = scalar, F32, 184, "%", 1, 0
|
||
debugIntField1 = scalar, U32, 192, "val", 1, 0.0;
|
||
debugFloatField2 = scalar, F32, 200, "val", 1, 0.0;
|
||
debugFloatField3 = scalar, F32, 204, "val", 1, 0.0;
|
||
debugFloatField4 = scalar, F32, 208, "val", 1, 0.0;
|
||
debugFloatField5 = scalar, F32, 212, "val", 1, 0.0;
|
||
debugIntField2 = scalar, U32, 216, "val", 1, 0.0;
|
||
debugIntField3 = scalar, U32, 220, "val", 1, 0.0;
|
||
engineLoadDelta = scalar,F32, 228, "value", 1, 0
|
||
speedToRpmRatio = scalar,F32, 232, "value", 1, 0
|
||
warningCounter = scalar,U32, 236, "count", 1, 0
|
||
lastErrorCode = scalar,U32, 240, "error", 1, 0
|
||
internalMcuTemperature = scalar,F32, 244, "C", 1, 0
|
||
vvtPosition = scalar,F32, 248, "deg", 1, 0
|
||
engineMode = scalar, U32, 252, "em", 1, 0.0;
|
||
debugFloatField6 = scalar, F32, 256, "val", 1, 0.0;
|
||
debugFloatField7 = scalar, F32, 260, "val", 1, 0.0;
|
||
firmwareVersion = scalar,U32, 264, "version_f", 1, 0
|
||
fuelPidCorrection = scalar, F32, 268, "ms", 1, 0
|
||
coilDutyCycle = scalar, F32, 272, "perc", 1, 0
|
||
|
||
egoCorrection = { 100 }
|
||
time = { timeNow }
|
||
; engineLoad = { fuleAlgorithm == 0 ? MAF : TPS }
|
||
|
||
[CurveEditor]
|
||
; xAxis = leftValue, rightValue, step
|
||
; yAxis = bottomValue, topValue, step
|
||
|
||
|
||
curve = knockThresholdCurve, "Engine knock threshold RPM based"
|
||
columnLabel = "RPM", "Threshold"
|
||
xAxis = 0, 8000, 10
|
||
yAxis = 0, 8, 10
|
||
xBins = knockNoiseRpmBins, rpm
|
||
yBins = knockNoise
|
||
gauge = rpm
|
||
|
||
curve = mapAccelTaper, "Engine Load Acceleration Enrichment Taper"
|
||
columnLabel = "Distance", "Multiplier"
|
||
xAxis = 0, 128, 10
|
||
yAxis = -5, 5, 10
|
||
xBins = mapAccelTaperBins
|
||
yBins = mapAccelTaperMult
|
||
|
||
curve = dwellCorrection, "Dwell time RPM based"
|
||
columnLabel = "RPM", "Dwell"
|
||
xAxis = 0, 8000, 10
|
||
yAxis = 0, 30, 10
|
||
xBins = sparkDwellRpmBins, rpm
|
||
yBins = sparkDwellValues
|
||
gauge = rpm
|
||
|
||
curve = map_samplingAngleCurve, "MAP Sampling Start Angle"
|
||
columnLabel = "RPM", "Angle"
|
||
xAxis = 0, 8000, 10
|
||
yAxis = 0, 180, 10
|
||
xBins = map_samplingAngleBins, rpm
|
||
yBins = map_samplingAngle
|
||
gauge = rpm
|
||
|
||
curve = map_samplingWindowCurve, "MAP Sampling Duration"
|
||
columnLabel = "RPM", "Window"
|
||
xAxis = 0, 8000, 10
|
||
yAxis = 0, 180, 10
|
||
xBins = map_samplingWindowBins, rpm
|
||
yBins = map_samplingWindow
|
||
gauge = rpm
|
||
|
||
curve = injectorsDeadTime, "Injector Dead Time by VBatt"
|
||
columnLabel = "Voltage", "Dead Time"
|
||
xAxis = 8, 21, 10
|
||
yAxis = -3, 3, 10
|
||
xBins = injector_battLagCorrBins, VBatt
|
||
yBins = injector_battLagCorr
|
||
gauge = VBattGauge
|
||
|
||
curve = mafDecodingCurve, "MAF Sensor Settings"
|
||
columnLabel = "Voltage", "kg/hour"
|
||
xAxis = -1, 6, 10
|
||
yAxis = -30, 1300, 10
|
||
xBins = mafDecodingBins, MAF
|
||
yBins = mafDecoding
|
||
gauge = mafGaugeVolts
|
||
|
||
curve = iatFuelCorrCurve, "Intake air temperature fuel Multiplier"
|
||
columnLabel = "Coolant", "Multiplier"
|
||
xAxis = -40, 120, 10
|
||
yAxis = 0, 5, 10
|
||
xBins = iatFuelCorrBins, intake
|
||
yBins = iatFuelCorr
|
||
gauge = IATGauge
|
||
|
||
curve = cltTimingCorrCurve, "Warmup timing correction"
|
||
columnLabel = "Coolant", "Extra"
|
||
xAxis = -40, 120, 10
|
||
yAxis = 0, 50, 100
|
||
xBins = cltTimingBins, coolant
|
||
yBins = cltTimingExtra
|
||
gauge = CLTGauge
|
||
|
||
curve = cltFuelCorrCurve, "Warmup fuel manual Multiplier"
|
||
columnLabel = "Coolant", "Multiplier"
|
||
xAxis = -40, 120, 10
|
||
yAxis = 0, 50, 100
|
||
xBins = cltFuelCorrBins, coolant
|
||
yBins = cltFuelCorr
|
||
gauge = CLTGauge
|
||
|
||
curve = crankingCltCurve, "Cranking Coolant Temperature multiplier"
|
||
columnLabel = "Coolant", "Multiplier"
|
||
xAxis = -40, 120, 10
|
||
yAxis = 0, 5, 10
|
||
xBins = crankingFuelBins, coolant
|
||
yBins = crankingFuelCoef
|
||
gauge = CLTGauge
|
||
|
||
curve = crankingTpsCurve, "Cranking TPS Multiplier"
|
||
columnLabel = "TPS", "Multiplier"
|
||
xAxis = -40, 120, 10
|
||
yAxis = 0, 5, 10
|
||
xBins = crankingTpsBins, TPS
|
||
yBins = crankingTpsCoef
|
||
gauge = throttleGauge
|
||
|
||
curve = crankingDurationCurve, "Cranking Duration Multiplier"
|
||
columnLabel = "Engine Cycle", "Multiplier"
|
||
xAxis = 0, 1000, 10
|
||
yAxis = 0, 5, 10
|
||
xBins = crankingCycleBins
|
||
yBins = crankingCycleCoef
|
||
|
||
|
||
curve = cltIdleCurve, "Warmup IAC position manual Multiplier"
|
||
columnLabel = "Coolant", "Multiplier"
|
||
xAxis = -40, 120, 10
|
||
yAxis = 0, 50, 100
|
||
xBins = cltIdleCorrBins, coolant
|
||
yBins = cltIdleCorr
|
||
gauge = CLTGauge
|
||
|
||
curve = warmupTargetAfrCurve, "CLT-based target AFR"
|
||
columnLabel = "Coolant", "Correction"
|
||
xAxis = -40, 120, 10
|
||
yAxis = 0, 50, 100
|
||
xBins = warmupTargetAfrBins, coolant
|
||
yBins = warmupTargetAfr
|
||
gauge = CLTGauge
|
||
|
||
[TableEditor]
|
||
; table_id, map3d_id, "title", page
|
||
table = fuelTableTbl, fuelTableMap, "Fuel Table", 1
|
||
; constant, variable
|
||
xBins = fuelRpmBins, rpm
|
||
yBins = fuelLoadBins, engineLoad
|
||
zBins = fuelTable
|
||
; gridHeight = 2.0
|
||
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
||
upDownLabel = "(RICHER)", "(LEANER)"
|
||
|
||
table = tpsTpsAccelTbl, tpsTpsAccelMap, "TPS/TPS Acceleration Extra Fuel", 1
|
||
xBins = tpsTpsAccelFromRpmBins, TPS
|
||
yBins = tpsTpsAccelToRpmBins, TPS
|
||
zBins = tpsTpsAccelTable
|
||
|
||
|
||
table = fsioTable1Tbl, fsioTable1Map, "FSIO Table #1", 1
|
||
xBins = fsioTable1RpmBins, rpm
|
||
yBins = fsioTable1LoadBins, engineLoad
|
||
zBins = fsioTable1
|
||
|
||
table = fsioTable2Tbl, fsioTable2Map, "FSIO Table #2", 1
|
||
xBins = fsioTable2RpmBins, rpm
|
||
yBins = fsioTable2LoadBins, engineLoad
|
||
zBins = fsioTable2
|
||
|
||
table = fsioTable3Tbl, fsioTable3Map, "FSIO Table #3", 1
|
||
xBins = fsioTable3RpmBins, rpm
|
||
yBins = fsioTable3LoadBins, engineLoad
|
||
zBins = fsioTable3
|
||
|
||
table = fsioTable4Tbl, fsioTable4Map, "FSIO Table #4", 1
|
||
xBins = fsioTable4RpmBins, rpm
|
||
yBins = fsioTable4LoadBins, engineLoad
|
||
zBins = fsioTable4
|
||
|
||
table = baroCorrTbl, baroCorrMap, "Baro Correction", 1
|
||
; constant, variable
|
||
xBins = baroCorrRpmBins, rpm
|
||
yBins = baroCorrPressureBins, baroPressure
|
||
zBins = baroCorrTable
|
||
; gridHeight = 2.0
|
||
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
||
upDownLabel = "(RICHER)", "(LEANER)"
|
||
|
||
table = ignitionTableTbl, ignitionTableMap, "Ignition Table", 1
|
||
; constant, variable
|
||
xBins = ignitionRpmBins, rpm
|
||
yBins = ignitionLoadBins, engineLoad
|
||
zBins = ignitionTable
|
||
; gridHeight = 2.0
|
||
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
||
upDownLabel = "(RICHER)", "(LEANER)"
|
||
|
||
table = ignitionIatCorrTableTbl, ignitionIatCorrTableMap, "Ignition Intake Air Temp correction", 1
|
||
; constant, variable
|
||
xBins = ignitionIatCorrRpmBins, rpm
|
||
yBins = ignitionIatCorrLoadBins, intake
|
||
zBins = ignitionIatCorrTable
|
||
; gridHeight = 2.0
|
||
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
||
upDownLabel = "(RICHER)", "(LEANER)"
|
||
|
||
table = veTableTbl, veTableMap, "VE Table", 1
|
||
; constant, variable
|
||
xBins = veRpmBins, rpm
|
||
yBins = veLoadBins, MAPValue
|
||
zBins = veTable
|
||
; gridHeight = 2.0
|
||
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
||
upDownLabel = "(RICHER)", "(LEANER)"
|
||
|
||
|
||
table = injPhaseTableTbl, injPhaseTableMap, "Injection Phase", 1
|
||
; constant, variable
|
||
xBins = injPhaseRpmBins, rpm
|
||
yBins = injPhaseLoadBins, engineLoad
|
||
zBins = injectionPhase
|
||
; gridHeight = 2.0
|
||
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
||
upDownLabel = "(Later)", "(Sooner)"
|
||
|
||
table = afrTableTbl, afrTableMap, "Target AFR Table", 1
|
||
; constant, variable
|
||
xBins = afrRpmBins, rpm
|
||
yBins = afrLoadBins, MAPValue
|
||
zBins = afrTable
|
||
; gridHeight = 2.0
|
||
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
||
upDownLabel = "(RICHER)", "(LEANER)"
|
||
|
||
[GaugeConfigurations]
|
||
|
||
;Name Var Title Units Lo Hi LoD LoW HiW HiD vd ld
|
||
tachometer = rpm, "Engine Speed", "RPM", 0, 15000, 200, 500, 6000, 6000, 0, 0
|
||
#if CELSIUS
|
||
CLTGauge = coolant, "Coolant Temp", "<22>C", -40, 140, -15, 1, 95, 110, 1, 1
|
||
#else
|
||
CLTGauge = coolant, "Coolant Temp", "<22>F", -40, 285, 5, 35, 205, 230, 1, 1
|
||
#endif
|
||
#if CELSIUS
|
||
IATGauge = intake, "Intake Air Temp", "<22>C", -40, 140, -15, 1, 95, 110, 1, 1
|
||
#else
|
||
IATGauge = intake, "Intake Air Temp", "<22>F", -40, 285, 5, 35, 205, 230, 1, 1
|
||
#endif
|
||
#if CELSIUS
|
||
tChargeGauge = tCharge, "Charge Temp", "<22>C", -40, 140, -15, 1, 95, 110, 1, 1
|
||
#else
|
||
tChargeGauge = tCharge, "Charge Temp", "<22>F", -40, 285, 5, 35, 205, 230, 1, 1
|
||
#endif
|
||
|
||
|
||
throttleGauge = TPS, "Throttle Position", "%", 0, 100, 0, 0, 100, 100, 2, 2
|
||
afr1Gauge = AFRactual, "Air:Fuel Ratio 1", "", 10, 19.4, 12, 13, 15, 16, 2, 2
|
||
mafGaugeVolts = MAF, "Mass Air Flow", "v", 0, 5, 0, 1, 3, 4, 1, 1
|
||
VBattGauge = VBatt, "Battery Voltage", "V", 8, 21, 9, 10, 17, 19, 1, 1
|
||
tpsADCGauge = tpsADC, "tps ADC", "ADC", 0, 1024, 0, 0, 0, 0, 0, 0
|
||
atmPresCGauge = baroPressure, "Baro", "kPa", 0, 1024, 0, 0, 0, 0, 0, 0
|
||
mapGaugeValue = MAPValue, "MAP", "kPa", 0, 300, 10, 10, 200, 200, 0, 0
|
||
ignadvGauge = ignitionAdvance, "Ignition Advance 1", "degrees", -100, 100, -999, -999, 999, 999, 1, 1
|
||
; warmupEnrichGauge = warmupEnrich, "Warmup Enrichment", "%", 100, 150, -1, -1, 101, 105, 0, 0
|
||
; accelEnrichGauge = accDecEnrich, "Accel Enrich", "%", 50, 150, -1, -1, 999, 999, 0, 0
|
||
dwellGauge = sparkDwellValue, "Dwell", "mSec", 0, 10, 0.5, 1.0, 6.0, 8.0, 1, 1
|
||
egt1Gauge = egt1, "EGT#1", "C", 0, 2000
|
||
egt2Gauge = egt2, "EGT#2", "C", 0, 2000
|
||
egt3Gauge = egt3, "EGT#3", "C", 0, 2000
|
||
egt4Gauge = egt4, "EGT#4", "C", 0, 2000
|
||
egt5Gauge = egt5, "EGT#5", "C", 0, 2000
|
||
egt6Gauge = egt6, "EGT#6", "C", 0, 2000
|
||
egt7Gauge = egt7, "EGT#7", "C", 0, 2000
|
||
egt8Gauge = egt8, "EGT#8", "C", 0, 2000
|
||
vssGauge = vehicleSpeedKph, "Speed", "kmh", 0, 200, 0, 1, 3, 4, 1, 1
|
||
rpmAccelerationGa = rpmAcceleration, "rpm delta", "dRpm", 0, 3, 0, 1, 3, 4, 1, 1
|
||
massAirFlowValueGa = massAirFlowValue,"Air Flow", "kg/hr", 0, 50, -999, -999, 999, 999, 1, 1
|
||
veValueGauge = veValue, "fuel: VE", "", 0, 120, 10, 10, 100, 100, 1, 1
|
||
baroCorrectionGauge = baroCorrection,"BaroCorr", "%", 0, 120, 10, 10, 100, 100, 1, 1
|
||
pedalPositionGauge = pedalPosition,"Pedal Position", "%", 0, 120, 10, 10, 100, 100, 1, 1
|
||
knockCountGauge = knockCount,"Knock count", "count", 0, 120, 10, 10, 100, 100, 1, 1
|
||
knockLevelGauge = knockLevel,"Knock level", "volts", 0, 7, 10, 10, 100, 100, 1, 2
|
||
|
||
triggerErrorsCounterGauge = triggerErrorsCounter, "trg err", "count", 0, 15000, 0, 0, 6000, 6000, 0, 0
|
||
|
||
pulseWidthGauge = pulseWidth, "fuel final squirt, per injection", "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1
|
||
baseFuelGauge = baseFuel, "fuel: base duration, before corr", "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1
|
||
fuelPidCorrectionGauge = fuelPidCorrection, "fuel: closed loop correction", "mSec", -11, 11, 1.0, 1.2, 20, 25, 3, 1
|
||
coilDutyCycleGauge = coilDutyCycle, "dwell: duty cycle", "perc", -11, 11, 1.0, 1.2, 100, 100, 3, 1
|
||
|
||
crankingFuelGauge = crankingFuel, "fuel: crank Width", "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1
|
||
iatCorrectionGauge = iatCorrection, "fuel: IAT correction", "mult", 0, 3, 0, 0, 3, 3, 2, 2
|
||
cltCorrectionGauge = cltCorrection, "fuel: CLT correction", "mult", 0, 3, 0, 0, 3, 3, 2, 2
|
||
injectorDutyCycleGauge=injectorDutyCycle, "fuel: injectorDutyCycle","%", 0, 120, 10, 10, 100, 100, 1, 1
|
||
|
||
engineLoadDeltaGauge = engineLoadDelta,"fuel: load change","value", 0, 120, 10, 10, 100, 100, 1, 1
|
||
engineLoadAccelExtraGauge = engineLoadAccelExtra,"fuel: load extra","value", 0, 120, 10, 10, 100, 100, 1, 1
|
||
deltaTpsGauge = deltaTps, "fuel: TPS change", "", 0, 120, 10, 10, 100, 100, 1, 1
|
||
tpsAccelFuelGauge = tpsAccelFuel,"fuel: TPS enrich", "ms", 0, 120, 10, 10, 100, 100, 1, 1
|
||
wallFuelAmountGauge = wallFuelAmount, "fuel: wall amount", "ms", 0, 100, 0, 0, 100, 100, 0, 0
|
||
wallFuelCorrectionGauge = wallFuelCorrection, "fuel: wall correction extra", "ms", 0, 100, 0, 0, 100, 100, 0, 0
|
||
|
||
curIdlePositionGauge = curIdlePosition, "idle position", "%", 0, 100, 0, 0, 100, 100, 0, 0
|
||
|
||
debugFloatField1Gauge = debugFloatField1, "debug f1", "%", 0, 100, 0, 0, 100, 100, 4, 4
|
||
debugFloatField2Gauge = debugFloatField2, "debug f2", "%", 0, 100, 0, 0, 100, 100, 4, 4
|
||
debugFloatField3Gauge = debugFloatField3, "debug f3", "%", 0, 100, 0, 0, 100, 100, 4, 4
|
||
debugFloatField4Gauge = debugFloatField4, "debug f4", "%", 0, 100, 0, 0, 100, 100, 4, 4
|
||
debugFloatField5Gauge = debugFloatField5, "debug f5", "%", 0, 100, 0, 0, 100, 100, 4, 4
|
||
debugFloatField6Gauge = debugFloatField6, "debug f6", "%", 0, 100, 0, 0, 100, 100, 4, 4
|
||
debugFloatField7Gauge = debugFloatField7, "debug f7", "%", 0, 100, 0, 0, 100, 100, 4, 4
|
||
debugIntField1Gauge = debugIntField1, "debug i1", "%", 0, 100, 0, 0, 100, 100, 0, 0
|
||
debugIntField2Gauge = debugIntField2, "debug i2", "%", 0, 100, 0, 0, 100, 100, 0, 0
|
||
debugIntField3Gauge = debugIntField3, "debug i3", "%", 0, 100, 0, 0, 100, 100, 0, 0
|
||
speedToRpmRatioGauge = speedToRpmRatio, "speed2rpm", "", 0, 100, 0, 0, 100, 100, 4, 4
|
||
warningCounterGauge = warningCounter, "warn", "", 0, 100, 0, 0, 100, 100, 0, 0
|
||
lastErrorCodeGauge = lastErrorCode, "error", "", 0, 8000, 0, 0, 8000, 8000, 0, 0
|
||
internalMcuTemperatureGauge = internalMcuTemperature, "internal temperature", "C", 0, 100, 0, 0, 100, 100, 0, 0
|
||
vvtPositionGauge = vvtPosition, "VVT position", "deg", 0, 100, 0, 0, 720, 720, 0, 0
|
||
|
||
|
||
[FrontPage]
|
||
; Gauges are numbered left to right, top to bottom.
|
||
;
|
||
; 1 2 3 4
|
||
; 5 6 7 8
|
||
|
||
; currently a minimum of 6 gauges must be on the dash, this appears to be an old not needed limitation. next release 1 will work.
|
||
gauge1 = tachometer
|
||
gauge2 = CLTGauge
|
||
gauge3 = throttleGauge
|
||
gauge4 = mafGaugeVolts
|
||
gauge5 = afr1Gauge
|
||
gauge6 = VBattGauge
|
||
gauge7 = dwellGauge
|
||
gauge8 = ignadvGauge
|
||
|
||
|
||
|
||
; = expression, off-label, on-label, off-bg, off-fg, on-bg, on-fg
|
||
; important status
|
||
indicator = { ind_hasFatalError }, "", "FATAL ERROR", green, black, red, black
|
||
indicator = { firmwareTsVersion == fileVersion }, "WRONG VERSION", "version", red, black, green, black
|
||
indicator = { ind_isWarnNow }, "", "warn", green, black, red, black
|
||
indicator = { ind_check_engine }, "ok", "Check engine", green, black, red, black
|
||
indicator = { isIgnitionEnabledIndicator}, "no ignition", "ignition", red, black, green, black
|
||
indicator = { ind_injection_enabled}, "no injection", "injection", red, black, green, black
|
||
indicator = { ind_isTriggerError}, "ok", "trg err", green, black, red, black
|
||
|
||
|
||
; minor info
|
||
indicator = { ind_fan}, "no fan", "fan", white, black, green, black
|
||
indicator = { isCylinderCleanupActivated}, "no cyl cleanup", "cyl cleanup", white, black, green, black
|
||
indicator = { needBurn }, "no Burn", "Need Burn", white, black, yellow, black
|
||
indicator = { hasSdCard}, "no SD", "with SD", white, black, green, black
|
||
indicator = { ind_fuel_pump}, "no pump", "pump", white, black, green, black
|
||
indicator = { clutchUpState }, "clutch", "cltch Up", white, black, red, black
|
||
indicator = { clutchDownState }, "clutch", "cltch Down", white, black, red, black
|
||
indicator = { brakePedalIndicator }, "brake", "brake down", white, black, red, black
|
||
|
||
; error codes
|
||
indicator = { ind_tps_error}, "tps", "tps error", white, black, red, black
|
||
indicator = { ind_clt_error}, "clt", "clt error", white, black, red, black
|
||
indicator = { ind_iat_error}, "iat", "iat error", white, black, red, black
|
||
indicator = { ind_map_error}, "map", "map error", white, black, red, black
|
||
|
||
indicator = { knockEverIndicator }, "", "Knock recently", white, black, red, black
|
||
indicator = { knockNowIndicator }, "no knock", "Knock NOW", white, black, red, black
|
||
|
||
|
||
[Datalog]
|
||
; Channel Label Type Format
|
||
entry = time, "Time", float, "%.3f"
|
||
entry = rpm, "RPM", int, "%d"
|
||
entry = firmwareVersion, @@GAUGE_NAME_VERSION@@, int, "%d"
|
||
entry = coolant, "CLT", float, "%.2f"
|
||
entry = intake, "IAT", float, "%.2f"
|
||
entry = TPS, "TPS", float, "%.2f"
|
||
entry = MAF, "MAF", float, "%.2f"
|
||
entry = MAPValue, "MAP", float, "%.1f"
|
||
entry = AFRactual, "AFR", float, "%.2f"
|
||
entry = VBatt, @@GAUGE_NAME_VBAT@@, float, "%.2f"
|
||
entry = engineLoad, @@GAUGE_NAME_ENGINE_LOAD@@, float, "%.1f"
|
||
entry = ignitionAdvance, @@GAUGE_NAME_TIMING_ADVANCE@@, float, "%.2f"
|
||
entry = knockLevel, @@GAUGE_NAME_KNOCK_LEVEL@@, float, "%.2f"
|
||
entry = vehicleSpeedKph, @@GAUGE_NAME_VVS@@, float, "%.2f"
|
||
entry = speedToRpmRatio, "s2rpm", float, "%.3f"
|
||
entry = rpmAcceleration, "dRPM", float, "%.3f"
|
||
entry = massAirFlowValue,"airMass", float, "%.3f"
|
||
entry = pedalPosition, "pedal", float, "%.3f"
|
||
entry = triggerErrorsCounter, "trg err",int, "%d"
|
||
entry = curIdlePosition, "idle position", float, "%.3f"
|
||
|
||
|
||
entry = pulseWidth, "fuel: pulse", float, "%.3f"
|
||
entry = baseFuel, "fuel: base", float, "%.2f"
|
||
entry = fuelPidCorrection,"fuel: pid", float, "%.2f"
|
||
entry = veValue, @@GAUGE_NAME_FUEL_VR@@, float, "%.3f"
|
||
entry = injectorDutyCycle,@@GAUGE_NAME_FUEL_INJ_DUTY@@,float,"%.3f"
|
||
entry = coilDutyCycle, @@GAUGE_NAME_DWELL_DUTY@@, float,"%.3f"
|
||
|
||
entry = engineLoadAccelExtra, @@GAUGE_NAME_FUEL_EL_EXTRA@@,float, "%.3f"
|
||
entry = engineLoadDelta, "fuel: load change",float, "%.3f"
|
||
|
||
entry = deltaTps, "fuel: TPS change",float, "%.3f"
|
||
entry = tpsAccelFuel, @@GAUGE_NAME_FUEL_TPS_EXTRA@@, float, "%.3f"
|
||
|
||
entry = wallFuelCorrection,"fuel: wall corr ms", float, "%.3f"
|
||
entry = wallFuelAmount, "fuel: wall amount", float, "%.3f"
|
||
|
||
entry = baroCorrection, "baroCorrection",float,"%.3f"
|
||
entry = iatCorrection, @@GAUGE_NAME_FUEL_IAT_CORR@@, float, "%.3f"
|
||
entry = cltCorrection, @@GAUGE_NAME_FUEL_CLT_CORR@@, float,"%.3f"
|
||
|
||
entry = sparkDwellValue, @@GAUGE_COIL_DWELL_TIME@@, float,"%.3f"
|
||
entry = vvtPosition, @@GAUGE_NAME_VVT@@, float,"%.2f"
|
||
|
||
; is there a way to log parameter? entry = debugMode, "debugMode",int,"%d"
|
||
; Alternator_PID: alternator duty cycle
|
||
; DBG_TPS_ACCEL: from TPS
|
||
entry = debugFloatField1, "debug f1",float,"%.4f"
|
||
|
||
; Alternator_PID: current integration term
|
||
; DBG_TPS_ACCEL: to TPS
|
||
entry = debugFloatField2, "debug f2",float,"%.4f"
|
||
|
||
; Alternator_PID: previous error
|
||
; DBG_TPS_ACCEL: tps<>tps table value
|
||
entry = debugFloatField3, "debug f3",float,"%.4f"
|
||
|
||
; Alternator_PID: I setting
|
||
; DBG_TPS_ACCEL: extra fuel
|
||
entry = debugFloatField4, "debug f4",float,"%.4f"
|
||
|
||
; Alternator_PID: D setting
|
||
entry = debugFloatField5, "debug f5",float,"%.4f"
|
||
|
||
; Alternator_PID: dTerm
|
||
entry = debugFloatField6, "debug f6",float,"%.4f"
|
||
|
||
entry = debugFloatField7, "debug f7",float,"%.4f"
|
||
|
||
|
||
; Alternator_PID: P setting
|
||
entry = debugIntField1, "debug i1",int,"%d"
|
||
|
||
; Alternator_PID: offset setting
|
||
entry = debugIntField2, "debug i2",int,"%d"
|
||
|
||
; Alternator_PID: PID reset counter
|
||
entry = debugIntField3, "debug i3",int,"%d"
|
||
|
||
|
||
entry = engineMode, "mode",int,"%d"
|
||
entry = warningCounter, @@GAUGE_NAME_WARNING_COUNTER@@,int,"%d"
|
||
entry = lastErrorCode, @@GAUGE_NAME_WARNING_LAST@@,int,"%d"
|
||
entry = internalMcuTemperature, @@GAUGE_NAME_CPU_TEMP@@,float,"%.2f"
|
||
|
||
entry = tCharge, "tCharge",float,"%.3f"
|
||
|
||
entry = clutchUpState, @@INDICATOR_NAME_CLUTCH_UP@@,int,"%d"
|
||
entry = clutchDownState, @@INDICATOR_NAME_CLUTCH_DOWN@@,int,"%d"
|
||
entry = brakePedalIndicator, @@INDICATOR_NAME_BRAKE_DOWN@@,int,"%d"
|
||
|
||
|
||
; tpsADC = U16, "ADC",
|
||
; alignmet = U16, "al",
|
||
; atmPres = F32, "pres",
|
||
; crankingFuel = F32, "ms",
|
||
; tCharge = F32, "T",
|
||
; sparkDwell = F32, "MAP",
|
||
; warmUpEnrich = F32, "%",
|
||
|
||
[Menu]
|
||
|
||
menu = "Engine"
|
||
subMenu = engineChars, "Base Engine Settings"
|
||
subMenu = triggerConfiguration, "Trigger Configuration"
|
||
subMenu = std_separator
|
||
subMenu = injectionSettings, "Injection Settings"
|
||
subMenu = ignitionSettings, "Ignition Settings"
|
||
subMenu = std_separator
|
||
subMenu = analogInputs, "Analog inputs"
|
||
subMenu = cltSensor, "CLT Sensor Settings"
|
||
subMenu = iatSensor, "IAT Sensor Settings"
|
||
subMenu = auxTempSensor1Sensor, "AuxTemp1 Sensor Settings"
|
||
subMenu = auxTempSensor2Sensor, "AuxTemp2 Sensor Settings"
|
||
subMenu = mapSettings, "MAP Sensor Settings"
|
||
subMenu = mafDecodingCurve, "MAF Sensor Settings"
|
||
subMenu = egoSettings, "EGO Sensor Settings"
|
||
subMenu = egtInputs, "EGT inputs"
|
||
subMenu = energySystems, "Battery and Alternator Settings"
|
||
subMenu = auxPidDialog, "Aux PID"
|
||
subMenu = speedSensor, "Speed Sensor Settings"
|
||
subMenu = tachSettings, "Tachometer output"
|
||
subMenu = std_separator
|
||
subMenu = fanSetting, "Fan Settings"
|
||
subMenu = idleSettings, "Idle Settings"
|
||
subMenu = mainRealay, "Main Relay Settings"
|
||
subMenu = fuelPump, "Fuel Pump Settings"
|
||
subMenu = malfunction, "MIL Settings"
|
||
subMenu = hipFunction, "hip9011 Settings (knock decoder)"
|
||
subMenu = cj125Function, "CJ125 Settings (wbo decoder)"
|
||
subMenu = spiFunction, "SPI Settings"
|
||
subMenu = etbDialog, "Electronic Thtottle Body (alpha)"
|
||
menu = "Tuning"
|
||
subMenu = generalSettings, "General"
|
||
subMenu = monitoringSettings, "rusEfi Console Settings"
|
||
subMenu = std_separator
|
||
subMenu = crankingDialog, "Cranking"
|
||
subMenu = crankingCltCurve, "Cranking Coolant Temp Multiplier"
|
||
subMenu = crankingTpsCurve, "Cranking TPS Multiplier"
|
||
subMenu = crankingDurationCurve, "Cranking Duration Multiplier"
|
||
subMenu = std_separator
|
||
subMenu = warmupFuelDialog, "Warmup fuel closed-loop"
|
||
subMenu = cltFuelCorrCurve, "Warmup fuel manual Multiplier", 0, {useWarmupPidAfr == 0}
|
||
subMenu = warmupTargetAfrCurve, "Warmup fuel auto correction AFR target", 0, {useWarmupPidAfr == 1}
|
||
subMenu = cltIdleCurve, "Warmup IAC position manual Multiplier"
|
||
subMenu = cltTimingCorrCurve, "Warmup timing correction"
|
||
subMenu = std_separator
|
||
subMenu = fuelTableTbl, "Fuel Table", 0, {fuelAlgorithm != 3}
|
||
subMenu = veTableTbl, "VE Table", 0, {fuelAlgorithm == 3}
|
||
subMenu = afrTableTbl, "Target AFR Table", 0, {fuelAlgorithm == 3}
|
||
subMenu = iatFuelCorrCurve, "Intake air temperature fuel Multiplier"
|
||
subMenu = injPhaseTableTbl, "Injection Phase"
|
||
subMenu = mapAccelTaper, "Engine Load Acceleration Enrichment Taper"
|
||
subMenu = std_separator
|
||
subMenu = fuelClosedLoopDialog, "Fuel closed-loop correction"
|
||
subMenu = AccelEnrich, "Accel/Decel Enrichment/Enleanment"
|
||
subMenu = tpsTpsAccelTbl, "TPS/TPS acceleration Multiplier"
|
||
subMenu = std_separator
|
||
subMenu = ignitionTableTbl, "Ignition Table"
|
||
subMenu = ignitionIatCorrTableTbl, "Ignition Intake Air Temp correction"
|
||
subMenu = baroCorrTbl, "Baro Correction", 0, {fuelAlgorithm == 3}
|
||
subMenu = std_separator
|
||
subMenu = std_realtime, "&Realtime Display", 0
|
||
subMenu = tChargeSettings, "tCharge Settings"
|
||
|
||
menu = "3D Map Tuning"
|
||
; subMenu = std_realtime, "Realtime Display"
|
||
; subMenu = std_warmup, "Warmup Wizard"
|
||
subMenu = fuelTableMap, "Fuel Table", 0, {fuelAlgorithm != 3}
|
||
subMenu = veTableMap, "VE Table", 0, {fuelAlgorithm == 3}
|
||
subMenu = afrTableMap, "Target AFR Table", 0, {fuelAlgorithm == 3}
|
||
subMenu = injPhaseTableMap, "Injection Phase"
|
||
subMenu = ignitionTableMap, "Ignition Table"
|
||
subMenu = ignitionIatCorrTableMap, "Ignition Intake Air Temp correction"
|
||
|
||
menu = "Racing Features"
|
||
subMenu = smLaunchControl, "Launch Control"
|
||
subMenu = std_separator
|
||
|
||
menu = "Board"
|
||
subMenu = fsioInputsDialog, "FSIO inputs"
|
||
subMenu = fsioOutputsDialog, "FSIO outputs"
|
||
subMenu = fsioTable1Tbl, "FSIO Table #1"
|
||
subMenu = fsioTable2Tbl, "FSIO Table #2"
|
||
subMenu = fsioTable3Tbl, "FSIO Table #3"
|
||
subMenu = fsioTable4Tbl, "FSIO Table #4"
|
||
subMenu = std_separator
|
||
subMenu = connection, "Connection"
|
||
subMenu = joystickPanel, "Joystick"
|
||
subMenu = std_separator
|
||
subMenu = ioTest, "I-O Test"
|
||
subMenu = ecuStimulator, "ECU stimulator"
|
||
subMenu = allPins, "Full pinout"
|
||
|
||
[ControllerCommands]
|
||
; commandName = command1, command2, commandn...
|
||
; command in standard ini format, a command name can be assigned to 1 to n commands that will be executed in order.
|
||
; This does not include any resultant protocol envelope data, only the response data itself.
|
||
|
||
; WARNING!! These commands bypass TunerStudio's normal memory synchronization. If these commands
|
||
; alter mapped settings (Constant) memory in the controller, TunerStudio will have an out of sync condition
|
||
; and may create error messages.
|
||
; It is expected that these commands would not typically alter any ram mapped to a Constant.
|
||
|
||
;
|
||
; see TS_IO_TEST_COMMAND in firmware code
|
||
;
|
||
|
||
cmd_test_spk1 = "w\x00\x12\x00\x01"
|
||
cmd_test_spk2 = "w\x00\x12\x00\x02"
|
||
cmd_test_spk3 = "w\x00\x12\x00\x03"
|
||
cmd_test_spk4 = "w\x00\x12\x00\x04"
|
||
cmd_test_spk5 = "w\x00\x12\x00\x05"
|
||
cmd_test_spk6 = "w\x00\x12\x00\x06"
|
||
cmd_test_spk7 = "w\x00\x12\x00\x07"
|
||
cmd_test_spk8 = "w\x00\x12\x00\x08"
|
||
cmd_test_spk9 = "w\x00\x12\x00\x09"
|
||
cmd_test_spk10 = "w\x00\x12\x00\x0a"
|
||
cmd_test_spk11 = "w\x00\x12\x00\x0b"
|
||
cmd_test_spk12 = "w\x00\x12\x00\x0c"
|
||
cmd_test_spk13 = "w\x00\x12\x00\x0d"
|
||
cmd_test_spk14 = "w\x00\x12\x00\x0e"
|
||
cmd_test_spk15 = "w\x00\x12\x00\x0f"
|
||
cmd_test_spk16 = "w\x00\x12\x00\x10"
|
||
|
||
|
||
cmd_test_inj1 = "w\x00\x13\x00\x01"
|
||
cmd_test_inj2 = "w\x00\x13\x00\x02"
|
||
cmd_test_inj3 = "w\x00\x13\x00\x03"
|
||
cmd_test_inj4 = "w\x00\x13\x00\x04"
|
||
cmd_test_inj5 = "w\x00\x13\x00\x05"
|
||
cmd_test_inj6 = "w\x00\x13\x00\x06"
|
||
cmd_test_inj7 = "w\x00\x13\x00\x07"
|
||
cmd_test_inj8 = "w\x00\x13\x00\x08"
|
||
cmd_test_inj9 = "w\x00\x13\x00\x09"
|
||
cmd_test_inj10 = "w\x00\x13\x00\x0a"
|
||
cmd_test_inj11 = "w\x00\x13\x00\x0b"
|
||
cmd_test_inj12 = "w\x00\x13\x00\x0c"
|
||
cmd_test_inj13 = "w\x00\x13\x00\x0d"
|
||
cmd_test_inj14 = "w\x00\x13\x00\x0e"
|
||
cmd_test_inj15 = "w\x00\x13\x00\x0f"
|
||
cmd_test_inj16 = "w\x00\x13\x00\x10"
|
||
|
||
cmd_test_fuel_pump = "w\x00\x14\x00\x01"
|
||
cmd_test_radiator_fan = "w\x00\x15\x00\x01"
|
||
cmd_test_check_engine_light = "w\x00\x16\x00\x01"
|
||
cmd_test_idle_valve = "w\x00\x17\x00\x01"
|
||
cmd_call_from_pit = "w\x00\x20\x34\x56"
|
||
|
||
|
||
[UserDefined]
|
||
dialog = tChargeSettings, "tChart Settings"
|
||
field = "MinRpm MinTps", tChargeMinRpmMinTps
|
||
field = "MinRpm MaxTps", tChargeMinRpmMaxTps
|
||
field = "MaxRpm MinTps", tChargeMaxRpmMinTps
|
||
field = "MaxRpm MaxTps", tChargeMaxRpmMaxTps
|
||
|
||
dialog = baseInjection, "Injection"
|
||
field = "Enabled", isInjectionEnabled
|
||
field = "Mode", injectionMode, {isInjectionEnabled == 1}
|
||
field = "#Batch injection with individual wiring"
|
||
field = "Two wire batch", twoWireBatchInjection, {isInjectionEnabled == 1 && injectionMode == 2}
|
||
|
||
dialog = baseIgnition, "Ignition"
|
||
field = "Enabled", isIgnitionEnabled
|
||
field = "Mode", ignitionMode, {isIgnitionEnabled == 1}
|
||
field = "#Wasted spark with individual coils"
|
||
field = "Two wire wasted", twoWireBatchIgnition, {isIgnitionEnabled == 1 && ignitionMode == 2}
|
||
field = "Timing Mode", timingMode, {isIgnitionEnabled == 1}
|
||
field = "Fixed Timinig", fixedTiming, {isIgnitionEnabled == 1 && timingMode == 1}
|
||
|
||
|
||
; Engine->Base Engine Settings
|
||
dialog = engineChars, "Base Engine Settings"
|
||
; field = "Engine Preset", engineType
|
||
field = "Number of Cylinders", cylindersCount
|
||
field = "Engine Displacement", displacement
|
||
field = "debug fields", debugMode
|
||
field = ""
|
||
field = "Firing Order", firingOrder
|
||
panel = baseInjection
|
||
panel = baseIgnition
|
||
|
||
; Engine->Trigger configuration
|
||
dialog = triggerConfiguration_settings, "Settings Trigger"
|
||
field = "Trigger type", trigger_type
|
||
field = "Operation mode", operationMode
|
||
field = "With VR sensors only rising edge has reliable position"
|
||
field = "use only rising edge", useOnlyRisingEdgeForTrigger
|
||
field = "!Reminder that 4-stroke cycle is 720 degrees"
|
||
field = "Trigger Angle Offset", globalTriggerAngleOffset
|
||
field = "#Custom Trigger"
|
||
field = "total Tooth Count", trigger_customTotalToothCount, {trigger_type == 0}
|
||
field = "skipped Tooth Count", trigger_customSkippedToothCount, {trigger_type == 0}
|
||
|
||
dialog = triggerConfiguration_IO, "Settings I/O"
|
||
field = "!ECU reboot needed to apply pin assignment"
|
||
field = "#Cam is primary if you have cam sensor"
|
||
field = "Primary input channel", triggerInputPins1
|
||
field = "Secondary channel", triggerInputPins2, { trigger_type != 0 && trigger_type != 8 && trigger_type != 9 && trigger_type != 18 && trigger_type != 20}
|
||
field = "Cam Sync/VVT input", camInput
|
||
field = "VVT mode", vvtMode, {trigger_type != 80}
|
||
field = "VVT use rise front", vvtCamSensorUseRise, {trigger_type != 80}
|
||
field = "VVT position display offset", vvtOffset
|
||
field = "VVT display inverted", vvtDisplayInverted
|
||
field = "NB2 from temp", nb2ratioFrom
|
||
field = "NB2 to temp", nb2ratioTo
|
||
field = "nbVvtIndex", nbVvtIndex
|
||
field = "Trigger error LED", triggerErrorPin
|
||
field = "Trigger error LED mode", triggerErrorPinMode
|
||
field = "print sync details to console", isPrintTriggerSynchDetails
|
||
dialog = triggerConfiguration
|
||
panel = triggerConfiguration_settings, North
|
||
panel = triggerConfiguration_IO, South
|
||
|
||
; Engine->Injection Settings
|
||
dialog = injChars, "Injector Settings", yAxis
|
||
field = "Injector Flow", injector_flow
|
||
field = "phase offset", extraInjectionOffset
|
||
|
||
dialog = injIO, "Injector Output", yAxis
|
||
field = "!ECU reboot needed to apply these settings"
|
||
field = "injection Pin Mode", injectionPinMode
|
||
field = "Injection Pin 1", injectionPins1
|
||
field = "Injection Pin 2", injectionPins2, {cylindersCount > 1}
|
||
field = "Injection Pin 3", injectionPins3, {cylindersCount > 2}
|
||
field = "Injection Pin 4", injectionPins4, {cylindersCount > 3}
|
||
field = "Injection Pin 5 ", injectionPins5, {cylindersCount > 4}
|
||
field = "Injection Pin 6 ", injectionPins6, {cylindersCount > 5}
|
||
field = "Injection Pin 7 ", injectionPins7, {cylindersCount > 6}
|
||
field = "Injection Pin 8 ", injectionPins8, {cylindersCount > 7}
|
||
field = "Injection Pin 9 ", injectionPins9, {cylindersCount > 8}
|
||
field = "Injection Pin 10 ", injectionPins10, {cylindersCount > 9}
|
||
field = "Injection Pin 11 ", injectionPins11, {cylindersCount > 10}
|
||
field = "Injection Pin 12 ", injectionPins12, {cylindersCount > 11}
|
||
|
||
dialog = injectorSetting, "", yAxis
|
||
panel = injChars, North
|
||
panel = injIO, East
|
||
|
||
dialog = injectionSettings, "", xAxis
|
||
panel = injectorSetting, West
|
||
panel = injectorsDeadTime, East
|
||
|
||
dialog = ignitionCylExtra, "Ignition Cyliner Extra"
|
||
field = "Extra cyl #1", timing_offset_cylinder1
|
||
field = "Extra cyl #2", timing_offset_cylinder2, {cylindersCount > 1}
|
||
field = "Extra cyl #3", timing_offset_cylinder3, {cylindersCount > 2}
|
||
field = "Extra cyl #4", timing_offset_cylinder4, {cylindersCount > 3}
|
||
field = "Extra cyl #5", timing_offset_cylinder5, {cylindersCount > 4}
|
||
field = "Extra cyl #6", timing_offset_cylinder6, {cylindersCount > 5}
|
||
field = "Extra cyl #7", timing_offset_cylinder7, {cylindersCount > 6}
|
||
field = "Extra cyl #8", timing_offset_cylinder8, {cylindersCount > 7}
|
||
field = "Extra cyl #9", timing_offset_cylinder9, {cylindersCount > 8}
|
||
field = "Extra cyl #10", timing_offset_cylinder10, {cylindersCount > 9}
|
||
field = "Extra cyl #11", timing_offset_cylinder11, {cylindersCount > 10}
|
||
field = "Extra cyl #12", timing_offset_cylinder12, {cylindersCount > 11}
|
||
|
||
|
||
; Engine->Ignition Settings
|
||
dialog = ignitionOutputs, "Ignition Outputs"
|
||
field = "Ignition Pin Mode", ignitionPinMode
|
||
field = "Ignition Pin 1", ignitionPins1
|
||
field = "Ignition Pin 2", ignitionPins2, {(ignitionMode != 0 && cylindersCount > 1) && (ignitionMode !=2 || twoWireBatchIgnition == 1 @@ignitionPin2logic@@)}
|
||
field = "Ignition Pin 3", ignitionPins3, {(ignitionMode != 0 && cylindersCount > 2) && (ignitionMode !=2 || twoWireBatchIgnition == 1 @@ignitionPin3logic@@)}
|
||
field = "Ignition Pin 4", ignitionPins4, {(ignitionMode != 0 && cylindersCount > 3) && (ignitionMode !=2 || twoWireBatchIgnition == 1 @@ignitionPin4logic@@)}
|
||
field = "Ignition Pin 5", ignitionPins5, {(ignitionMode != 0 && cylindersCount > 4) && (ignitionMode !=2 || twoWireBatchIgnition == 1 @@ignitionPin5logic@@)}
|
||
field = "Ignition Pin 6", ignitionPins6, {(ignitionMode != 0 && cylindersCount > 5) && (ignitionMode !=2 || twoWireBatchIgnition == 1 @@ignitionPin6logic@@)}
|
||
field = "Ignition Pin 7", ignitionPins7, {(ignitionMode != 0 && cylindersCount > 6) && (ignitionMode !=2 || twoWireBatchIgnition == 1 @@ignitionPin7logic@@)}
|
||
field = "Ignition Pin 8", ignitionPins8, {(ignitionMode != 0 && cylindersCount > 7) && (ignitionMode !=2 || twoWireBatchIgnition == 1 @@ignitionPin8logic@@)}
|
||
field = "Ignition Pin 9", ignitionPins9, {(ignitionMode != 0 && cylindersCount > 8) && (ignitionMode !=2 || twoWireBatchIgnition == 1 @@ignitionPin8logic@@)}
|
||
field = "Ignition Pin 10", ignitionPins10, {(ignitionMode != 0 && cylindersCount > 9) && (ignitionMode !=2 || twoWireBatchIgnition == 1 @@ignitionPin8logic@@)}
|
||
field = "Ignition Pin 11", ignitionPins11, {(ignitionMode != 0 && cylindersCount > 10) && (ignitionMode !=2 || twoWireBatchIgnition == 1 @@ignitionPin8logic@@)}
|
||
field = "Ignition Pin 12", ignitionPins12, {(ignitionMode != 0 && cylindersCount > 11) && (ignitionMode !=2 || twoWireBatchIgnition == 1 @@ignitionPin8logic@@)}
|
||
field = "This is useful to have tachometer working while converting from distributor"
|
||
field = "Dizzy out Pin", dizzySparkOutputPin
|
||
field = "Dizzy out Pin Mode", dizzySparkOutputPinMode
|
||
|
||
dialog = ignitionSettings, "", xAxis
|
||
panel = ignitionOutputs, West
|
||
panel = dwellCorrection, Center
|
||
panel = ignitionCylExtra, East
|
||
|
||
; Engine->Aux1 Thermistor Settings
|
||
dialog = auxTempSensor1_thermistor, "aux1 Thermistor Settings"
|
||
field = "!Here is three pairs of thermistor temperature and his resistance."
|
||
field = "!Typical temperatures is -40<34>C, 0<>C and 100<30>C"
|
||
field = ""
|
||
field = "Lowest temperature", auxTempSensor1_tempC_1
|
||
field = "Resistance @ LT", auxTempSensor1_resistance_1
|
||
field = ""
|
||
field = "Middle temperature", auxTempSensor1_tempC_2
|
||
field = "Resistance @ MT", auxTempSensor1_resistance_2
|
||
field = ""
|
||
field = "Highest temperature", auxTempSensor1_tempC_3
|
||
field = "Resistance @ HT", auxTempSensor1_resistance_3
|
||
dialog = auxTempSensor1Sensor_IO, "auxTempSensor1 Sensor I/O"
|
||
field = "auxTempSensor1 ADC input", auxTempSensor1_adcChannel
|
||
field = "Bias Resistor Value", auxTempSensor1_bias_resistor
|
||
dialog = auxTempSensor1Sensor, "", yAxis
|
||
panel = auxTempSensor1_thermistor, North
|
||
panel = auxTempSensor1Sensor_IO, South
|
||
|
||
; Engine->Aux2 Thermistor Settings
|
||
dialog = auxTempSensor2_thermistor, "aux1 Thermistor Settings"
|
||
field = "!Here is three pairs of thermistor temperature and his resistance."
|
||
field = "!Typical temperatures is -40<34>C, 0<>C and 100<30>C"
|
||
field = ""
|
||
field = "Lowest temperature", auxTempSensor2_tempC_1
|
||
field = "Resistance @ LT", auxTempSensor2_resistance_1
|
||
field = ""
|
||
field = "Middle temperature", auxTempSensor2_tempC_2
|
||
field = "Resistance @ MT", auxTempSensor2_resistance_2
|
||
field = ""
|
||
field = "Highest temperature", auxTempSensor2_tempC_3
|
||
field = "Resistance @ HT", auxTempSensor2_resistance_3
|
||
dialog = auxTempSensor2Sensor_IO, "auxTempSensor2 Sensor I/O"
|
||
field = "auxTempSensor2 ADC input", auxTempSensor2_adcChannel
|
||
field = "Bias Resistor Value", auxTempSensor2_bias_resistor
|
||
dialog = auxTempSensor2Sensor, "", yAxis
|
||
panel = auxTempSensor2_thermistor, North
|
||
panel = auxTempSensor2Sensor_IO, South
|
||
|
||
|
||
dialog = allPins1
|
||
field = "MAP ADC input", map_sensor_hwChannel
|
||
field = "frequencyReportingMapInputPin", frequencyReportingMapInputPin
|
||
field = "CLT ADC input", clt_adcChannel
|
||
field = "IAT ADC input", iat_adcChannel
|
||
field = "vBatt ADC input", vbattAdcChannel
|
||
field = "TPS ADC input", tpsAdcChannel
|
||
field = "MAF ADC input", mafAdcChannel
|
||
field = "AFR ADC input", afr_hwChannel
|
||
field = "fuelLevelSensor", fuelLevelSensor
|
||
field = "Baro ADC input", baroSensor_hwChannel
|
||
field = "pedal Position Channel", pedalPositionChannel
|
||
field = "Primary input channel", triggerInputPins1
|
||
field = "Secondary channel", triggerInputPins2
|
||
field = "Cam Sync/VVT input", camInput
|
||
field = "Vehicle Speed Input pin", vehicleSpeedSensorInputPin
|
||
field = "clutchDownPin", clutchDownPin
|
||
field = "clutchUpPin", clutchUpPin
|
||
field = "brakePedalPin", brakePedalPin
|
||
|
||
dialog = allPins2
|
||
field = "Tachometer output Pin", tachOutputPin
|
||
field = "Dizzy out Pin", dizzySparkOutputPin
|
||
field = "O2 heater pin", o2heaterPin
|
||
field = "Idle Solenoid Pin", idle_solenoidPin
|
||
field = "Idle Stepper Dir", idle_stepperDirectionPin
|
||
field = "Idle Stepper Step", idle_stepperStepPin
|
||
field = "Idle Stepper Enable", stepperEnablePin
|
||
field = "Fuel Pump Pin", fuelPumpPin
|
||
field = "ETB Dir #1", etbDirectionPin1
|
||
field = "ETB Dir #2", etbDirectionPin2
|
||
field = "ETB Control #1", etbControlPin1
|
||
field = "ETB Control #2", etbControlPin2
|
||
field = "SD CS Pin", sdCardCsPin
|
||
field = "Check Engine Pin", malfunctionIndicatorPin
|
||
field = "Aux Pin #1", auxPidPins1
|
||
field = "Aux Pin #2", auxPidPins2
|
||
field = "Aux Pin #3", auxPidPins3
|
||
field = "Aux Pin #4", auxPidPins4
|
||
|
||
|
||
|
||
dialog = allPins3
|
||
field = "Injection Pin 1", injectionPins1
|
||
field = "Injection Pin 2", injectionPins2
|
||
field = "Injection Pin 3", injectionPins3
|
||
field = "Injection Pin 4", injectionPins4
|
||
field = "Injection Pin 5 ", injectionPins5
|
||
field = "Injection Pin 6 ", injectionPins6
|
||
field = "Injection Pin 7 ", injectionPins7
|
||
field = "Injection Pin 8 ", injectionPins8
|
||
field = "Injection Pin 9 ", injectionPins9
|
||
field = "Injection Pin 10 ", injectionPins10
|
||
field = "Injection Pin 11 ", injectionPins11
|
||
field = "Injection Pin 12 ", injectionPins12
|
||
|
||
field = "Ignition Pin 1", ignitionPins1
|
||
field = "Ignition Pin 2", ignitionPins2
|
||
field = "Ignition Pin 3", ignitionPins3
|
||
field = "Ignition Pin 4", ignitionPins4
|
||
field = "Ignition Pin 5", ignitionPins5
|
||
field = "Ignition Pin 6", ignitionPins6
|
||
field = "Ignition Pin 7", ignitionPins7
|
||
field = "Ignition Pin 8", ignitionPins8
|
||
field = "Ignition Pin 9", ignitionPins9
|
||
field = "Ignition Pin 10", ignitionPins10
|
||
field = "Ignition Pin 11", ignitionPins11
|
||
field = "Ignition Pin 12", ignitionPins12
|
||
|
||
dialog = allPins4
|
||
field = "FSIO dig inp #1", fsioDigitalInputs1
|
||
field = "FSIO dig inp #2", fsioDigitalInputs2
|
||
field = "FSIO dig inp #3", fsioDigitalInputs3
|
||
field = "FSIO dig inp #4", fsioDigitalInputs4
|
||
field = "FSIO dig inp #5", fsioDigitalInputs5
|
||
field = "FSIO dig inp #6", fsioDigitalInputs6
|
||
field = "FSIO dig inp #7", fsioDigitalInputs7
|
||
field = "FSIO dig inp #8", fsioDigitalInputs8
|
||
field = "FSIO dig inp #9", fsioDigitalInputs9
|
||
|
||
|
||
|
||
dialog = allPins1_2, "", xAxis
|
||
panel = allPins1
|
||
panel = allPins2
|
||
|
||
dialog = allPins3_4, "", xAxis
|
||
panel = allPins3
|
||
panel = allPins4
|
||
|
||
dialog = allPins, "All Pins", xAxis
|
||
panel = allPins1_2
|
||
panel = allPins3_4
|
||
|
||
|
||
; Engine->CLT Thermistor Settings
|
||
dialog = clt_thermistor, "CLT Thermistor Settings"
|
||
field = "!Here is three pairs of thermistor temperature and his resistance."
|
||
field = "!Typical temperatures is -40<34>C, 0<>C and 100<30>C"
|
||
field = ""
|
||
field = "Lowest temperature", clt_tempC_1
|
||
field = "Resistance @ LT", clt_resistance_1
|
||
field = ""
|
||
field = "Middle temperature", clt_tempC_2
|
||
field = "Resistance @ MT", clt_resistance_2
|
||
field = ""
|
||
field = "Highest temperature", clt_tempC_3
|
||
field = "Resistance @ HT", clt_resistance_3
|
||
dialog = cltSensor_IO, "CLT Sensor I/O"
|
||
field = "CLT ADC input", clt_adcChannel
|
||
field = "Bias Resistor Value", clt_bias_resistor
|
||
dialog = cltSensor, "", yAxis
|
||
panel = clt_thermistor, North
|
||
panel = cltSensor_IO, South
|
||
|
||
; Engine->IAT Thermistor Settings
|
||
dialog = iat_thermistor, "IAT Thermistor Settings"
|
||
field = "!Here is three pairs of thermistor temperature and his resistance."
|
||
field = "!Typical temperatures is -40<34>C, 0<>C and 100<30>C"
|
||
field = ""
|
||
field = "Lowest temperature", iat_tempC_1
|
||
field = "Resistance @ LT", iat_resistance_1
|
||
field = ""
|
||
field = "Middle temperature", iat_tempC_2
|
||
field = "Resistance @ MT", iat_resistance_2
|
||
field = ""
|
||
field = "Highest temperature", iat_tempC_3
|
||
field = "Resistance @ HT", iat_resistance_3
|
||
dialog = iatSensor_IO, "IAT Sensor I/O"
|
||
field = "IAT ADC input", iat_adcChannel
|
||
field = "Bias Resistor Value", iat_bias_resistor
|
||
dialog = iatSensor, "", yAxis
|
||
panel = iat_thermistor, North
|
||
panel = iatSensor_IO, South
|
||
|
||
; Engine->MAP Sensor Settings
|
||
dialog = mapSensorVDlg, "Voltage Sensor Settings", xAxis
|
||
field = "MAP ADC input", map_sensor_hwChannel, {hasFrequencyReportingMapSensor == 0}
|
||
field = "Map type", map_sensor_type, {hasFrequencyReportingMapSensor == 0}
|
||
field = "MAP value low point", map_sensor_lowValue, { map_sensor_type == 0 && hasFrequencyReportingMapSensor == 0}
|
||
field = "MAP voltage low point", mapLowValueVoltage, { map_sensor_type == 0 && hasFrequencyReportingMapSensor == 0}
|
||
field = "MAP value high point", map_sensor_highValue, { map_sensor_type == 0 && hasFrequencyReportingMapSensor == 0}
|
||
field = "MAP voltage high value", mapHighValueVoltage, { map_sensor_type == 0 && hasFrequencyReportingMapSensor == 0}
|
||
|
||
dialog = mapSensorFDlg, "Frequency Sensor Settings", xAxis
|
||
field = "pin", frequencyReportingMapInputPin, {hasFrequencyReportingMapSensor == 1}
|
||
field = "0 kPa freq", mapFrequency0Kpa, {hasFrequencyReportingMapSensor == 1}
|
||
field = "100 kpa freq", mapFrequency100Kpa, {hasFrequencyReportingMapSensor == 1}
|
||
|
||
dialog = mapCurves, "", border
|
||
panel = map_samplingAngleCurve, West
|
||
panel = map_samplingWindowCurve, East
|
||
|
||
dialog = mapSwitch, "MAP input type"
|
||
field = "frequency-based MAP", hasFrequencyReportingMapSensor
|
||
|
||
dialog = mapVandF, "V and F"
|
||
panel = mapSensorVDlg, North
|
||
panel = mapSensorFDlg, South
|
||
|
||
dialog = mapSwitchAndSettings, "Switch and Settings"
|
||
field = "!ECU reboot needed to apply pin assignment"
|
||
panel = mapSwitch, North
|
||
panel = mapVandF, South
|
||
|
||
dialog = mapSettings, "MAP Sensor Settings", border
|
||
panel = mapCurves, North
|
||
panel = mapSwitchAndSettings, South
|
||
|
||
; Engine->EGO Sensor Settings
|
||
dialog = egoSettings_sensor, "EGO Sensor Settings"
|
||
field = "low voltage", afr_v1
|
||
field = "low value", afr_value1
|
||
field = "high voltage", afr_v2
|
||
field = "high value", afr_value2
|
||
field = "Correction", egoValueShift
|
||
dialog = egoSettings_IO, "EGO Sensor I/O"
|
||
field = "AFR ADC input", afr_hwChannel
|
||
field = "O2 heater pin", o2heaterPin
|
||
dialog = egoSettings, "", yAxis
|
||
panel = egoSettings_sensor, North
|
||
panel = egoSettings_IO, South
|
||
|
||
; Engine->EGT inputs
|
||
dialog = egtInputs, "EGT inputs"
|
||
field = "SPI", max31855spiDevice
|
||
field = "CS #1", max31855_cs1
|
||
field = "CS #2", max31855_cs2
|
||
field = "CS #3", max31855_cs3
|
||
field = "CS #4", max31855_cs4
|
||
field = "CS #5", max31855_cs5
|
||
field = "CS #6", max31855_cs6
|
||
field = "CS #7", max31855_cs7
|
||
field = "CS #8", max31855_cs8
|
||
|
||
; Engine->idle Settings
|
||
dialog = idleSolenoid, "solenoid"
|
||
field = "Idle Solenoid Pin Mode", idle_solenoidPinMode, !useStepperIdle
|
||
field = "Idle Solenoid Pin", idle_solenoidPin, !useStepperIdle
|
||
field = "Idle Solenoid Frequency", idle_solenoidFrequency, !useStepperIdle
|
||
|
||
dialog = idleStepper, "stepper"
|
||
field = "Idle Stepper Step", idle_stepperStepPin, useStepperIdle
|
||
field = "Idle Stepper Dir", idle_stepperDirectionPin, useStepperIdle
|
||
field = "Idle Stepper Enable", stepperEnablePin, useStepperIdle
|
||
field = "Idle Stepper Enable mode", stepperEnablePinMode, useStepperIdle
|
||
field = "Stepper reaction time", idleStepperReactionTime, useStepperIdle
|
||
field = "Stepper total steps", idleStepperTotalSteps, useStepperIdle
|
||
|
||
dialog = idleType, "Type idle valve", border
|
||
panel = idleSolenoid, West
|
||
panel = idleStepper, East
|
||
|
||
dialog = idleSettings, "", yAxis
|
||
field = "Manual mode", idleMode
|
||
field = "Cranking Extra", crankingIdleAdjustment
|
||
field = "Auto target", targetIdleRpm, { idleMode == 0}
|
||
field = "idle P", idleRpmPid_pFactor
|
||
field = "idle I", idleRpmPid_iFactor
|
||
field = "idle D", idleRpmPid_dFactor
|
||
field = "idle offset", idleRpmPid_offset
|
||
slider = "Manual Idle Position", manIdlePosition, horizontal
|
||
field = ""
|
||
field = "use stepper", useStepperIdle
|
||
panel = idleType
|
||
|
||
; Engine->Fan Settings
|
||
dialog = fanSetting, "Fan Settings"
|
||
field = "Fan On Temperature", fanOnTemperature
|
||
field = "Fan Off Temperature", fanOffTemperature
|
||
field = ""
|
||
field = "!ECU reboot needed to apply these settings"
|
||
field = "Fan Pin Mode", fanPinMode
|
||
field = "Fan Pin", fanPin
|
||
|
||
; Engine->Main Relay Settings
|
||
dialog = mainRealay, "Main Relay Settings"
|
||
field = "!ECU reboot needed to apply these settings"
|
||
field = "Main Relay Mode", mainRelayPinMode
|
||
field = "Main Relay Pin", mainRelayPin
|
||
|
||
; Engine->Fuel Pump Settings
|
||
dialog = fuelPump, "Fuel Pump Settings"
|
||
field = "!ECU reboot needed to apply these settings"
|
||
field = "Fuel Pump Pin Mode", fuelPumpPinMode
|
||
field = "Fuel Pump Pin", fuelPumpPin
|
||
|
||
; Engine->MIL Settings
|
||
dialog = malfunction, "Check Engine Settings"
|
||
field = "!ECU reboot needed to apply these settings"
|
||
field = "Check Engine Pin Mode", malfunctionIndicatorPinMode
|
||
field = "Check Engine Pin", malfunctionIndicatorPin
|
||
field = "Warning Period", warningPeriod
|
||
|
||
; Engine->hip9011 Settings
|
||
dialog = hipFunction, "HIP9011 Settings (knock decoder)"
|
||
field = "Enabled", isHip9011Enabled
|
||
field = "Threshold", knockVThreshold, {isHip9011Enabled == 1}
|
||
field = "!ECU reboot needed to apply these settings"
|
||
field = "IntHold pin (hip9011 input)", hip9011IntHoldPin, {isHip9011Enabled == 1}
|
||
field = "IntHold pin (hip9011 input) mode", hip9011IntHoldPinMode, {isHip9011Enabled == 1}
|
||
field = "ChipSelect pin", hip9011CsPin, {isHip9011Enabled == 1}
|
||
field = "ChipSelect mode", hip9011CsPinMode, {isHip9011Enabled == 1}
|
||
field = "hip Output/stm input", hipOutputChannel, {isHip9011Enabled == 1}
|
||
field = "prescaler & SDO", hip9011PrescalerAndSDO, {isHip9011Enabled == 1}
|
||
field = "Band Freq override", knockBandCustom, {isHip9011Enabled == 1}
|
||
field = "SPI device", hip9011SpiDevice, {isHip9011Enabled == 1}
|
||
field = "SPI1sck", spi1SckMode, {isHip9011Enabled == 1}
|
||
field = "SPI1mosi", spi1MosiMode, {isHip9011Enabled == 1}
|
||
field = "SPI1miso", spi1MisoMode, {isHip9011Enabled == 1}
|
||
field = "SPI2sck", spi2SckMode, {isHip9011Enabled == 1}
|
||
field = "SPI2mosi", spi2MosiMode, {isHip9011Enabled == 1}
|
||
field = "SPI2miso", spi2MisoMode, {isHip9011Enabled == 1}
|
||
field = "SPI3sck", spi3SckMode, {isHip9011Enabled == 1}
|
||
field = "SPI3mosi", spi3MosiMode, {isHip9011Enabled == 1}
|
||
field = "SPI3miso", spi3MisoMode, {isHip9011Enabled == 1}
|
||
panel = knockThresholdCurve
|
||
|
||
; Engine->cj125 Settings
|
||
dialog = cj125Function, "CJ125 Settings (wbo decoder)"
|
||
field = "Enabled", isCJ125Enabled
|
||
field = "!ECU reboot needed to apply these settings"
|
||
field = "ChipSelect pin", cj125CsPin, {isCJ125Enabled == 1}
|
||
field = "ChipSelect mode", cj125CsPinMode, {isCJ125Enabled == 1}
|
||
field = "SPI device", cj125SpiDevice
|
||
field = "UA input", cj125ua, {isCJ125Enabled == 1}
|
||
field = "UR input", cj125ur, {isCJ125Enabled == 1}
|
||
|
||
dialog = spiFunction, "SPI settings"
|
||
field = "!ECU reboot needed to apply these settings"
|
||
field = "SPI1 enable", is_enabled_spi_1
|
||
field = "SPI1 MOSI", spi1mosiPin, {is_enabled_spi_1 == 1}
|
||
field = "SPI1 MISO", spi1misoPin, {is_enabled_spi_1 == 1}
|
||
field = "SPI1 SCK", spi1sckPin, {is_enabled_spi_1 == 1}
|
||
field = "SPI2 enable", is_enabled_spi_2
|
||
field = "SPI2 MOSI", spi2mosiPin, {is_enabled_spi_2 == 1}
|
||
field = "SPI2 MISO", spi2misoPin, {is_enabled_spi_2 == 1}
|
||
field = "SPI2 SCK", spi2sckPin, {is_enabled_spi_2 == 1}
|
||
field = "SPI3 enable", is_enabled_spi_3
|
||
field = "SPI3 MOSI", spi3mosiPin, {is_enabled_spi_3 == 1}
|
||
field = "SPI3 MISO", spi3misoPin, {is_enabled_spi_3 == 1}
|
||
field = "SPI3 SCK", spi3sckPin, {is_enabled_spi_3 == 1}
|
||
|
||
dialog = fuelClosedLoopDialog, "Fuel closed-loop correction"
|
||
field = "Enabled", fuelClosedLoopCorrectionEnabled
|
||
field = "!No correction below these value"
|
||
field = "CLT - low threshod", fuelClosedLoopCltThreshold, {fuelClosedLoopCorrectionEnabled == 1}
|
||
field = "RPM - low threshod", fuelClosedLoopRpmThreshold, {fuelClosedLoopCorrectionEnabled == 1}
|
||
field = "EGO - low threshod", fuelClosedLoopAfrLowThreshold, {fuelClosedLoopCorrectionEnabled == 1}
|
||
field = "!No correction above these value"
|
||
field = "TPS - high threshod", fuelClosedLoopTpsThreshold, {fuelClosedLoopCorrectionEnabled == 1}
|
||
field = "EGO - high threshod", fuelClosedLoopAfrHighThreshold, {fuelClosedLoopCorrectionEnabled == 1}
|
||
field = "!PID settings"
|
||
field = "P factor", fuelClosedLoopPid_pFactor, {fuelClosedLoopCorrectionEnabled == 1}
|
||
field = "I factor", fuelClosedLoopPid_iFactor, {fuelClosedLoopCorrectionEnabled == 1}
|
||
field = "D factor", fuelClosedLoopPid_dFactor, {fuelClosedLoopCorrectionEnabled == 1}
|
||
|
||
|
||
dialog = auxPidDialog, "Aux PID"
|
||
field = "Enabled", activateAuxPid1
|
||
field = "FSIO pin #1", auxPidPins1
|
||
field = "PWM Frequency", auxPidFrequency1
|
||
field = "verbose", isVerboseAuxPid1
|
||
field = "#target based on FSIO map#1"
|
||
field = "control period", auxPidDT1, {activateAuxPid1 == 1}
|
||
field = "#PID control"
|
||
field = "offset", auxPid1_offset, {activateAuxPid1 == 1}
|
||
field = "P factor", auxPid1_pFactor, {activateAuxPid1 == 1}
|
||
field = "I factor", auxPid1_iFactor, {activateAuxPid1 == 1}
|
||
field = "D factor", auxPid1_dFactor, {activateAuxPid1 == 1}
|
||
field = "Min", aux1PidMin
|
||
field = "Max", aux1PidMax
|
||
field = "FSIO pin #2", auxPidPins2
|
||
field = "FSIO pin #3", auxPidPins3
|
||
field = "FSIO pin #4", auxPidPins4
|
||
|
||
; Engine->Battery & Alternator
|
||
dialog = batteryDialog, "Battery Settings", yAxis
|
||
field = "vBatt ADC input", vbattAdcChannel
|
||
field = "Battery Input Divider Coefficient", vbattDividerCoeff
|
||
dialog = alternator, "Alternator Settings", yAxis
|
||
field = "Enabled", isAlternatorControlEnabled
|
||
field = "simple on/off mode", onOffAlternatorLogic, {isAlternatorControlEnabled == 1}
|
||
field = "Target", targetVBatt, {isAlternatorControlEnabled == 1}
|
||
field = "Pin", alternatorControlPin, {isAlternatorControlEnabled == 1}
|
||
field = "Pin Mode", alternatorControlPinMode, {isAlternatorControlEnabled == 1}
|
||
field = "PWM frequency", alternatorPwmFrequency, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0}
|
||
field = "Off Above TPS", alternatorOffAboveTps, {isAlternatorControlEnabled == 1}
|
||
field = "Verbose", isVerboseAlternator, {isAlternatorControlEnabled == 1}
|
||
field = "control period", alternatorDT, {isAlternatorControlEnabled == 1}
|
||
field = "#PID control"
|
||
field = "offset", alternatorControl_offset, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0}
|
||
field = "P factor", alternatorControl_pFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0}
|
||
field = "I factor", alternatorControl_iFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0}
|
||
field = "D factor", alternatorControl_dFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0}
|
||
field = "Min", alternatorPidMin
|
||
field = "Max", alternatorPidMax
|
||
field = "#% duty = Pterm + Iterm + Dterm + offset%"
|
||
|
||
|
||
dialog = warmupFuelDialog, "Warmup fuel closed-loop", yAxis
|
||
field = "use automatic Pid Afr control", useWarmupPidAfr
|
||
field = "warmup temperature Threshold", warmupAfrThreshold
|
||
field = "wa offset", warmupAfrPid_offset
|
||
field = "wa P factor", warmupAfrPid_pFactor
|
||
field = "wa I factor", warmupAfrPid_iFactor
|
||
field = "wa D factor", warmupAfrPid_dFactor
|
||
field = "#correction = Pterm + Iterm + Dterm + offset"
|
||
|
||
|
||
dialog = energySystems, "Battery and Alternator Settings", yAxis
|
||
panel = batteryDialog
|
||
panel = alternator
|
||
|
||
; Engine->Speed Sensor
|
||
dialog = speedSensor, "Speed Sensor Settings"
|
||
field = "Input pin", vehicleSpeedSensorInputPin
|
||
field = "revolution to speed mult", vehicleSpeedCoef
|
||
|
||
; Engine->Other inputs
|
||
dialog = analogInputs, "Analog inputs"
|
||
field = "!ECU reboot needed to apply these settings"
|
||
field = "TPS ADC input", tpsAdcChannel
|
||
field = "TPS low value detection threshold", tpsErrorDetectionTooLow
|
||
field = "TPS high value detection threshold", tpsErrorDetectionTooHigh
|
||
field = "!todo: move MAF channel to maf curve dialog"
|
||
field = "MAF ADC input", mafAdcChannel
|
||
field = "Baro ADC input", baroSensor_hwChannel
|
||
field = "Analog divider", analogInputDividerCoefficient
|
||
field = "Use BiQuad averaging", useBiQuadAnalogFiltering
|
||
field = "Smoothing factor", slowAdcAlpha, {useBiQuadAnalogFiltering == 0}
|
||
field = "Bi_Q a0", biQuad_a0, {useBiQuadAnalogFiltering == 1}
|
||
field = "Bi_Q a1", biQuad_a1, {useBiQuadAnalogFiltering == 1}
|
||
field = "Bi_Q a2", biQuad_a2, {useBiQuadAnalogFiltering == 1}
|
||
field = "Bi_Q b1", biQuad_b1, {useBiQuadAnalogFiltering == 1}
|
||
field = "Bi_Q b2", biQuad_b2, {useBiQuadAnalogFiltering == 1}
|
||
|
||
dialog = tachSettings, "Tachometer output"
|
||
field = "!See also dizzySparkOutputPin"
|
||
field = "pin", tachOutputPin
|
||
field = "pin mode", tachOutputPinMode
|
||
field = "rise at trigger index", tachPulseTriggerIndex
|
||
field = "pulse duration", tachPulseDuractionMs
|
||
|
||
|
||
; Board->Connection
|
||
dialog = tsPort, "TunerStudio Port"
|
||
field = "tunerStudioSerialSpeed", tunerStudioSerialSpeed
|
||
field = "Use PC10/PC11 serial?", useSerialPort
|
||
field = "startConsoleInBinaryMode", startConsoleInBinaryMode
|
||
|
||
dialog = canBus, "CAN Bus"
|
||
field = "Can Read Enabled", canReadEnabled
|
||
field = "Can Write Enabled", canWriteEnabled
|
||
; field = "Can Nbc Type", canNbcType
|
||
field = "Can Sleep Period", canSleepPeriod
|
||
field = "TX pin", canTxPin
|
||
field = "RX pin", canRxPin
|
||
|
||
dialog = sdCard, "SD Card Logger"
|
||
field = "SdCard", isSdCardEnabled
|
||
field = "CS Pin", sdCardCsPin
|
||
field = "SPI", sdCardSpiDevice
|
||
field = "log format", logFormat
|
||
field = "Mass Storage", storageMode
|
||
|
||
dialog = gpsReceiver, "GPS Receiver"
|
||
field = "gps RX", gps_rx_pin
|
||
field = "gps TX", gps_tx_pin
|
||
|
||
dialog = lcdScreen, "LCD screen"
|
||
field = "display Mode", displayMode
|
||
field = "height", HD44780height
|
||
field = "width", HD44780width
|
||
field = "RS pin", HD44780_rs
|
||
field = "E pin", HD44780_e
|
||
field = "D4 pin", HD44780_db4
|
||
field = "D5 pin", HD44780_db5
|
||
field = "D6 pin", HD44780_db6
|
||
field = "D7 pin", HD44780_db7
|
||
|
||
dialog = connectRight, "", yAxis
|
||
panel = tsPort
|
||
panel = canBus
|
||
panel = sdCard
|
||
panel = gpsReceiver
|
||
|
||
dialog = connection, "", border
|
||
panel = lcdScreen, East
|
||
panel = connectRight, West
|
||
|
||
dialog = joystickPanel, "Joystick"
|
||
field = "joustick center button", joystickCenterPin
|
||
field = "joustick button A", joystickAPin
|
||
field = "joustick button B", joystickBPin
|
||
field = "joustick button C", joystickCPin
|
||
field = "joustick button D", joystickDPin
|
||
|
||
dialog = monitoringSettings, "rusEfi Console Settings"
|
||
field = "Sensor Sniffer", sensorChartMode
|
||
field = " Threshold", sensorSnifferRpmThreshold
|
||
field = " Each X cycle", sensorChartFrequency
|
||
field = "Engine Sniffer", isEngineChartEnabled
|
||
field = " Threshold", engineSnifferRpmThreshold
|
||
|
||
|
||
|
||
; Tuning->General
|
||
dialog = generalSettings, "General"
|
||
field = "RPM Hard Limit", rpmHardLimit
|
||
field = "Boost Cut Pressure", boostCutPressure
|
||
field = ""
|
||
field = "Fuel Algorithm", fuelAlgorithm
|
||
field = ""
|
||
field = "#System hack's"
|
||
field = "Global fuel correction", globalFuelCorrection
|
||
field = "Ignition Math Logic @", ignMathCalculateAtIndex
|
||
field = "MAP Averaging Logic @", mapAveragingSchedulingAtIndex
|
||
field = "comm status pin", communicationPin
|
||
field = "running status", runningPin
|
||
|
||
dialog = crankingFuel, "Fuel"
|
||
field = "Injection Mode", crankingInjectionMode
|
||
field = "Base Fuel Pulse Width", cranking_baseFuel
|
||
|
||
|
||
dialog = crankingIgnition, "Ignition"
|
||
field = "Advance", crankingTimingAngle
|
||
field = "Use fixed Dwell?", useConstantDwellDuringCranking
|
||
field = "Fixed Dwell", ignitionDwellForCrankingMs, {useConstantDwellDuringCranking == 1}
|
||
field = "Charge Angle", crankingChargeAngle, {useConstantDwellDuringCranking == 0}
|
||
|
||
dialog = postCrankingEnrichment, "Post-cranking short-time fuel enrichment"
|
||
field = "Target temperature", postCrankingTargetClt
|
||
field = "Post-Cranking factor", postCrankingFactor
|
||
field = "Duraction", postCrankingDurationSec
|
||
|
||
|
||
; Tuning->Cranking
|
||
dialog = crankingDialog, "Cranking"
|
||
field = "Cranking RPM limit", cranking_rpm
|
||
panel = crankingFuel
|
||
panel = crankingIgnition
|
||
field = "Cranking IAC Extra", crankingIdleAdjustment
|
||
panel = postCrankingEnrichment
|
||
field = ""
|
||
field = ""
|
||
field = "enable Cylinder Cleanup", isCylinderCleanupEnabled
|
||
|
||
|
||
dialog = EngineLoadAccelPanel, "Engine Load"
|
||
field = "Length", engineLoadAccelLength
|
||
field = "Accel Threshold", engineLoadAccelEnrichmentThreshold
|
||
field = "Accel Multiplier", engineLoadAccelEnrichmentMultiplier
|
||
field = "Decel Threshold", engineLoadDecelEnleanmentThreshold
|
||
field = "Decel Multiplier", engineLoadDecelEnleanmentMultiplier
|
||
|
||
dialog = TpsAccelPanel, "TPS"
|
||
field = "Length", tpsAccelLength
|
||
field = "Accel Threshold", tpsAccelEnrichmentThreshold
|
||
field = "Decel Threshold", tpsDecelEnleanmentThreshold
|
||
; field = "Decel Multiplier", tpsDecelEnleanmentMultiplier
|
||
|
||
; Tuning->AccelEnrichment
|
||
dialog = AccelEnrich, "Accel/Decel Enrichment"
|
||
panel = EngineLoadAccelPanel
|
||
panel = TpsAccelPanel
|
||
field = "sucked off wall coefficient", suckedOffCoef
|
||
field = "added to wall coef", addedToWallCoef
|
||
|
||
|
||
; Flex Logic
|
||
dialog = fsioIO, "Outputs"
|
||
field = "output #1", fsioPins1
|
||
field = "output #2", fsioPins2
|
||
field = "output #3", fsioPins3
|
||
field = "output #4", fsioPins4
|
||
field = "output #5", fsioPins5
|
||
field = "output #6", fsioPins6
|
||
field = "output #7", fsioPins7
|
||
field = "output #8", fsioPins8
|
||
field = "output #9", fsioPins9
|
||
field = "output #10", fsioPins10
|
||
field = "output #11", fsioPins11
|
||
field = "output #12", fsioPins12
|
||
field = "output #13", fsioPins13
|
||
field = "output #14", fsioPins14
|
||
field = "output #15", fsioPins15
|
||
field = "output #16", fsioPins16
|
||
field = ""
|
||
field = ""
|
||
|
||
dialog = fsioFrequency, "Frequency"
|
||
field = "freq #1", fsioFrequency1
|
||
field = "freq #2", fsioFrequency2
|
||
field = "freq #3", fsioFrequency3
|
||
field = "freq #4", fsioFrequency4
|
||
field = "freq #5", fsioFrequency5
|
||
field = "freq #6", fsioFrequency6
|
||
field = "freq #7", fsioFrequency7
|
||
field = "freq #8", fsioFrequency8
|
||
field = "freq #9", fsioFrequency9
|
||
field = "freq #10", fsioFrequency10
|
||
field = "freq #11", fsioFrequency11
|
||
field = "freq #12", fsioFrequency12
|
||
field = "freq #13", fsioFrequency13
|
||
field = "freq #14", fsioFrequency14
|
||
field = "freq #15", fsioFrequency15
|
||
field = "freq #16", fsioFrequency16
|
||
field = ""
|
||
field = ""
|
||
|
||
dialog = fsioSetting, "Setting"
|
||
field = "Set number is not associated with the output number."
|
||
field = "Set number, only the cell number with some numbers."
|
||
field = "set #1", fsio_setting1
|
||
field = "set #2", fsio_setting2
|
||
field = "set #3", fsio_setting3
|
||
field = "set #4", fsio_setting4
|
||
field = "set #5", fsio_setting5
|
||
field = "set #6", fsio_setting6
|
||
field = "set #7", fsio_setting7
|
||
field = "set #8", fsio_setting8
|
||
field = "set #9", fsio_setting9
|
||
field = "set #10", fsio_setting10
|
||
field = "set #11", fsio_setting11
|
||
field = "set #12", fsio_setting12
|
||
field = "set #13", fsio_setting13
|
||
field = "set #14", fsio_setting14
|
||
field = "set #15", fsio_setting15
|
||
field = "set #16", fsio_setting16
|
||
|
||
dialog = fsioOutputsDialog, "FSIO outputs", border
|
||
panel = fsioIO, West
|
||
panel = fsioFrequency, Center
|
||
panel = fsioSetting, East
|
||
|
||
|
||
dialog = fsioInputsDialog, "FSIO inputs"
|
||
field = "ADC #1", fsioAdc1
|
||
field = "ADC #2", fsioAdc2
|
||
field = "ADC #3", fsioAdc3
|
||
field = "ADC #4", fsioAdc4
|
||
|
||
dialog = etbDialog, "Electronic Thtottle Body (alpha)"
|
||
field = "pedal Position Channel", pedalPositionChannel
|
||
field = "Pedal min", pedalPositionMin
|
||
field = "Pedal max", pedalPositionMax
|
||
field = "PWM Frequency", etbFreq
|
||
field = "Dir #1", etbDirectionPin1
|
||
field = "Dir #2", etbDirectionPin2
|
||
field = "Control #1", etbControlPin1
|
||
field = "Control #2", etbControlPin2
|
||
|
||
dialog = testSpark, "Spark"
|
||
commandButton = "Spark #1", cmd_test_spk1
|
||
commandButton = "Spark #2", cmd_test_spk2
|
||
commandButton = "Spark #3", cmd_test_spk3
|
||
commandButton = "Spark #4", cmd_test_spk4
|
||
commandButton = "Spark #5", cmd_test_spk5
|
||
commandButton = "Spark #6", cmd_test_spk6
|
||
commandButton = "Spark #7", cmd_test_spk7
|
||
commandButton = "Spark #8", cmd_test_spk8
|
||
|
||
dialog = testInjectors, "Fuel"
|
||
commandButton = "Injector #1", cmd_test_inj1
|
||
commandButton = "Injector #2", cmd_test_inj2
|
||
commandButton = "Injector #3", cmd_test_inj3
|
||
commandButton = "Injector #4", cmd_test_inj4
|
||
commandButton = "Injector #5", cmd_test_inj5
|
||
commandButton = "Injector #6", cmd_test_inj6
|
||
commandButton = "Injector #7", cmd_test_inj7
|
||
commandButton = "Injector #8", cmd_test_inj8
|
||
|
||
dialog = testMisc, "Misc"
|
||
commandButton = "Come To Pit", cmd_call_from_pit
|
||
commandButton = "Fuel Pump", cmd_test_fuel_pump
|
||
commandButton = "Radiator Fan", cmd_test_radiator_fan
|
||
commandButton = "Check Engine", cmd_test_check_engine_light
|
||
commandButton = "Idle Air Valve", cmd_test_idle_valve
|
||
|
||
; bench test
|
||
dialog = ioTest, "I-O Test", border
|
||
panel = testSpark, West
|
||
panel = testInjectors, Center
|
||
panel = testMisc, East
|
||
|
||
|
||
; Board->ECU stimulator
|
||
dialog = ecuStimulator, "ECU stimulator"
|
||
field = "Trigger Simulator", triggerSimulatorFrequency
|
||
field = "self-stimulation", directSelfStimulation
|
||
field = ""
|
||
field = "digipot spi", digitalPotentiometerSpiDevice
|
||
field = "digipot CS #0", digitalPotentiometerChipSelect1
|
||
field = "digipot CS #1", digitalPotentiometerChipSelect2
|
||
field = "digipot CS #2", digitalPotentiometerChipSelect3
|
||
field = "digipot CS #3", digitalPotentiometerChipSelect4
|
||
field = ""
|
||
field = "trigger stimulator pin #1", triggerSimulatorPins1
|
||
field = "trigger stimulator pin #2", triggerSimulatorPins2
|
||
field = "trigger stimulator pin #3", triggerSimulatorPins3
|
||
field = ""
|
||
field = "Logic input channel 1", logicAnalyzerPins1
|
||
field = "Logic input channel 2", logicAnalyzerPins2
|
||
field = "Logic input channel 3", logicAnalyzerPins3
|
||
field = "Logic input channel 4", logicAnalyzerPins4
|
||
field = ""
|
||
field = "Engine chart size", engineChartSize
|
||
|
||
; Racing Features->Launch Control
|
||
dialog = smLaunchControl, "Launch Control Settings"
|
||
field = "RPM Step1 Limit", step1rpm
|
||
field = "Launch RPM Window" step1RpmWindow
|
||
field = "Step1 Ignition Advance", step1timing
|
||
field = "Use Spark Cut", step1SparkCutEnable
|
||
field = "Use Fuel Cut", step1fuelCutEnable
|
||
field = "clutchDownPin", clutchDownPin
|
||
field = "clutchUpPin", clutchUpPin
|
||
field = "brakePedalPin", brakePedalPin
|
||
|