rusefi/firmware/tunerstudio/rusefi.input

3735 lines
197 KiB
Plaintext
Raw Normal View History

; This is a TunerStudio project for the RusEFI.com engine management system
2017-08-16 22:12:02 -07:00
;
; This file has been generated by invoking gen_config.bat.
; The input files are
; rusefi.input the common template
; rusefi_config.txt the project specific file
2019-06-12 09:45:07 -07:00
;
2019-06-12 16:35:07 -07:00
; In TunerStudio some fields have little question mark on the left of the name for additional field tips.
2019-11-03 07:36:35 -08:00
; Those tips are defined in ../integration/rusefi_config.txt
;
; For example
2019-06-12 09:45:07 -07:00
;
; float bias_resistor;+Pull-up resistor value on your board;"Ohm"
; here 'bias_resistor' is internal field name and the text between semicolons is what produces the tooltip
; Note that '+' sign is required after first semicolon for tooltop to appear in TunerStudio
;
;
2020-05-22 19:47:47 -07:00
; field = "# blue text"
; field = "! red text"
; field = "normal text"
;
2019-06-12 09:45:07 -07:00
;
2016-07-20 20:03:00 -07:00
; 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
[SettingGroups]
2017-06-19 01:19:12 -07:00
; the referenceName will over-ride previous, so if you are creating a
; settingGroup with a reference name of lambdaSensor, it will replace the
; setting group defined in the settingGroups.xml of the TunerStudio config
; folder. If is is an undefined referenceName, it will be added.
; keyword = referenceName, DisplayName
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
2020-09-07 08:31:29 -07:00
signature = @@TS_SIGNATURE@@
2017-06-19 01:19:12 -07:00
2016-07-20 20:03:00 -07:00
[TunerStudio]
queryCommand = "S"
2017-05-07 05:20:23 -07:00
versionInfo = "V" ; firmwave version for title bar.
signature = @@TS_SIGNATURE@@ ; signature is expected to be 7 or more characters.
2016-07-20 20:03:00 -07:00
[Constants]
; new packet serial format with CRC
messageEnvelopeFormat = msEnvelope_1.0
endianness = little
nPages = 1
pageIdentifier = "\x00\x00"
2020-08-18 19:37:08 -07:00
pageReadCommand = "@@TS_READ_COMMAND_char@@%2o%2c"
burnCommand = "@@TS_BURN_COMMAND_char@@"
pageActivate = "@@TS_PAGE_COMMAND_char@@"
pageValueWrite = "@@TS_SINGLE_WRITE_COMMAND_char@@%2o%v"
pageChunkWrite = "@@TS_CHUNK_WRITE_COMMAND_char@@%2o%2c%v"
crc32CheckCommand = "@@TS_CRC_CHECK_COMMAND_char@@%2o%2c"
retrieveConfigError = "e"
2016-07-20 20:03:00 -07:00
; TS will try to use legacy temp units in some cases, showing "deg F" on a CLT gauge that's actually deg C
useLegacyFTempUnits = false
2016-07-20 20:03:00 -07:00
;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
2017-03-25 06:00:01 -07:00
; delayAfterPortOpen = 500
blockingFactor = @@BLOCKING_FACTOR@@ ; max chunk size
2016-07-20 20:03:00 -07:00
;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
2017-03-26 14:54:37 -07:00
; this section will be generated automatically by ConfigDefinition.jar based on rusefi_config.txt
2016-07-20 20:03:00 -07:00
; CONFIG_DEFINITION_END
2018-06-15 17:45:06 -07:00
idleRpmPid_offset = "Constant base value"
2016-07-20 20:03:00 -07:00
[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"
2017-06-19 19:29:03 -07:00
gauge1 = RPMGauge
#if LAMBDA
gauge2 = lambda1Gauge
#else
gauge2 = afr1Gauge
#endif
2017-06-19 14:08:17 -07:00
gauge3 = MAPGauge
2016-07-20 20:03:00 -07:00
gauge4 = veValueGauge
2017-07-26 19:52:13 -07:00
[LoggerDefinition]
; valid logger types: composite, tooth, trigger, csv
; loggerDef = compositeLogger, "Primary Trigger Logger", tooth
loggerDef = compositeLogger, "Trigger Logger", composite
startCommand = "l\x01"
stopCommand = "l\x02"
dataReadCommand = "L"
dataReadTimeout = 10000 ; time in ms
dataReadyCondition = { toothLogReady }
continuousRead = true
; each packet is @@COMPOSITE_PACKET_SIZE@@ and we have @@COMPOSITE_PACKET_COUNT@@ of those
dataLength = @@COMPOSITE_DATA_LENGTH_HALF@@
2017-07-26 19:52:13 -07:00
;tooth
2017-08-12 10:06:10 -07:00
; recordDef = headerLen, footerLen, recordLen
; recordDef = 0, 0, @@COMPOSITE_PACKET_SIZE@@
2017-08-12 10:06:10 -07:00
; uint16 that stores 1/100 second
; recordField = toothTime, "tooth", 0, 16, 0.01, "ms"
2017-08-12 10:06:10 -07:00
; recordDef = headerLen, footerLen, recordLen
recordDef = 0, 0, @@COMPOSITE_PACKET_SIZE@@
; these names are hard-coded inside TS
recordField = priLevel, "PriLevel", 0, 1, 1.0, "Flag"
recordField = secLevel, "SecLevel", 1, 1, 1.0, "Flag"
recordField = trigger, "Trigger", 2, 1, 1.0, "Flag"
recordField = sync, "Sync", 3, 1, 1.0, "Flag"
recordField = coil, "Coil", 4, 1, 1.0, "Flag"
recordField = inj, "Injector", 5, 1, 1.0, "Flag"
recordField = time, "Time", 8, 32, 0.001, "ms"
; it seems that TS also needs to know the diff.size of a tooth
calcField = toothTime, "ToothTime", "ms", { time - pastValue(time, 1) }
2016-07-20 20:03:00 -07:00
[VeAnalyze]
; tableName, lambdaTargetTableName, lambdaChannel, egoCorrectionChannel, activeCondition
#if LAMBDA
veAnalyzeMap = veTableTbl, lambdaTableTbl, lambdaValue, egoCorrectionForVeAnalyze, { 1 }
lambdaTargetTables = lambdaTableTbl, afrTSCustom
#else
veAnalyzeMap = veTableTbl, afrTableTbl, AFRValue, egoCorrectionForVeAnalyze, { 1 }
lambdaTargetTables = afrTableTbl, afrTSCustom
#endif
2016-07-20 20:03:00 -07:00
; filter = Name, "DisplayName", outputChannel, operator, defaultVal, userAdjustable
2017-06-19 19:29:03 -07:00
filter = minRPMFilter, "Minimum RPM", RPMValue, < , 500, , true
2016-07-20 20:03:00 -07:00
filter = minCltFilter, "Minimum CLT", coolant, < , 60, , true
filter = deltaTps, "dTPS", deltaTps > , 50, , true
filter = VBatt, "VBatt", VBatt < , 12, , true
2018-03-22 05:12:34 -07:00
filter = minTps, "Minimum TPS", TPSValue, < , 1, , true
2016-07-20 20:03:00 -07:00
2020-11-29 15:12:16 -08:00
;
; in order to add new TunerStudio gauge you need to chagne two places
; 1) add a line here in '[OutputChannels]'
; 2) in rusEFI firmware make a change to tunerstudio_outputs.h
;
2016-07-20 20:03:00 -07:00
[OutputChannels]
2017-05-27 06:00:18 -07:00
ochGetCommand = "O%2o%2c"
2016-07-20 20:03:00 -07:00
2016-12-25 10:02:34 -08:00
; see TS_OUTPUT_SIZE in console source code
2019-12-16 18:44:11 -08:00
ochBlockSize = @@TS_OUTPUT_SIZE@@
2016-07-20 20:03:00 -07:00
2018-01-06 07:53:15 -08:00
;
; see TunerStudioOutputChannels struct
;
; Bit flags
sd_present = bits, U32, 0, [0:0], "true", "false";
isIgnitionEnabledIndicator=bits,U32, 0, [1:1], "true", "false";
isInjectionEnabledIndicator=bits,U32,0, [2:2], "true", "false";
isCylinderCleanupActivated=bits,U32, 0, [4:4], "true", "false";
ind_fuel_pump = bits, U32, 0, [5:5], "true", "false";
ind_fan = bits, U32, 0, [6:6], "true", "false";
ind_o2_heater = bits, U32, 0, [7:7], "true", "false";
ind_check_engine= bits, U32, 0, [8:8], "true", "false";
needBurn = bits, U32, 0, [9:9], "true", "false";
clutchUpState =bits, U32, 0, [11:11], "true", "false";
clutchDownState =bits, U32, 0, [12:12], "true", "false";
brakePedalIndicator=bits, U32, 0, [15:15], "true", "false";
toothLogReady =bits, U32, 0, [16:16], "true", "false";
2020-11-16 16:09:05 -08:00
acSwitchState =bits, U32, 0, [17:17], "true", "false";
isTpsError = bits, U32, 0, [18:18], "true", "false";
ind_clt_error = bits, U32, 0, [19:19], "true", "false";
; not implemented
; ind_map_error = bits, U32, 0, [20:20], "true", "false";
ind_iat_error = bits, U32, 0, [21:21], "true", "false";
acState = bits, U32, 0, [22:22], "true", "false";
ind_isTriggerError = bits, U32, 0, [23:23], "true", "false";
ind_hasFatalError=bits, U32, 0, [24:24], "true", "false";
ind_isWarnNow =bits, U32, 0, [25:25], "true", "false";
ind_pedal_error =bits, U32, 0, [26:26], "true", "false";
isTps2Error = bits, U32, 0, [29:29], "true", "false";
isIdleClosedLoop= bits, U32, 0, [30:30], "true", "false";
isIdleCoasting = bits, U32, 0, [31:31], "true", "false";
; RPM, vss
RPMValue = scalar, U16, 4, "RPM", 1, 0.00000
rpmAcceleration = scalar, S16, 6, "RPM/s", 1, 0
speedToRpmRatio = scalar, S16, 8, "value",{1/@@PACK_MULT_PERCENT@@}, 0
vehicleSpeedKph = scalar, U08, 10, "kph", 1, 0.0
; temperatures
internalMcuTemperature = scalar,S08, 11, "deg C", 1, 0
coolant = scalar, S16, 12, "deg C",{1/@@PACK_MULT_TEMPERATURE@@}, 0.0
intake = scalar, S16, 14, "deg C",{1/@@PACK_MULT_TEMPERATURE@@}, 0.0
2020-07-27 19:50:48 -07:00
auxt1 = scalar, S16, 16, "deg C",{1/@@PACK_MULT_TEMPERATURE@@}, 0.0
auxt2 = scalar, S16, 18, "deg C",{1/@@PACK_MULT_TEMPERATURE@@}, 0.0
; throttle, pedal
2020-02-04 08:47:01 -08:00
TPSValue = scalar, S16, 20, "%",{1/@@PACK_MULT_PERCENT@@}, 0
throttlePedalPosition = scalar,S16, 22, "%",{1/@@PACK_MULT_PERCENT@@}, 0
tpsADC = scalar, U16, 24, "ADC", 1, 0.0;
; air flow/mass measurments
MAFValue = scalar, U16, 26, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0
massAirFlowValue= scalar, U16, 28, "Kg/h", {1/@@PACK_MULT_MASS_FLOW@@}, 0
MAPValue = scalar, U16, 30, "kPa",{1/@@PACK_MULT_PRESSURE@@}, 0.0
baroPressure = scalar, U16, 32, "kPa",{1/@@PACK_MULT_PRESSURE@@}, 0.0
lambdaValue = scalar, U16, 34, "",{1/@@PACK_MULT_LAMBDA@@}, 0.0
; misc sensors
VBatt = scalar, U16, 38, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0.0
oilPressure = scalar, U16, 40, "kPa",{1/@@PACK_MULT_PRESSURE@@}, 0.0
vvtPositionB1I = scalar, S16, 42, "deg",{1/@@PACK_MULT_ANGLE@@}, 0
; 10 bit TPS ADC value (from 0 to 1023 in 5v scale)
;tpsADC2 = scalar, U16, 44, "ADC", 1, 0.0;
; fuel math
chargeAirMass = scalar, U16, 44, "g",0.001, 0
crankingFuelMs = scalar, U16, 46, "mg",{1/@@PACK_MULT_FUEL_MASS@@}, 0.0
currentTargetAfr= scalar, U16, 48, "ratio",{1/@@PACK_MULT_AFR@@}, 0
baseFuel = scalar, U16, 50, "mg",{1/@@PACK_MULT_FUEL_MASS@@}, 0
fuelRunning = scalar, U16, 52, "mg",{1/@@PACK_MULT_FUEL_MASS@@}, 0
actualLastInjection=scalar,U16, 54, "ms",{1/@@PACK_MULT_MS@@}, 0.0
injectorDutyCycle=scalar, U08, 56, "%", 0.5, 0
veValue = scalar, U08, 57, "ratio", 0.5, 0
injectionOffset = scalar, S16, 58, "deg",{1/@@PACK_MULT_ANGLE@@}, 0
tCharge = scalar, U16, 60, "deg C",{1/@@PACK_MULT_TEMPERATURE@@}, 0.0
; Corrections
injectorLagMs = scalar, U16, 62, "ms",{1/@@PACK_MULT_MS@@}, 0.0
2020-02-04 08:47:01 -08:00
iatCorrection = scalar, S16, 64, "%",{1/@@PACK_MULT_PERCENT@@}, 0
cltCorrection = scalar, S16, 66, "%",{1/@@PACK_MULT_PERCENT@@}, 0
baroCorrection = scalar, S16, 68, "%",{1/@@PACK_MULT_PERCENT@@}, 0
fuelPidCorrection=scalar, S16, 296, "%",{1/@@PACK_MULT_PERCENT@@}, 0
fuelPidCorrection2=scalar, S16, 298, "%",{1/@@PACK_MULT_PERCENT@@}, 0
; Wall model AE
wallFuelAmount = scalar, U16, 72, "ms",{1/@@PACK_MULT_MS@@}, 0
wallFuelCorrection=scalar, S16, 74, "ms",0.001, 0
; TPS/load AE
engineLoadDelta = scalar, S16, 76, "value",{1/@@PACK_MULT_PERCENT@@}, 0
deltaTps = scalar, S16, 78, "ratio",{1/@@PACK_MULT_PERCENT@@}, 0
engineLoadAccelExtra=scalar,S16, 80, "value",{1/@@PACK_MULT_PERCENT@@}, 0
tpsAccelFuel = scalar, U16, 82, "ms",{1/@@PACK_MULT_MS@@}, 0
; Ignition
2020-01-14 19:57:29 -08:00
ignitionAdvance = scalar, S16, 84, "deg",{1/@@PACK_MULT_ANGLE@@}, 0.0
sparkDwellValue = scalar, U16, 86, "ms",{1/@@PACK_MULT_MS@@}, 0.0
2020-02-04 08:47:01 -08:00
coilDutyCycle = scalar, S16, 88, "%",{1/@@PACK_MULT_PERCENT@@}, 0
; Idle & ETB
idleAirValvePosition=scalar,S16, 90, "%",{1/@@PACK_MULT_PERCENT@@}, 0
etbTarget = scalar, S16, 92, "%",{1/@@PACK_MULT_PERCENT@@}, 0
etb1DutyCycle = scalar, S16, 94, "%",{1/@@PACK_MULT_PERCENT@@}, 0
etb1Error = scalar, S16, 96, "%",{1/@@PACK_MULT_PERCENT@@}, 0
; Fuel system
fuelTankLevel = scalar, U16, 98, "%",{1/@@PACK_MULT_PERCENT@@}, 0
totalFuelConsumption=scalar,U16, 100, "grams", 1, 0
fuelFlowRate = scalar, U16, 102, "gram/s",{1/@@PACK_MULT_FUEL_FLOW@@}, 0
; Y axis values for selectable tables
veTableYAxis = scalar, U16, 104, "%", 0.01, 0
afrTableYAxis = scalar, U16, 106, "%", 0.01, 0
; Knock
knockLevel = scalar, F32, 108, "Volts", 1, 0
knockCount = scalar, U16, 306, "count", 1, 0
; Mode, firmware, protocol, run time
2020-03-28 17:14:17 -07:00
; TS requires 'seconds' name since it has special internal meaning
seconds = scalar, U32, 112, "sec", 1, 0.0
engineMode = scalar, U32, 116, "em", 1, 0.0;
firmwareVersion = scalar, U32, 120,"version_f", 1, 0
2020-05-08 21:53:04 -07:00
; calibation helpers
calibrationValue = scalar, F32, 128, "", 1, 0
calibrationMode = scalar, U08, 132, "", 1, 0
2020-05-09 15:31:41 -07:00
; 1 bytes padding1
2020-09-07 08:31:29 -07:00
fuelingLoad = scalar, U16, 134, "%", 0.01, 0
ignitionLoad = scalar, U16, 136, "%", 0.01, 0
engineMakeCodeNameCrc16= scalar, U16, 138, "crc16", 1, 0
; Errors
totalTriggerErrorCounter=scalar,U32, 140,"counter", 1, 0
; orderingErrorCounter 144
warningCounter = scalar, U16, 148, "count", 1, 0
lastErrorCode = scalar, U16, 150, "error", 1, 0
recentErrorCode0= scalar, U16, 152, "error", 1, 0
recentErrorCode1= scalar, U16, 154, "error", 1, 0
recentErrorCode2= scalar, U16, 156, "error", 1, 0
recentErrorCode3= scalar, U16, 158, "error", 1, 0
recentErrorCode4= scalar, U16, 160, "error", 1, 0
recentErrorCode5= scalar, U16, 162, "error", 1, 0
recentErrorCode6= scalar, U16, 164, "error", 1, 0
recentErrorCode7= scalar, U16, 166, "error", 1, 0
; Debug
debugFloatField1= scalar, F32, 168, "val", 1, 0.0
debugFloatField2= scalar, F32, 172, "val", 1, 0.0
debugFloatField3= scalar, F32, 176, "val", 1, 0.0
debugFloatField4= scalar, F32, 180, "val", 1, 0.0
debugFloatField5= scalar, F32, 184, "val", 1, 0.0
debugFloatField6= scalar, F32, 188, "val", 1, 0.0
debugFloatField7= scalar, F32, 192, "val", 1, 0.0
debugIntField1 = scalar, S32, 196, "val", 1, 0.0
debugIntField2 = scalar, S32, 200, "val", 1, 0.0
debugIntField3 = scalar, S32, 204, "val", 1, 0.0
debugIntField4 = scalar, S16, 208, "val", 1, 0.0
debugIntField5 = scalar, S16, 210, "val", 1, 0.0
; Accel
accelerationX = scalar, S16, 212, "G", 0.01, 0
accelerationY = scalar, S16, 214, "G", 0.01, 0
; egt
egt1 = scalar, S16, 216, "deg C", 1, 0
egt2 = scalar, S16, 218, "deg C", 1, 0
egt3 = scalar, S16, 220, "deg C", 1, 0
egt4 = scalar, S16, 222, "deg C", 1, 0
egt5 = scalar, S16, 224, "deg C", 1, 0
egt6 = scalar, S16, 226, "deg C", 1, 0
egt7 = scalar, S16, 228, "deg C", 1, 0
egt8 = scalar, S16, 230, "deg C", 1, 0
TPS2Value = scalar, S16, 232, "%",{1/@@PACK_MULT_PERCENT@@}, 0
rawTps1Primary = scalar, U16, 234, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0.0
rawPpsPrimary = scalar, U16, 236, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0.0
rawClt = scalar, U16, 238, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0.0
rawIat = scalar, U16, 240, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0.0
rawOilPressure = scalar, U16, 242, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0.0
2020-08-21 05:53:23 -07:00
rawPpsSecondary = scalar, U16, 248, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0.0
2018-10-10 19:19:20 -07:00
; we use this to match logs to tunes
2020-07-24 08:41:45 -07:00
tuneCrc16 = scalar, U16, 244, "crc16", 1, 0
sd_logging_internal = bits, U08, 246, [0:0], "true", "false"
sd_msd = bits, U08, 246, [1:1], "true", "false"
ind_fan_2 = bits, U08, 246, [2:2], "true", "false"
; Transmission
tcuCurrentGear = scalar, S08, 247, "gear", 1, 0
knock1 = scalar, S08, 250, "dbv", 1, 0
knock2 = scalar, S08, 251, "dbv", 1, 0
knock3 = scalar, S08, 252, "dbv", 1, 0
knock4 = scalar, S08, 253, "dbv", 1, 0
knock5 = scalar, S08, 254, "dbv", 1, 0
knock6 = scalar, S08, 255, "dbv", 1, 0
knock7 = scalar, S08, 256, "dbv", 1, 0
knock8 = scalar, S08, 257, "dbv", 1, 0
2021-01-21 22:54:20 -08:00
knock9 = scalar, S08, 258, "dbv", 1, 0
knock10 = scalar,S08, 259, "dbv", 1, 0
knock11 = scalar,S08, 260, "dbv", 1, 0
knock12 = scalar,S08, 261, "dbv", 1, 0
tcuDesiredGear = scalar, S08, 262, "gear", 1, 0
flexPercent = scalar, U08, 263, "%", 0.5, 0
rawIdlePositionSensor = scalar, U16, 264, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0.0
rawWastegatePosition = scalar, U16, 266, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0.0
wastegatePositionSensor = scalar, S16, 268, "%",{1/@@PACK_MULT_PERCENT@@}, 0
idlePositionSensor = scalar, S16, 270, "%",{1/@@PACK_MULT_PERCENT@@}, 0
rawLowFuelPressure = scalar, U16, 272, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0
rawHighFuelPressure = scalar, U16, 274, "V",{1/@@PACK_MULT_VOLTAGE@@}, 0
lowFuelPressure = scalar, S16, 276, "kpa", {1/@@PACK_MULT_PRESSURE@@}, 0
highFuelPressure = scalar, S16, 278, "bar", {1/@@PACK_MULT_HIGH_PRESSURE@@}, 0
2020-10-30 14:42:00 -07:00
targetLambda = scalar, U16, 280, "",{1/@@PACK_MULT_LAMBDA@@}, 0.0
AFRValue = scalar, U16, 282, "AFR",{1/@@PACK_MULT_AFR@@}, 0.0
VssAcceleration = scalar, S16, 284, "m/s2", {1/@@PACK_MULT_MS@@}, 0.0
lambdaValue2 = scalar, U16, 286, "",{1/@@PACK_MULT_LAMBDA@@}, 0.0
AFRValue2 = scalar, U16, 288, "AFR",{1/@@PACK_MULT_AFR@@}, 0.0
vvtPositionB1E=scalar,S16, 290, "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
2020-10-22 20:17:29 -07:00
rawTps1Secondary = scalar, U16, 300, "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
2018-01-06 07:53:15 -08:00
;
; see TunerStudioOutputChannels struct
;
2016-07-20 20:03:00 -07:00
2020-12-02 11:15:44 -08:00
; todo: generate this section programmatically
2017-06-19 19:29:03 -07:00
LM_SPEED_DENSITY = {3},
LM_REAL_MAF = {4}
2016-07-20 20:03:00 -07:00
time = { timeNow }
egoCorrectionForVeAnalyze = { 100 + fuelPidCorrection }
; These "synthetic" channels provide the Y-axis (load) value for gen purp PWM table's Y axes
2020-07-23 02:54:24 -07:00
gppwm1_load = {(gppwm1_loadAxis == 0) ? TPSValue : ((gppwm1_loadAxis == 1) ? MAPValue : ((gppwm1_loadAxis == 2) ? coolant : ((gppwm1_loadAxis == 3) ? intake : ((gppwm1_loadAxis == 4) ? fuelingLoad : ignitionLoad))))}
gppwm2_load = {(gppwm2_loadAxis == 0) ? TPSValue : ((gppwm2_loadAxis == 1) ? MAPValue : ((gppwm2_loadAxis == 2) ? coolant : ((gppwm2_loadAxis == 3) ? intake : ((gppwm2_loadAxis == 4) ? fuelingLoad : ignitionLoad))))}
gppwm3_load = {(gppwm3_loadAxis == 0) ? TPSValue : ((gppwm3_loadAxis == 1) ? MAPValue : ((gppwm3_loadAxis == 2) ? coolant : ((gppwm3_loadAxis == 3) ? intake : ((gppwm3_loadAxis == 4) ? fuelingLoad : ignitionLoad))))}
gppwm4_load = {(gppwm4_loadAxis == 0) ? TPSValue : ((gppwm4_loadAxis == 1) ? MAPValue : ((gppwm4_loadAxis == 2) ? coolant : ((gppwm4_loadAxis == 3) ? intake : ((gppwm4_loadAxis == 4) ? fuelingLoad : ignitionLoad))))}
[PcVariables]
2020-06-20 12:18:25 -07:00
tuneCrcPcVariable = continuousChannelValue, tuneCrc16
wueAfrTargetOffset = array, S16, [ 16], ":1", 0.1, 0.0, -3.0, 3.0, 1;
wueAnalRecommend = array, U08, [ 16], "%", 1.00, 0.0, 100, 255.00, 0
gearCountArray = array, S08, [@@TCU_GEAR_COUNT@@], "Gear", 1, 0, -1, { @@TCU_GEAR_COUNT@@ - 2 }, 0, noMsqSave
solenoidCountArray = array, U08, [@@TCU_SOLENOID_COUNT@@], "Solenoid", 1, 0, 1, @@TCU_SOLENOID_COUNT@@, 0, noMsqSave
; These are inverted (false = "Yes") so that they default to enabled
enableLogDebugChannels = bits, U08, [0:0], "Yes", "No"
enableLogErrorList = bits, U08, [0:0], "Yes", "No"
; wall of debug mode :)
2020-03-26 16:24:39 -07:00
; https://rusefi.com/wiki/index.php?title=Manual:Debug_fields
; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT1 PID VVT Sync Cranking Ignition Timing Fu Corr VSS SD Card Knock Wall Wetting ETB PID Executor InstantRpm FSIO_1_7 CJ125 CAN MAP TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU Lua VVT2 PID VVT3 PID VVT4 PID
; 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
2021-07-06 16:59:40 -07:00
; DBG_ALTERNATOR_PID DBG_TPS_ACCEL DBG_GPPWM DBG_IDLE_CONTROL
debugFieldF1List = bits, U08, [0:7], "Alt: Controller Output", "From TPS", "GPPWM 1", "Idle: Controller Output", "Idle output", "Channel 1 Rise Counter", "", "VVT1: Controller Output","VVT Event Position", "", "Ign IAT Corr", "", "", "Total SD", "last volts", "", "WW: Alpha", "ETB Controller Output", "", "", "df1", "df1", "InstantRpm", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "Lua Debug 1", "VVT2: Controller Output","VVT3: Controller Output","VVT4: Controller Output"
debugFieldF2List = bits, U08, [0:7], "Alt: I Term", "To TPS", "GPPWM 2", "Idle: I Term", "Idle df2", "Channel 2 Rise Counter", "", "VVT1: I Term", "VVT Ratio", "", "Ign CLT Corr", "", "", "Write Cnt","last filtered","", "WW: Beta", "ETB I Term", "", "", "df2", "df2", "InstantRPM Ratio","fsio 2", "24:df2", "CJ125: i term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "Lua Debug 2", "VVT2: I Term", "VVT3: I Term", "VVT4: I Term"
debugFieldF3List = bits, U08, [0:7], "Alt: Previous Error", "Current TPS<>TPS", "GPPWM 3", "Idle: prev error", "Idle df3", "ICU sum", "", "VVT1: prev error", "", "", "Ign FSIO Adj", "", "", "Sync Cnt", "", "", "WW: film mass", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "Boost Duty", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Nernst Voltage", "", "Lua Debug 3", "VVT2: prev error", "VVT3: prev error", "VVT4: prev error"
debugFieldF4List = bits, U08, [0:7], "Alt: I Gain", "Extra Fuel", "GPPWM 4", "Idle: I Gain", "Idle df4", "VVT rise", "", "VVT1: I Gain", "", "", "Ign PID Adj", "", "", "File Cnt", "", "", "WW: m_cmd", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "MAP Estimate", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "Boost Target", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "Lua Debug 4", "VVT2: I Gain", "VVT3: I Gain", "VVT4: I Gain"
debugFieldF5List = bits, U08, [0:7], "Alt: D Gain", "df5", "df5", "Idle: D Gain", "Idle df5", "VVT fall", "df5", "VVT1: D Gain", "", "", "", "", "", "", "", "", "WW: film mass next","ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "TPS1 Pri/Sec Ratio", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "Lua Debug 5", "VVT2: D Gain", "VVT3: D Gain", "VVT4: D Gain"
debugFieldF6List = bits, U08, [0:7], "Alt: D Term", "", "", "Idle: D Term", "Idle df6", "Current Gap", "", "VVT1: D Term", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "Lua Debug 6", "VVT2: D Term", "VVT3: D Term", "VVT4: D Term"
debugFieldF7List = bits, U08, [0:7], "Alt: Max-Value", "", "", "Idle: Max-Value", "Idle df7", "", "", "VVT1: Max-Value", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "Lua Debug 7", "", "", ""
debugFieldI1List = bits, U08, [0:7], "Alt: P Gain", "", "", "Idle: P Gain", "Idle di1", "Channel 1 Fall Counter", "", "VVT1: P Gain", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "hip corr", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "Spark Event Gap","", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "Lua memory used","VVT2: P Gain", "VVT3: P Gain", "VVT4: P Gain"
debugFieldI2List = bits, U08, [0:7], "Alt: Offset", "", "", "Idle: Offset", "Idle di2", "Channel 2 Fall Counter", "", "VVT1: Offset", "", "", "", "", "", "", "hip incor", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "Inj Event Gap", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "", "VVT2: Offset", "VVT3: Offset", "VVT4: Offset"
debugFieldI3List = bits, U08, [0:7], "Alt: Reset Cnt", "", "", "Idle: Reset Cnt", "Idle di3", "Cycle Index", "", "VVT1: 10xTarget", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "", "VVT2: 10xTarger", "VVT3: 10xTarger", "VVT4: 10xTarger"
debugFieldI4List = bits, U08, [0:7], "Alt: Period", "", "", "Idle: State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "", "", "", ""
debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "", "", "", ""
2020-04-12 14:48:38 -07:00
[ConstantsExtensions]
2020-03-28 17:14:17 -07:00
; defaultValue is used to provide TunerStudio with a value to use in the case of
; the constant not yet being initialized. This is primarily important if the
; constant is used as a variable in the ini.
; defaultValue = constantName, value;
defaultValue = wueAfrTargetOffset, -1.5 -1.4 -1.15 -0.95 -0.775 -0.65 -0.5625 -0.5 -0.4375 -0.375 -0.3125 -0.25 -0.1875 -0.125 -0.0625 0
; TPS 1 Primary
maintainConstantValue = tpsMax, { (calibrationMode == 1 ) ? calibrationValue : tpsMax }
maintainConstantValue = tpsMin, { (calibrationMode == 2 ) ? calibrationValue : tpsMin }
2020-03-28 17:14:17 -07:00
; TPS 1 Secondary
maintainConstantValue = tps1SecondaryMax, { (calibrationMode == 6 ) ? calibrationValue : tps1SecondaryMax }
maintainConstantValue = tps1SecondaryMin, { (calibrationMode == 7 ) ? calibrationValue : tps1SecondaryMin }
; TPS 2 Primary
maintainConstantValue = tps2Max, { (calibrationMode == 8 ) ? calibrationValue : tps2Max }
maintainConstantValue = tps2Min, { (calibrationMode == 9 ) ? calibrationValue : tps2Min }
; TPS 2 Secondary
maintainConstantValue = tps2SecondaryMax, { (calibrationMode == 10 ) ? calibrationValue : tps2SecondaryMax }
maintainConstantValue = tps2SecondaryMin, { (calibrationMode == 11 ) ? calibrationValue : tps2SecondaryMin }
; ETB Auto Gain Calibration
maintainConstantValue = etb_pFactor, { (calibrationMode == 3 ) ? calibrationValue : etb_pFactor }
maintainConstantValue = etb_iFactor, { (calibrationMode == 4 ) ? calibrationValue : etb_iFactor }
maintainConstantValue = etb_dFactor, { (calibrationMode == 5 ) ? calibrationValue : etb_dFactor }
2020-03-28 17:14:17 -07:00
requiresPowerCycle = warningLedPin
requiresPowerCycle = runningLedPin
requiresPowerCycle = binarySerialTxPin
requiresPowerCycle = binarySerialRxPin
2020-03-29 14:08:29 -07:00
requiresPowerCycle = etb_use_two_wires
requiresPowerCycle = etbFreq
requiresPowerCycle = etbFunctions1
requiresPowerCycle = etbFunctions2
2020-09-07 08:31:29 -07:00
2020-03-29 07:29:33 -07:00
requiresPowerCycle = idle_solenoidFrequency
requiresPowerCycle = boostPwmFrequency
requiresPowerCycle = alternatorPwmFrequency
requiresPowerCycle = auxPidFrequency1
requiresPowerCycle = auxPidFrequency2
2021-02-10 18:46:52 -08:00
requiresPowerCycle = auxPidPins1
requiresPowerCycle = auxPidPins2
requiresPowerCycle = auxPidPins3
requiresPowerCycle = auxPidPins4
2020-09-07 08:31:29 -07:00
2020-03-29 05:43:13 -07:00
requiresPowerCycle = fsioOutputPins1
requiresPowerCycle = fsioOutputPins2
requiresPowerCycle = fsioOutputPins3
requiresPowerCycle = fsioOutputPins4
requiresPowerCycle = fsioOutputPins5
requiresPowerCycle = fsioOutputPins6
2020-09-07 08:31:29 -07:00
2020-03-29 05:43:13 -07:00
requiresPowerCycle = fsioFrequency1
requiresPowerCycle = fsioFrequency2
requiresPowerCycle = fsioFrequency3
requiresPowerCycle = fsioFrequency4
requiresPowerCycle = fsioFrequency5
requiresPowerCycle = fsioFrequency6
2020-09-07 08:31:29 -07:00
2020-03-29 05:43:13 -07:00
requiresPowerCycle = fsioAdc1
requiresPowerCycle = fsioAdc2
requiresPowerCycle = fsioAdc3
requiresPowerCycle = fsioAdc4
2020-09-07 08:31:29 -07:00
2020-04-19 18:42:00 -07:00
readOnly = warning_message
2020-03-28 17:14:17 -07:00
defaultValue = gearCountArray, -1 0 1 2 3 4 5 6 7 8
readOnly = gearCountArray
defaultValue = solenoidCountArray, 1 2 3 4 5 6 7 8
readOnly = solenoidCountArray
2020-03-28 17:14:17 -07:00
2016-07-20 20:03:00 -07:00
[CurveEditor]
; xAxis = leftValue, rightValue, step
; yAxis = bottomValue, topValue, step
curve = knockThresholdCurve, "Engine knock threshold RPM based"
columnLabel = "RPM", "Threshold"
xAxis = 0, 8000, 9
2016-07-20 20:03:00 -07:00
yAxis = 0, 8, 10
2017-06-19 19:29:03 -07:00
xBins = knockNoiseRpmBins, RPMValue
2016-07-20 20:03:00 -07:00
yBins = knockNoise
gauge = RPMGauge
curve = swKnockThresholdCurve, "Engine knock threshold RPM based"
columnLabel = "RPM", "Threshold dB"
xAxis = 0, 8000, 9
yAxis = -30, 0, 10
xBins = ignitionRpmBins, RPMValue
yBins = knockBaseNoise
2018-02-12 10:13:01 -08:00
gauge = RPMGauge
2016-07-20 20:03:00 -07:00
2017-10-29 17:29:02 -07:00
curve = narrowToWideOxygenCurve, "Narrow to Wideband approximation"
2017-11-07 05:41:19 -08:00
columnLabel = "Voltage", "AFR"
2017-10-29 17:29:02 -07:00
xAxis = 0, 6, 10
yAxis = 0, 28, 10
xBins = narrowToWideOxygenBins
yBins = narrowToWideOxygen
#if LAMBDA
gauge = lambda1Gauge
#else
gauge = afr1Gauge
#endif
2017-10-29 17:29:02 -07:00
2017-11-25 22:17:37 -08:00
curve = fsioCurve1, "FSIO Curve #1"
columnLabel = "X", "Y"
xAxis = 0, 128, 10
2017-11-27 18:49:58 -08:00
yAxis = -155, 150, 10
2017-11-25 22:17:37 -08:00
xBins = fsioCurve1Bins
yBins = fsioCurve1
curve = fsioCurve2, "FSIO Curve #2"
columnLabel = "X", "Y"
xAxis = 0, 128, 10
2017-11-27 18:49:58 -08:00
yAxis = -150, 150, 10
2017-11-25 22:17:37 -08:00
xBins = fsioCurve2Bins
yBins = fsioCurve2
curve = fsioCurve3, "FSIO Curve #3"
columnLabel = "X", "Y"
xAxis = 0, 128, 10
yAxis = -5, 5, 10
xBins = fsioCurve3Bins
yBins = fsioCurve3
curve = fsioCurve4, "FSIO Curve #4"
columnLabel = "X", "Y"
xAxis = 0, 128, 10
yAxis = -5, 5, 10
xBins = fsioCurve4Bins
yBins = fsioCurve4
2016-07-20 20:03:00 -07:00
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 base"
2016-07-20 20:03:00 -07:00
columnLabel = "RPM", "Dwell"
xAxis = 0, 8000, 9
yAxis = 0, 8, 9
2017-06-19 19:29:03 -07:00
xBins = sparkDwellRpmBins, RPMValue
2017-02-18 12:01:47 -08:00
yBins = sparkDwellValues
2018-02-12 10:13:01 -08:00
gauge = RPMGauge
curve = dwellVoltageCorrection, "Dwell voltage correction"
columnLabel = "Battery Volts", "Multiplier"
xAxis = 6, 16, 11
yAxis = 0, 3, 7
xBins = dwellVoltageCorrVoltBins, VBatt
yBins = dwellVoltageCorrValues
gauge = VBattGauge
2016-07-20 20:03:00 -07:00
curve = map_samplingAngleCurve, "MAP Sampling Start Angle"
columnLabel = "RPM", "Angle"
xAxis = 0, 8000, 9
2016-07-20 20:03:00 -07:00
yAxis = 0, 180, 10
2017-06-19 19:29:03 -07:00
xBins = map_samplingAngleBins, RPMValue
2016-07-20 20:03:00 -07:00
yBins = map_samplingAngle
gauge = MAPGauge
2016-07-20 20:03:00 -07:00
curve = map_samplingWindowCurve, "MAP Sampling Duration"
columnLabel = "RPM", "Window"
xAxis = 0, 8000, 9
2016-07-20 20:03:00 -07:00
yAxis = 0, 180, 10
2017-06-19 19:29:03 -07:00
xBins = map_samplingWindowBins, RPMValue
2016-07-20 20:03:00 -07:00
yBins = map_samplingWindow
gauge = MAPGauge
2016-07-20 20:03:00 -07:00
curve = injectorsDeadTime, "Injector dead time"
columnLabel = "Battery", "Dead Time"
xAxis = 6, 16, 11
yAxis = 0, 8, 9
2016-07-20 20:03:00 -07:00
xBins = injector_battLagCorrBins, VBatt
yBins = injector_battLagCorr
gauge = VBattGauge
curve = vrThresholdCurve1, "VR 1 Threshold"
columnLabel = "RPM", "Voltage"
xAxis = 0, 8000, 9
yAxis = 0, 2.5, 6
xBins = vrThreshold1_rpmBins, RPMValue
yBins = vrThreshold1_values
curve = vrThresholdCurve2, "VR 2 Threshold"
columnLabel = "RPM", "Voltage"
xAxis = 0, 8000, 9
yAxis = 0, 2.5, 6
xBins = vrThreshold2_rpmBins, RPMValue
yBins = vrThreshold2_values
curve = mafDecodingCurve, "MAF sensor"
2016-07-20 20:03:00 -07:00
columnLabel = "Voltage", "kg/hour"
xAxis = -1, 6, 10
yAxis = -30, 1300, 10
2017-06-19 01:19:12 -07:00
xBins = mafDecodingBins, MAFValue
2016-07-20 20:03:00 -07:00
yBins = mafDecoding
2017-06-19 01:19:12 -07:00
gauge = MAFGauge
2016-07-20 20:03:00 -07:00
curve = iatFuelCorrCurve, "Intake air temperature fuel Multiplier"
columnLabel = "Air Temp", "Multiplier"
xAxis = -40, 120, 9
yAxis = 0, 2, 11
2016-07-20 20:03:00 -07:00
xBins = iatFuelCorrBins, intake
yBins = iatFuelCorr
gauge = IATGauge
2017-01-05 18:12:06 -08:00
curve = cltTimingCorrCurve, "Warmup timing correction"
columnLabel = "Coolant", "Extra"
xAxis = -40, 120, 9
yAxis = 0, 20, 9
2017-01-05 18:12:06 -08:00
xBins = cltTimingBins, coolant
yBins = cltTimingExtra
gauge = CLTGauge
2016-07-20 20:03:00 -07:00
curve = cltFuelCorrCurve, "Warmup fuel manual Multiplier"
columnLabel = "Coolant", "Multiplier"
xAxis = -40, 120, 9
yAxis = 0, 3, 10
2016-07-20 20:03:00 -07:00
xBins = cltFuelCorrBins, coolant
yBins = cltFuelCorr
gauge = CLTGauge
curve = crankingCltCurve, "Cranking Coolant Temperature Multiplier"
2016-07-20 20:03:00 -07:00
columnLabel = "Coolant", "Multiplier"
xAxis = -40, 120, 9
yAxis = 0, 3, 10
2016-07-20 20:03:00 -07:00
xBins = crankingFuelBins, coolant
yBins = crankingFuelCoef
gauge = CLTGauge
2018-12-09 10:50:13 -08:00
curve = etbTpsBiasCurve, "Electronic TB Bias Curve"
columnLabel = "TPS", "duty bias"
2020-04-22 17:32:19 -07:00
xAxis = 0, 50, 11
yAxis = -40, 40, 9
2018-12-09 10:50:13 -08:00
xBins = etbBiasBins, TPSValue
yBins = etbBiasValues
gauge = TPSGauge
2016-07-20 20:03:00 -07:00
curve = crankingTpsCurve, "Cranking TPS Multiplier"
columnLabel = "TPS", "Multiplier"
xAxis = 0, 100, 11
yAxis = 0, 3, 10
2017-06-19 01:19:12 -07:00
xBins = crankingTpsBins, TPSValue
2016-07-20 20:03:00 -07:00
yBins = crankingTpsCoef
2017-06-19 01:19:12 -07:00
gauge = TPSGauge
2016-07-20 20:03:00 -07:00
curve = crankingDurationCurve, "Cranking Duration Multiplier"
columnLabel = "Engine Cycle", "Multiplier"
xAxis = 0, 50, 11
yAxis = 0, 5, 6
2016-07-20 20:03:00 -07:00
xBins = crankingCycleBins
yBins = crankingCycleCoef
curve = cltIdleCurve, "Warmup Idle multiplier"
2016-07-20 20:03:00 -07:00
columnLabel = "Coolant", "Multiplier"
xAxis = -40, 120, 10
yAxis = 0, 3, 10
2016-07-20 20:03:00 -07:00
xBins = cltIdleCorrBins, coolant
yBins = cltIdleCorr
gauge = CLTGauge
curve = iacCoastingCurve, "Coasting IAC Position for Auto-Idle"
columnLabel = "Coolant", "Multiplier"
xAxis = -40, 120, 9
yAxis = 0, 100, 10
xBins = iacCoastingBins, coolant
yBins = iacCoasting
gauge = idleAirValvePositionGauge
2019-05-25 10:36:29 -07:00
curve = cltCrankingCurve, "Cranking Idle Air multiplier"
columnLabel = "Coolant", "Multiplier"
xAxis = -40, 120, 9
yAxis = 0, 3, 10
xBins = cltCrankingCorrBins, coolant
yBins = cltCrankingCorr
gauge = CLTGauge
curve = cltIdleRPMCurve, "Idle Target RPM"
columnLabel = "Coolant", "RPM"
xAxis = -40, 120, 9
yAxis = 0, 2400, 13
xBins = cltIdleRpmBins, coolant
yBins = cltIdleRpm, RPMValue
gauge = CLTGauge
curve = idleAdvanceCurve, "Idle Advance Angle"
columnLabel = "RPM", "degrees"
xAxis = 0, 2400, 13
yAxis = -100, 100, 11
xBins = idleAdvanceBins, RPMValue
yBins = idleAdvance
gauge = RPMGauge
curve = idleVeCurve, "Idle VE"
columnLabel = "RPM", "%"
xAxis = 0, 2400, 13
yAxis = 0, 250, 11
xBins = idleVeBins, RPMValue
yBins = idleVe
#if LAMBDA
gauge = lambda1Gauge
#else
gauge = afr1Gauge
#endif
curve = crankingAdvanceCurve, "Cranking Advance Angle"
columnLabel = "RPM", "degrees"
xAxis = 0, 1200, 13
yAxis = -30, 30, 11
xBins = crankingAdvanceBins, RPMValue
yBins = crankingAdvance
gauge = RPMGauge
curve = fuelLevelCurve, "Fuel Level"
columnLabel = "Voltage", "%"
xAxis = 0, 5, 6
yAxis = 0, 100, 11
xBins = fuelLevelBins
yBins = fuelLevelValues
gauge = fuelTankLevelGauge
curve = wueAfrTargetOffsetCurve, "AFR Target Temperature Adjustment"
columnLabel = "Coolant", "AFR Offset"
xAxis = -40, 200, 9
yAxis = -3, 1, 5
xBins = cltFuelCorrBins, coolant
yBins = wueAfrTargetOffset
gauge = cltGauge
curve = wueAnalyzer_warmup_curve, "Warmup Enrichment"
columnLabel = "Coolant", "Current WUE", "Coolant", "Corrected"
xAxis = -40, 200, 9
yAxis = 90, 500, 6
xBins = cltFuelCorrBins, coolant
yBins = cltFuelCorr
yBins = wueAnalRecommend
;gauge = cltGauge
lineLabel = "Warmup Correction"
lineLabel = "Recommended WUE"
2016-07-20 20:03:00 -07:00
[TableEditor]
; table_id, map3d_id, "title", page
2017-06-19 19:29:03 -07:00
2018-01-02 09:29:04 -08:00
; move table into a panel? or find a way to add a link to https://rusefi.com//wiki/index.php?title=Manual:Software:TPSTPS
table = tpsTpsAccelTbl, tpsTpsAccelMap, "TPS/TPS Acceleration Extra Fuel(ms)", 1
topicHelp = "tpstpsHelp"
2017-06-19 01:19:12 -07:00
xBins = tpsTpsAccelFromRpmBins, TPSValue
yBins = tpsTpsAccelToRpmBins, TPSValue
2016-07-20 20:03:00 -07:00
zBins = tpsTpsAccelTable
table = boostTableTbl, boostMapOpen, "Boost control duty cycle (open loop)", 1
xBins = boostRpmBins, RPMValue
yBins = boostTpsBins, TPSValue
zBins = boostTableOpenLoop
table = boostTable2Tbl, boostMapClosed, "Boost control target", 1
xBins = boostRpmBins, RPMValue
yBins = boostTpsBins, TPSValue
zBins = boostTableClosedLoop
2021-07-02 16:13:31 -07:00
table = vvtTable1Tbl, vvtTable1Map, "vvt Table Intake", 1
2021-02-10 09:23:06 -08:00
xBins = vvtTable1RpmBins, RPMValue
yBins = vvtTable1LoadBins, fuelingLoad
zBins = vvtTable1
2021-07-02 16:13:31 -07:00
table = vvtTable2Tbl, vvtTable2Map, "vvt Table Exhaust", 1
2021-02-10 09:23:06 -08:00
xBins = vvtTable2RpmBins, RPMValue
yBins = vvtTable2LoadBins, fuelingLoad
zBins = vvtTable2
2020-09-07 08:31:29 -07:00
2017-11-25 22:17:37 -08:00
2016-07-20 20:03:00 -07:00
table = fsioTable1Tbl, fsioTable1Map, "FSIO Table #1", 1
2017-06-19 19:29:03 -07:00
xBins = fsioTable1RpmBins, RPMValue
yBins = fsioTable1LoadBins, fuelingLoad
2016-07-20 20:03:00 -07:00
zBins = fsioTable1
table = fsioTable2Tbl, fsioTable2Map, "FSIO Table #2", 1
2017-06-19 19:29:03 -07:00
xBins = fsioTable2RpmBins, RPMValue
yBins = fsioTable2LoadBins, fuelingLoad
2016-07-20 20:03:00 -07:00
zBins = fsioTable2
table = fsioTable3Tbl, fsioTable3Map, "FSIO Table #3", 1
2017-06-19 19:29:03 -07:00
xBins = fsioTable3RpmBins, RPMValue
yBins = fsioTable3LoadBins, fuelingLoad
2016-07-20 20:03:00 -07:00
zBins = fsioTable3
table = fsioTable4Tbl, fsioTable4Map, "FSIO Table #4", 1
2017-06-19 19:29:03 -07:00
xBins = fsioTable4RpmBins, RPMValue
yBins = fsioTable4LoadBins, fuelingLoad
2016-07-20 20:03:00 -07:00
zBins = fsioTable4
table = baroCorrTbl, baroCorrMap, "Baro Correction", 1
; constant, variable
2017-06-19 19:29:03 -07:00
xBins = baroCorrRpmBins, RPMValue
2016-07-20 20:03:00 -07:00
yBins = baroCorrPressureBins, baroPressure
zBins = baroCorrTable
; gridHeight = 2.0
2016-07-20 20:03:00 -07:00
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
upDownLabel = "(RICHER)", "(LEANER)"
table = ignitionTableTbl, ignitionTableMap, "Ignition Table", 1
; constant, variable
2017-06-19 19:29:03 -07:00
xBins = ignitionRpmBins, RPMValue
2020-07-20 23:13:50 -07:00
yBins = ignitionLoadBins, ignitionLoad
2016-07-20 20:03:00 -07:00
zBins = ignitionTable
; gridHeight = 2.0
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
upDownLabel = "(RICHER)", "(LEANER)"
2016-07-20 20:03:00 -07:00
table = ignitionIatCorrTableTbl, ignitionIatCorrTableMap, "Ignition Intake Air Temp correction", 1
; constant, variable
2017-06-19 19:29:03 -07:00
xBins = ignitionIatCorrRpmBins, RPMValue
2016-07-20 20:03:00 -07:00
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
2017-06-19 19:29:03 -07:00
xBins = veRpmBins, RPMValue
yBins = veLoadBins, veTableYAxis
2016-07-20 20:03:00 -07:00
zBins = veTable
; gridHeight = 2.0
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
upDownLabel = "(RICHER)", "(LEANER)"
table = mapEstimateTableTbl, mapEstimateTableMap, "MAP Estimate", 1
xBins = mapEstimateRpmBins, RPMValue
yBins = mapEstimateTpsBins, TPSValue
zBins = mapEstimateTable
2016-07-20 20:03:00 -07:00
table = injPhaseTableTbl, injPhaseTableMap, "Injection Phase", 1
topicHelp = "fuelHelp"
2016-07-20 20:03:00 -07:00
; constant, variable
2017-06-19 19:29:03 -07:00
xBins = injPhaseRpmBins, RPMValue
yBins = injPhaseLoadBins, fuelingLoad
2016-07-20 20:03:00 -07:00
zBins = injectionPhase
; gridHeight = 2.0
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
upDownLabel = "(Later)", "(Sooner)"
2019-06-10 20:38:44 -07:00
table = pedalToTpsTbl, pedalToTpsMap, "ETB Pedal to TPS", 1
; constant, variable
xBins = pedalToTpsRpmBins, RPMValue
2019-09-20 16:38:19 -07:00
yBins = pedalToTpsPedalBins, throttlePedalPosition
2019-06-10 20:38:44 -07:00
zBins = pedalToTpsTable
; gridHeight = 2.0
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
upDownLabel = "(Later)", "(Sooner)"
#if LAMBDA
table = lambdaTableTbl, lambdaTableMap, "Target Lambda Table", 1
#else
table = afrTableTbl, afrTableMap, "Target AFR Table", 1
#endif
2016-07-20 20:03:00 -07:00
; constant, variable
xBins = lambdaRpmBins, RPMValue
yBins = lambdaLoadBins, afrTableYAxis
zBins = lambdaTable
2016-07-20 20:03:00 -07:00
; gridHeight = 2.0
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
upDownLabel = "(RICHER)", "(LEANER)"
table = iacPidMultTbl, iacPidMultMap, "IAC PID Multiplier Table", 1
; constant, variable
xBins = iacPidMultRpmBins, RPMValue
yBins = iacPidMultLoadBins, fuelingLoad
zBins = iacPidMultTable
; gridHeight = 2.0
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
upDownLabel = "(Later)", "(Sooner)"
table = gppwm1Tbl, gppwm1Map, "GP#1", 1
xyLabels = "RPM", ""
xBins = gppwm1_rpmBins, RPMValue
yBins = gppwm1_loadBins, gppwm1_load
zBins = gppwm1_table
table = gppwm2Tbl, gppwm2Map, "GP#2", 1
xyLabels = "RPM", ""
xBins = gppwm2_rpmBins, RPMValue
yBins = gppwm2_loadBins, gppwm2_load
zBins = gppwm2_table
table = gppwm3Tbl, gppwm3Map, "GP#3", 1
xyLabels = "RPM", ""
xBins = gppwm3_rpmBins, RPMValue
yBins = gppwm3_loadBins, gppwm3_load
zBins = gppwm3_table
table = gppwm4Tbl, gppwm4Map, "GP#4", 1
xyLabels = "RPM", ""
xBins = gppwm4_rpmBins, RPMValue
yBins = gppwm4_loadBins, gppwm4_load
zBins = gppwm4_table
table = tcuSolenoidTableTbl, tcuSolenoidTableMap, "Solenoids Active By Gear", 1
2020-11-04 11:49:23 -08:00
xBins = solenoidCountArray, tcuCurrentGear
yBins = gearCountArray, tcuCurrentGear
zBins = tcuSolenoidTable
xyLabels = "Solenoid", "Gear"
2016-07-20 20:03:00 -07:00
[GaugeConfigurations]
gaugeCategory = Sensors - Extra 2
2016-07-20 20:03:00 -07:00
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
rpmAccelerationGa = rpmAcceleration, "rpm delta", "RPM/s", -2000, 2000, -2000, 2000, -2000, 2000, 0, 0
knockLevelGauge = knockLevel,"Knock level", "V", 0, 7, 10, 10, 100, 100, 1, 2
knockCountGauge = knockCount, "Knock count", "count", 0, 10000, 0, 0, 10000, 10000, 0, 0
fuelTankLevelGauge = fuelTankLevel,"Fuel level", "%", 0, 100, 10, 20, 100, 100, 1, 1
2017-06-19 14:08:17 -07:00
speedToRpmRatioGauge = speedToRpmRatio, "speed2rpm", "", 0, 100, 0, 0, 100, 100, 4, 4
2020-12-13 20:03:22 -08:00
wastegatePosGauge = wastegatePositionSensor, @@GAUGE_NAME_WG_POSITION@@, "%", 0, 100, 0, 0, 100, 100, 1, 1
idlePosSensGauge = idlePositionSensor, @@GAUGE_NAME_IDLE_POSITION@@, "%", 0, 100, 0, 0, 100, 100, 1, 1
2019-03-12 11:35:49 -07:00
gaugeCategory = ECU Status
warningCounterGauge = warningCounter, @@GAUGE_NAME_WARNING_COUNT@@, "", 0, 100, 0, 0, 100, 100, 0, 0
lastErrorCodeGauge = lastErrorCode, @@GAUGE_NAME_LAST_ERROR@@, "", 0, 18000, 0, 0, 18000, 18000, 0, 0
triggerErrorsCounterGauge = totalTriggerErrorCounter, "Trigger error count", "count", 0, 15000, 0, 0, 6000, 6000, 0, 0
2019-03-12 11:35:49 -07:00
recentErrorCode0Gauge = recentErrorCode0, "Error#1", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
recentErrorCode1Gauge = recentErrorCode1, "Error#2", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
recentErrorCode2Gauge = recentErrorCode2, "Error#3", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
recentErrorCode3Gauge = recentErrorCode3, "Error#4", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
recentErrorCode4Gauge = recentErrorCode4, "Error#5", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
recentErrorCode5Gauge = recentErrorCode5, "Error#6", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
recentErrorCode6Gauge = recentErrorCode6, "Error#7", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
recentErrorCode7Gauge = recentErrorCode7, "Error#8", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
firmwareVersionGauge = firmwareVersion , @@GAUGE_NAME_FW_VERSION@@, "%", 0, 100, 0, 0, 100, 100, 0, 0
timeSecondsGauge = seconds, @@GAUGE_NAME_UPTIME@@, "sec", 0, 100, 0, 0, 100, 100, 0, 0
tuneCrc16Gauge = tuneCrc16, @@GAUGE_NAME_TUNE_CRC16@@, "", 0, 64000, 0, 0, 64000, 64000, 0, 0
2020-03-02 17:54:47 -08:00
2017-06-19 14:08:17 -07:00
gaugeCategory = Debug
2020-03-02 17:54:47 -08:00
debugF1Gauge = debugFloatField1, {bitStringValue( debugFieldF1List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 4, 4
debugF2Gauge = debugFloatField2, {bitStringValue( debugFieldF2List, debugMode )}, "", -100, 100, 0, 0, 100, 100, 4, 4
debugF3Gauge = debugFloatField3, {bitStringValue( debugFieldF3List, debugMode )}, "", -100, 100, 0, 0, 100, 100, 4, 4
debugF4Gauge = debugFloatField4, {bitStringValue( debugFieldF4List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 4, 4
debugF5Gauge = debugFloatField5, {bitStringValue( debugFieldF5List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 4, 4
debugF6Gauge = debugFloatField6, {bitStringValue( debugFieldF6List, debugMode )}, "", -100, 100, 0, 0, 100, 100, 4, 4
debugF7Gauge = debugFloatField7, {bitStringValue( debugFieldF7List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 4, 4
debugI1Gauge = debugIntField1, {bitStringValue( debugFieldI1List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 0, 0
debugI2Gauge = debugIntField2, {bitStringValue( debugFieldI2List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 0, 0
debugI3Gauge = debugIntField3, {bitStringValue( debugFieldI3List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 0, 0
debugI4Gauge = debugIntField4, {bitStringValue( debugFieldI4List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 0, 0
debugI5Gauge = debugIntField5, {bitStringValue( debugFieldI5List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 0, 0
gaugeCategory = Sensors - Basic
RPMGauge = RPMValue, "RPM - engine speed", "RPM", 0, {rpmHardLimit + 2000}, 200, {cranking_rpm}, {rpmHardLimit - 500}, {rpmHardLimit}, 0, 0
CLTGauge = coolant, "Coolant temp", "C", -40, 140, -15, 1, 95, 110, 1, 1
IATGauge = intake, "Intake air temp", "C", -40, 140, -15, 1, 95, 110, 1, 1
afr1Gauge = AFRValue, @@GAUGE_NAME_AFR@@, "", 10, 19.4, 12, 13, 15, 16, 2, 2
afr2Gauge = AFRValue2, @@GAUGE_NAME_AFR2@@, "", 10, 19.4, 12, 13, 15, 16, 2, 2
lambda1Gauge = lambdaValue, @@GAUGE_NAME_LAMBDA@@, "", 0.65, 1.2, 0.7, 0.75, 1.1, 1.15, 3, 2
lambda2Gauge = lambdaValue2, @@GAUGE_NAME_LAMBDA2@@, "", 0.65, 1.2, 0.7, 0.75, 1.1, 1.15, 3, 2
MAFGauge = MAFValue, "Mass air flow", "V", 0, 5, 0, 1, 3, 4, 1, 1
VBattGauge = VBatt, "Battery", "V", 8, 21, 9, 10, 17, 19, 1, 1
2017-06-19 14:08:17 -07:00
MAPGauge = MAPValue, "MAP", "kPa", 0, 300, 10, 10, 200, 200, 0, 0
massAirFlowValueGa = massAirFlowValue,"Mass air flow", "kg/hr", 0, 50, -999, -999, 999, 999, 1, 1
2019-02-26 19:32:17 -08:00
gaugeCategory = Sensors - Extra 1
VSSGauge = vehicleSpeedKph, "Vehicle speed", "kmh", 0, 200, 0, 1, 3, 4, 1, 1
2017-08-28 19:55:29 -07:00
accelerationXGauge = accelerationX, @@GAUGE_NAME_ACCEL_X@@, "acc", -11, 11, 1.0, 1.2, 100, 100, 3, 1
accelerationYGauge = accelerationY, @@GAUGE_NAME_ACCEL_Y@@, "acc", -11, 11, 1.0, 1.2, 100, 100, 3, 1
2020-05-15 18:10:15 -07:00
atmPresCGauge = baroPressure, @@GAUGE_NAME_BARO_PRESSURE@@, "kPa", 0, 1024, 0, 0, 0, 0, 0, 0
vvtPositionB1IGauge = vvtPositionB1I, @@GAUGE_NAME_VVT_B1I@@, "deg", -60, 60, -60, -60, 60, 60, 1, 1
vvtPositionB1EGauge = vvtPositionB1E, @@GAUGE_NAME_VVT_B1E@@, "deg", -60, 60, -60, -60, 60, 60, 1, 1
vvtPositionB2IGauge = vvtPositionB2I, @@GAUGE_NAME_VVT_B2I@@, "deg", -60, 60, -60, -60, 60, 60, 1, 1
vvtPositionB2EGauge = vvtPositionB2E, @@GAUGE_NAME_VVT_B2E@@, "deg", -60, 60, -60, -60, 60, 60, 1, 1
internalMcuTemperatureGauge = internalMcuTemperature, @@GAUGE_NAME_ECU_TEMPERATURE@@, "C", 0, 100, 0, 0, 75, 100, 0, 0
2020-10-27 21:20:35 -07:00
OilPressGauge = oilPressure, @@GAUGE_NAME_OIL_PRESSURE@@, @@GAUGE_NAME_OIL_PRESSURE_UNITS@@, 0, 750, 35, 75, 550, 700, 0, 0
idleAirValvePositionGauge = idleAirValvePosition, "Idle position", "%", 0, 100, 0, 0, 100, 100, 1, 1
AuxT1Gauge = auxt1, @@GAUGE_NAME_AUX_TEMP1@@, "C", -40, 140, -15, 1, 95, 110, 1, 1
AuxT2Gauge = auxt2, @@GAUGE_NAME_AUX_TEMP2@@, "C", -40, 140, -15, 1, 95, 110, 1, 1
2020-10-27 21:20:35 -07:00
lowFuelPressureGauge = lowFuelPressure, @@GAUGE_NAME_FUEL_PRESSURE_LOW@@, @@GAUGE_NAME_FUEL_PRESSURE_LOW_UNITS@@, 0, 700, 0, 0, 700, 700, 1, 0
highFuelPressureGauge = highFuelPressure, @@GAUGE_NAME_FUEL_PRESSURE_HIGH@@, @@GAUGE_NAME_FUEL_PRESSURE_HIGH_UNITS@@, 0, 200, 0, 0, 200, 200, 1, 0
flexPercentGauge = flexPercent, @@GAUGE_NAME_FLEX@@, "%", 0, 100, 0, 0, 100, 100, 0, 0
2017-06-19 14:08:17 -07:00
gaugeCategory = Ignition
ignadvGauge = ignitionAdvance, "Ignition timing", "degrees", -100, 100, -999, -999, 999, 999, 1, 1
2017-06-19 14:08:17 -07:00
dwellGauge = sparkDwellValue, "Dwell", "mSec", 0, 10, 0.5, 1.0, 6.0, 8.0, 1, 1
coilDutyCycleGauge = coilDutyCycle, @@GAUGE_NAME_DWELL_DUTY@@, "%", 0, 110, 0, 0, 90, 100, 1, 1
ignitionLoadGauge = ignitionLoad, @@GAUGE_NAME_IGNITION_LOAD@@, "%", 0, 300, 0, 0, 300, 300, 1, 1
2017-06-19 14:08:17 -07:00
gaugeCategory = Acceleration Enrichment
engineLoadDeltaGauge = engineLoadDelta,"AE: load change","value", 0, 120, 10, 10, 100, 100, 1, 1
engineLoadAccelExtraGauge = engineLoadAccelExtra,"AE: load extra","value", 0, 120, 10, 10, 100, 100, 1, 1
deltaTpsGauge = deltaTps, "AE: TPS change", "", 0, 120, 10, 10, 100, 100, 1, 1
tpsAccelFuelGauge = tpsAccelFuel,"AE: TPS enrich", "ms", 0, 120, 10, 10, 100, 100, 1, 1
wallFuelAmountGauge = wallFuelAmount, "AE: wall amount", "ms", 0, 100, 0, 0, 100, 100, 0, 0
wallFuelCorrectionGauge = wallFuelCorrection, "AE: wall correction extra", "ms", 0, 100, 0, 0, 100, 100, 0, 0
2017-06-19 14:08:17 -07:00
gaugeCategory = Fueling
2019-05-11 07:57:58 -07:00
;Name Var Title Units Lo Hi LoD LoW HiW HiD vd ld
tChargeGauge = tCharge, @@GAUGE_NAME_FUEL_CHARGE_TEMP@@, "C", -40, 140, -15, 1, 95, 110, 1, 1
2019-09-20 16:38:19 -07:00
baroCorrectionGauge = baroCorrection,@@GAUGE_NAME_FUEL_BARO_CORR@@, "ratio", 0.5, 1.5, 0.6, 0.7, 1.3, 1.4, 1, 1
crankingFuelGauge = crankingFuelMs, @@GAUGE_NAME_FUEL_CRANKING@@, "mg", 0, 100, 0, 0, 100, 100, 3, 1
2017-08-02 04:50:19 -07:00
iatCorrectionGauge = iatCorrection, @@GAUGE_NAME_FUEL_IAT_CORR@@, "mult", 0, 3, 0, 0, 3, 3, 2, 2
cltCorrectionGauge = cltCorrection, @@GAUGE_NAME_FUEL_CLT_CORR@@, "mult", 0, 3, 0, 0, 3, 3, 2, 2
injectorDutyCycleGauge=injectorDutyCycle, @@GAUGE_NAME_FUEL_INJ_DUTY@@,"%", 0, 120, 10, 10, 100, 100, 1, 1
actualLastInjectionGauge = actualLastInjection, @@GAUGE_NAME_FUEL_LAST_INJECTION@@, "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1
2019-03-21 19:11:11 -07:00
veValueGauge = veValue, "fuel: VE", "", 0, 120, 10, 10, 100, 100, 1, 1
2017-06-19 14:08:17 -07:00
injectorLagMsGauge = injectorLagMs, @@GAUGE_NAME_INJECTOR_LAG@@, "mSec", 0, 10, 0, 0, 10, 10, 3, 1
fuelRunningGauge = fuelRunning, @@GAUGE_NAME_FUEL_RUNNING@@, "mg", 0, 100, 0, 0, 100, 100, 3, 1
baseFuelGauge = baseFuel, @@GAUGE_NAME_FUEL_BASE@@, "mg", 0, 100, 0, 0, 100, 100, 2, 0
fuelPidCorrectionGauge = fuelPidCorrection, @@GAUGE_NAME_FUEL_TRIM@@, "%", -10, 10, -8, -5, 5, 8, 3, 1
fuelPidCorrectionGauge2= fuelPidCorrection2, @@GAUGE_NAME_FUEL_TRIM_2@@, "%", -10, 10, -8, -5, 5, 8, 3, 1
fuelingLoadGauge = fuelingLoad, @@GAUGE_NAME_FUEL_LOAD@@, "%", 0, 300, 0, 0, 300, 300, 1, 1
totalFuelConsumptionGauge = totalFuelConsumption, @@GAUGE_NAME_FUEL_CONSUMPTION@@, "g", 0, 10000, 0, 0, 10000, 10000, 0, 0
fuelFlowRateGauge = fuelFlowRate, @@GAUGE_NAME_FUEL_FLOW@@, "g/s", 0, 50, 0, 0, 50, 50, 2, 0
gaugeCategory = Throttle Body (incl. ETB)
2019-09-20 16:38:19 -07:00
pedalPositionGauge = throttlePedalPosition, @@GAUGE_NAME_THROTTLE_PEDAL@@, "%", 0, 120, 0, 0, 100, 100, 1, 1
tpsADCGauge = tpsADC, "tps1 ADC", "ADC", 0, 1024, 0, 0, 0, 0, 0, 0
TPSGauge = TPSValue, "Throttle position", "%", 0, 100, 0, 0, 100, 100, 1, 1
2020-03-10 23:10:57 -07:00
TPS2Gauge = TPS2Value, "Throttle position #2", "%", 0, 100, 0, 0, 100, 100, 1, 1
2019-09-20 17:41:45 -07:00
etbTargetGauge = etbTarget, @@GAUGE_NAME_ETB_TARGET@@, "%", 0, 100, 0, 0, 100, 100, 1, 1
etbErrorGauge = etb1Error, @@GAUGE_NAME_ETB_ERROR@@, "%", -20, 20, -10, -5, 5, 10, 2, 0
etbDutyCycleGauge = etb1DutyCycle, @@GAUGE_NAME_ETB_DUTY@@, "%", -100, 100, -75, -50, 50, 75, 0, 0
gaugeCategory = Sensors - Raw
rawTps1PrimaryGauge = rawTps1Primary, "Raw TPS 1 Primary", "V", 0, 5, 0, 0, 5, 5, 3, 0
rawTps1SecondaryGauge = rawTps1Secondary, "Raw TPS 1 Secondary", "V", 0, 5, 0, 0, 5, 5, 3, 0
rawTps2PrimaryGauge = rawTps2Primary, "Raw TPS 2 Primary", "V", 0, 5, 0, 0, 5, 5, 3, 0
rawTps2SecondaryGauge = rawTps2Secondary, "Raw TPS 2 Secondary", "V", 0, 5, 0, 0, 5, 5, 3, 0
rawPpsPrimaryGauge = rawPpsPrimary , "Raw Pedal Primary", "V", 0, 5, 0, 0, 5, 5, 3, 0
rawPpsSecondaryGauge = rawPpsSecondary,"Raw Pedal Secondary","V",0, 5, 0, 0, 5, 5, 3, 0
rawCltGauge = rawClt , "Raw CLT", "V", 0, 5, 0, 0, 5, 5, 3, 0
rawIatGauge = rawIat , "Raw IAT", "V", 0, 5, 0, 0, 5, 5, 3, 0
rawOilPressureGauge = rawOilPressure, "Raw Oil Pressure", "V", 0, 5, 0, 0, 5, 5, 3, 0
rawIdlePositionSensorGauge = rawIdlePositionSensor, "Raw Idle Position", "V", 0, 5, 0, 0, 5, 5, 3, 0
rawWastegatePositionGauge = rawWastegatePosition,"Raw Wastegate Position","V", 0, 5, 0, 0, 5, 5, 3, 0
rawLowFuelPressureGauge = rawLowFuelPressure,"Raw fuel pressure (low) voltage","V", 0, 5, 0, 0, 5, 5, 3, 0
rawHighFuelPressureGauge = rawHighFuelPressure,"Raw fuel pressure (high) voltage","V", 0, 5, 0, 0, 5, 5, 3, 0
gaugeCategory = Transmission
desiredGearGauge = tcuDesiredGear, @@GAUGE_NAME_DESIRED_GEAR@@, "gear", -1, 10, -1, -1, 10, 10, 0, 0
currentGearGauge = tcuCurrentGear, @@GAUGE_NAME_CURRENT_GEAR@@, "gear", -1, 10, -1, -1, 10, 10, 0, 0
gaugeCategory = Knock
knock1Gauge = knock1, "Knock Cyl 1", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
knock2Gauge = knock2, "Knock Cyl 2", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
knock3Gauge = knock3, "Knock Cyl 3", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
knock4Gauge = knock4, "Knock Cyl 4", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
knock5Gauge = knock5, "Knock Cyl 5", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
knock6Gauge = knock6, "Knock Cyl 6", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
knock7Gauge = knock7, "Knock Cyl 7", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
knock8Gauge = knock8, "Knock Cyl 8", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
2021-01-19 13:09:34 -08:00
knock9Gauge = knock9, "Knock Cyl 9", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
knock10Gauge = knock10, "Knock Cyl 10", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
knock11Gauge = knock11, "Knock Cyl 11", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
knock12Gauge = knock12, "Knock Cyl 12", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
gaugeCategory = DynoView
accelGauge = VssAcceleration, "Vehicle acceleration", "m/s2", -10, 10, -6, -4, 4, 6, 2, 2
[WueAnalyze]
; wueCurveName, afrTempCompensationCurve, lambdaTargetTableName, lambdaChannel, coolantTempChannel, egoCorrectionChannel, wueChannel, activeCondition
#if LAMBDA
wueAnalyzeMap = wueAnalyzer_warmup_curve, wueAfrTargetOffsetCurve, lambdaTableTbl, lambdaValue, coolant, cltCorrection, egoCorrectionForVeAnalyze
lambdaTargetTables = lambdaTableTbl, afrTSCustom
#else
wueAnalyzeMap = wueAnalyzer_warmup_curve, wueAfrTargetOffsetCurve, afrTableTbl, AFRValue, coolant, cltCorrection, egoCorrectionForVeAnalyze
lambdaTargetTables = afrTableTbl, afrTSCustom
#endif
wuePercentOffset = 0 ; for working with 0 based enrichment set to 100
option = disableLiveUpdates
option = burnOnSend
; filter = std_DeadLambda ; Auto build
filter = decelFilterMap,"After Start Enrich", engine, & , 4 , , false
filter = accelFilterTp, "TP Accel Enrich" , engine, & , 16, , false
filter = decelFilterTp, "TP Decel Enrich" , engine, & , 32, , false
filter = accelFilterMap,"MAP Accel Enrich" , engine, & , 64, , false
filter = decelFilterMap,"MAP Decel Enrich" , engine, & , 128, , false
; this works, just another way to skin a cat
;filter = decelFilter, "Decel Flag" , tpsaccden, > , 0, , false
filter = overrunFilter, "Overrun" , pulseWidth1, = , 0, , false
filter = highThrottle, "High Throttle" , throttle, > , 15, , true
filter = lowRpm, "Low RPM" , rpm, < , 300, , false
filter = std_Custom ; Standard Custom Expression Filter.
2016-07-20 20:03:00 -07:00
[FrontPage]
; Gauges are numbered left to right, top to bottom.
;
; 1 2 3 4
; 5 6 7 8
2017-06-19 19:29:03 -07:00
gauge1 = RPMGauge
2016-07-20 20:03:00 -07:00
gauge2 = CLTGauge
2017-06-19 01:19:12 -07:00
gauge3 = TPSGauge
gauge4 = MAPGauge
#if LAMBDA
gauge5 = lambda1Gauge
#else
gauge5 = afr1Gauge
#endif
2016-07-20 20:03:00 -07:00
gauge6 = VBattGauge
gauge7 = dwellGauge
gauge8 = ignadvGauge
; = expression, off-label, on-label, off-bg, off-fg, on-bg, on-fg
; important status
2021-07-20 08:55:36 -07:00
; todo: do we want to drop this line since we have "config error" feature thing below?
indicator = { ind_hasFatalError }, "", "CRITICAL ERROR", white, black, red, black
2021-07-20 08:55:36 -07:00
indicator = { needBurn }, "", "unsaved changes", white, black, yellow, black
indicator = { ind_isWarnNow }, "", "WARNING", white, black, yellow, black
indicator = { ind_check_engine }, "", "Check Engine", white, black, red, black
2021-07-20 08:55:36 -07:00
indicator = { ind_isTriggerError}, "Trigger OK", "Trigger ERR", white, black, red, black
indicator = { isIgnitionEnabledIndicator}, "no ignition", "ignition", yellow, black, white, black
2021-01-26 20:45:11 -08:00
indicator = { isInjectionEnabledIndicator}, "no injection", "injection", yellow, black, white, black
2020-07-31 20:53:56 -07:00
2021-07-20 08:55:36 -07:00
2020-09-07 08:31:29 -07:00
; this is required so that the "config error" feature works in TS
; don't change this line - TS is looking for an indicator with particular text/styling
; you don't even have to show it by default
indicator = { ind_hasFatalError }, "Config Error", "Config Error", white, black, red, black
2016-07-20 20:03:00 -07:00
; minor info
indicator = { ind_fan }, "fan off", "fan on", white, black, green, black
indicator = { ind_fan_2 }, "fan 2 off", "fan 2 on", white, black, green, black
2020-09-07 08:31:29 -07:00
indicator = { isCylinderCleanupActivated}, "no cyl cleanup", "cyl cleanup", white, black, yellow, black
indicator = { ind_fuel_pump}, "pump off", "pump on", white, black, green, black
2021-07-20 08:55:36 -07:00
indicator = { clutchUpState }, "Clutch Up", "clutch Up", white, black, red, black
indicator = { clutchDownState }, "Clutch Down", "Clutch Down", white, black, yellow, black
2017-05-15 17:10:27 -07:00
indicator = { brakePedalIndicator }, "brake", "brake down", white, black, red, black
indicator = { acSwitchState }, "AC switch off", "AC switch on", white, black, blue, white
indicator = { acState }, "AC off", "AC on", white, black, blue, white
indicator = { isIdleClosedLoop }, "not idling", "idling", white, black, green, black
indicator = { isIdleCoasting }, "not coasting", "coasting", white, black, green, black
2016-07-20 20:03:00 -07:00
; error codes
2020-11-16 16:09:05 -08:00
indicator = { isTpsError}, "tps", "tps error", white, black, red, black
indicator = { isTps2Error}, "tps 2", "tps 2 error", white, black, red, black
2021-07-20 08:55:36 -07:00
indicator = { ind_pedal_error}, "pedal", "pedal error", white, black, red, black
2016-07-20 20:03:00 -07:00
indicator = { ind_clt_error}, "clt", "clt error", white, black, red, black
indicator = { ind_iat_error}, "iat", "iat error", white, black, red, black
; not implemented
; indicator = { ind_map_error}, "map", "map error", white, black, red, black
indicator = { sd_present }, "no SD card", "SD card OK", white, black, green, black
indicator = { sd_logging_internal }, "SD logging", "SD logging", white, black, green, black
indicator = { sd_msd }, "SD USB", "SD USB", white, black, green, black
2021-07-20 08:55:36 -07:00
; looks like TS would append four system indicators below: Data Logging, ???, Not Connected, Protocol Error
2020-04-05 19:25:09 -07:00
[KeyActions]
showPanel = spi, spiFunction
2020-09-07 08:31:29 -07:00
showPanel = con, connection
2020-04-05 19:25:09 -07:00
2020-11-29 15:12:16 -08:00
;
; this section defines how we log output channels
; see [OutputChannels]
;
2016-07-20 20:03:00 -07:00
[Datalog]
; Channel Label Type Format
2020-06-14 12:43:54 -07:00
entry = time, @@GAUGE_NAME_TIME@@, float, "%.3f"
entry = seconds, @@GAUGE_NAME_UPTIME@@, float, "%.3f"
2020-06-14 12:43:54 -07:00
entry = RPMValue, @@GAUGE_NAME_RPM@@, int, "%d"
2017-04-13 20:37:17 -07:00
entry = firmwareVersion, @@GAUGE_NAME_VERSION@@, int, "%d"
2020-06-14 12:43:54 -07:00
entry = coolant, @@GAUGE_NAME_CLT@@, float, "%.2f"
entry = intake, @@GAUGE_NAME_IAT@@, float, "%.2f"
entry = oilPressure, @@GAUGE_NAME_OIL_PRESSURE@@,float, "%.1f"
2020-06-14 12:43:54 -07:00
entry = TPSValue, @@GAUGE_NAME_TPS@@, float, "%.2f"
2020-07-30 11:31:49 -07:00
entry = TPS2Value, @@GAUGE_NAME_TPS2@@, float, "%.2f"
2020-06-14 12:43:54 -07:00
entry = MAFValue, @@GAUGE_NAME_MAF@@, float, "%.2f"
entry = MAPValue, @@GAUGE_NAME_MAP@@, float, "%.1f"
entry = AFRValue, @@GAUGE_NAME_AFR@@, float, "%.2f"
entry = AFRValue2, @@GAUGE_NAME_AFR2@@, float, "%.2f"
entry = lambdaValue, @@GAUGE_NAME_LAMBDA@@, float, "%.2f"
entry = lambdaValue2, @@GAUGE_NAME_LAMBDA2@@, float, "%.2f"
entry = VBatt, @@GAUGE_NAME_VBAT@@, float, "%.2f"
2020-07-20 23:21:04 -07:00
entry = fuelingLoad, @@GAUGE_NAME_FUEL_LOAD@@, float, "%.1f"
entry = ignitionLoad, @@GAUGE_NAME_IGNITION_LOAD@@, float, "%.1f"
2017-04-13 20:37:17 -07:00
entry = ignitionAdvance, @@GAUGE_NAME_TIMING_ADVANCE@@, float, "%.2f"
entry = knockLevel, @@GAUGE_NAME_KNOCK_LEVEL@@, float, "%.2f"
entry = vehicleSpeedKph, @@GAUGE_NAME_VVS@@, float, "%.2f"
2016-07-20 20:03:00 -07:00
entry = speedToRpmRatio, "s2rpm", float, "%.3f"
entry = rpmAcceleration, "dRPM", int, "%d"
2019-09-20 16:38:19 -07:00
entry = massAirFlowValue,@@GAUGE_NAME_AIR_FLOW@@, float, "%.3f"
entry = chargeAirMass, @@GAUGE_NAME_AIR_MASS@@, float, "%.3f"
entry = throttlePedalPosition, @@GAUGE_NAME_THROTTLE_PEDAL@@, float, "%.3f"
entry = wastegatePositionSensor, @@GAUGE_NAME_WG_POSITION@@, float, "%.3f"
2020-06-14 15:39:05 -07:00
entry = totalTriggerErrorCounter, @@GAUGE_NAME_TRG_ERR@@,int, "%d"
2017-06-04 17:56:58 -07:00
entry = idleAirValvePosition, @@GAUGE_NAME_IAC@@, float, "%.3f"
entry = lowFuelPressure, @@GAUGE_NAME_FUEL_PRESSURE_LOW@@, float, "%.3f"
2020-11-21 19:56:47 -08:00
; entry = rawLowFuelPressure, @@GAUGE_NAME_RAW_FUEL_PRESSURE_LOW@@, float, "%.3f"
entry = highFuelPressure, @@GAUGE_NAME_FUEL_PRESSURE_HIGH@@, float, "%.3f"
2020-11-21 19:56:47 -08:00
; entry = rawHighFuelPressure, @@GAUGE_NAME_RAW_FUEL_PRESSURE_HIGH@@, float, "%.3f"
2016-07-20 20:03:00 -07:00
2018-01-17 18:53:08 -08:00
entry = injectorLagMs, @@GAUGE_NAME_INJECTOR_LAG@@, float, "%.3f"
2017-05-22 16:42:34 -07:00
entry = fuelRunning, @@GAUGE_NAME_FUEL_RUNNING@@, float, "%.3f"
entry = actualLastInjection, @@GAUGE_NAME_FUEL_LAST_INJECTION@@, float, "%.3f"
2019-03-12 18:48:28 -07:00
entry = baseFuel, @@GAUGE_NAME_FUEL_BASE@@, float, "%.2f"
entry = fuelPidCorrection,@@GAUGE_NAME_FUEL_TRIM@@, float, "%.2f"
entry = fuelPidCorrection2,@@GAUGE_NAME_FUEL_TRIM_2@@, float, "%.2f"
2019-03-12 18:48:28 -07:00
entry = veValue, @@GAUGE_NAME_FUEL_VE@@, float, "%.3f"
2017-04-03 18:12:21 -07:00
entry = injectorDutyCycle,@@GAUGE_NAME_FUEL_INJ_DUTY@@,float,"%.3f"
entry = coilDutyCycle, @@GAUGE_NAME_DWELL_DUTY@@, float,"%.3f"
2017-05-22 16:42:34 -07:00
entry = currentTargetAfr,@@GAUGE_NAME_TARGET_AFR@@, float,"%.3f"
2020-10-30 14:42:00 -07:00
entry = targetLambda, @@GAUGE_NAME_TARGET_LAMBDA@@, float,"%.4f"
entry = totalFuelConsumption, @@GAUGE_NAME_FUEL_CONSUMPTION@@, int, "%d"
entry = fuelFlowRate, @@GAUGE_NAME_FUEL_FLOW@@, float, "%.2f"
2016-07-20 20:03:00 -07:00
2019-12-18 16:34:08 -08:00
entry = accelerationX, @@GAUGE_NAME_ACCEL_X@@, float,"%.2f", { LIS302DLCsPin != 0 }
entry = accelerationY, @@GAUGE_NAME_ACCEL_Y@@, float,"%.2f", { LIS302DLCsPin != 0 }
2019-12-18 11:39:38 -08:00
entry = egt1, "EGT1", float,"%.1f", { max31855_cs1 != 0}
entry = egt2, "EGT2", float,"%.1f", { max31855_cs2 != 0}
entry = egt3, "EGT3", float,"%.1f", { max31855_cs3 != 0}
entry = egt4, "EGT4", float,"%.1f", { max31855_cs4 != 0}
entry = egt5, "EGT5", float,"%.1f", { max31855_cs5 != 0}
entry = egt6, "EGT6", float,"%.1f", { max31855_cs6 != 0}
entry = egt7, "EGT7", float,"%.1f", { max31855_cs7 != 0}
entry = egt8, "EGT8", float,"%.1f", { max31855_cs8 != 0}
2017-08-28 17:11:32 -07:00
2017-04-03 18:12:21 -07:00
entry = engineLoadAccelExtra, @@GAUGE_NAME_FUEL_EL_EXTRA@@,float, "%.3f"
2016-07-20 20:03:00 -07:00
entry = engineLoadDelta, "fuel: load change",float, "%.3f"
2019-04-20 11:54:16 -07:00
entry = deltaTps, @@GAUGE_NAME_FUEL_TPS_ROC@@,float, "%.3f"
2017-04-03 18:12:21 -07:00
entry = tpsAccelFuel, @@GAUGE_NAME_FUEL_TPS_EXTRA@@, float, "%.3f"
2016-07-20 20:03:00 -07:00
2019-03-12 18:48:28 -07:00
entry = wallFuelCorrection,@@GAUGE_NAME_FUEL_WALL_CORRECTION@@, float, "%.3f"
entry = wallFuelAmount, @@GAUGE_NAME_FUEL_WALL_AMOUNT@@, float, "%.3f"
2016-07-20 20:03:00 -07:00
2019-09-20 16:38:19 -07:00
entry = baroCorrection, @@GAUGE_NAME_FUEL_BARO_CORR@@,float,"%.3f"
2017-04-13 20:37:17 -07:00
entry = iatCorrection, @@GAUGE_NAME_FUEL_IAT_CORR@@, float, "%.3f"
entry = cltCorrection, @@GAUGE_NAME_FUEL_CLT_CORR@@, float,"%.3f"
2016-07-20 20:03:00 -07:00
entry = sparkDwellValue, @@GAUGE_COIL_DWELL_TIME@@, float,"%.3f"
entry = vvtPositionB1I, @@GAUGE_NAME_VVT_B1I@@, float, "%.1f"
entry = vvtPositionB1E, @@GAUGE_NAME_VVT_B1E@@, float, "%.1f"
entry = vvtPositionB2I, @@GAUGE_NAME_VVT_B2I@@, float, "%.1f"
entry = vvtPositionB2E, @@GAUGE_NAME_VVT_B2E@@, float, "%.1f"
2018-06-12 06:31:15 -07:00
entry = injectionOffset, "injOffset" , float, "%.2F"
2016-07-20 20:03:00 -07:00
2016-09-17 18:02:45 -07:00
; is there a way to log parameter? entry = debugMode, "debugMode",int,"%d"
entry = debugFloatField1, {bitStringValue( debugFieldF1List, debugMode )},float,"%.4f", { !enableLogDebugChannels }
entry = debugFloatField2, {bitStringValue( debugFieldF2List, debugMode )},float,"%.4f", { !enableLogDebugChannels }
entry = debugFloatField3, {bitStringValue( debugFieldF3List, debugMode )},float,"%.4f", { !enableLogDebugChannels }
entry = debugFloatField4, {bitStringValue( debugFieldF4List, debugMode )},float,"%.4f", { !enableLogDebugChannels }
entry = debugFloatField5, {bitStringValue( debugFieldF5List, debugMode )},float,"%.4f", { !enableLogDebugChannels }
entry = debugFloatField6, {bitStringValue( debugFieldF6List, debugMode )},float,"%.4f", { !enableLogDebugChannels }
entry = debugFloatField7, {bitStringValue( debugFieldF7List, debugMode )},float,"%.4f", { !enableLogDebugChannels }
entry = debugIntField1, {bitStringValue( debugFieldI1List, debugMode )},int,"%d", { !enableLogDebugChannels }
entry = debugIntField2, {bitStringValue( debugFieldI2List, debugMode )},int,"%d", { !enableLogDebugChannels }
entry = debugIntField3, {bitStringValue( debugFieldI3List, debugMode )},int,"%d", { !enableLogDebugChannels }
entry = debugIntField4, {bitStringValue( debugFieldI4List, debugMode )},int,"%d", { !enableLogDebugChannels }
entry = debugIntField5, {bitStringValue( debugFieldI5List, debugMode )},int,"%d", { !enableLogDebugChannels }
2018-12-31 06:19:05 -08:00
entry = engineMakeCodeNameCrc16, @@GAUGE_NAME_ENGINE_CRC16@@,int,"%d"
entry = tuneCrc16, @@GAUGE_NAME_TUNE_CRC16@@,int,"%d"
2020-05-09 15:31:41 -07:00
2018-01-17 18:53:08 -08:00
entry = engineMode, "Engine Mode",int,"%d"
2017-05-15 01:42:58 -07:00
entry = warningCounter, @@GAUGE_NAME_WARNING_COUNTER@@,int,"%d"
entry = lastErrorCode, @@GAUGE_NAME_WARNING_LAST@@,int,"%d"
entry = recentErrorCode0, "error 0",int,"%d", { !enableLogErrorList }
entry = recentErrorCode1, "error 1",int,"%d", { !enableLogErrorList }
entry = recentErrorCode2, "error 2",int,"%d", { !enableLogErrorList }
entry = recentErrorCode3, "error 3",int,"%d", { !enableLogErrorList }
entry = recentErrorCode4, "error 4",int,"%d", { !enableLogErrorList }
entry = recentErrorCode5, "error 5",int,"%d", { !enableLogErrorList }
entry = recentErrorCode6, "error 6",int,"%d", { !enableLogErrorList }
entry = recentErrorCode7, "error 7",int,"%d", { !enableLogErrorList }
2017-04-13 20:37:17 -07:00
entry = internalMcuTemperature, @@GAUGE_NAME_CPU_TEMP@@,float,"%.2f"
2016-07-20 20:03:00 -07:00
entry = tCharge, "tCharge",float,"%.3f"
2017-05-15 17:16:48 -07:00
entry = clutchUpState, @@INDICATOR_NAME_CLUTCH_UP@@,int,"%d"
entry = clutchDownState, @@INDICATOR_NAME_CLUTCH_DOWN@@,int,"%d"
entry = brakePedalIndicator, @@INDICATOR_NAME_BRAKE_DOWN@@,int,"%d"
2020-11-16 16:09:05 -08:00
entry = acSwitchState, @@INDICATOR_NAME_AC_SWITCH@@,int,"%d"
2017-07-24 18:26:35 -07:00
entry = ind_fan, "radiator fan",int,"%d"
2019-07-03 00:17:08 -07:00
; Electronic throttle body
entry = etb1Error, "ETB Error", float, "%.3f"
2020-06-14 15:47:58 -07:00
entry = etb1DutyCycle, @@GAUGE_NAME_ETB_DUTY@@, float, "%.3f"
2019-07-03 00:17:08 -07:00
entry = etbTarget, "ETB Target", float, "%.3f"
2017-05-15 17:10:27 -07:00
; Transmission
entry = tcuDesiredGear, @@GAUGE_NAME_DESIRED_GEAR@@, int, "%d"
entry = tcuCurrentGear, @@GAUGE_NAME_CURRENT_GEAR@@, int, "%d"
entry = knock1, "Knock 1", int, "%d"
entry = knock2, "Knock 2", int, "%d"
entry = knock3, "Knock 3", int, "%d"
entry = knock4, "Knock 4", int, "%d"
entry = knock5, "Knock 5", int, "%d"
entry = knock6, "Knock 6", int, "%d"
entry = knock7, "Knock 7", int, "%d"
entry = knock8, "Knock 8", int, "%d"
2020-09-07 08:31:29 -07:00
entry = VssAcceleration, "Accel", float, "%.3f"
entry = flexPercent, @@GAUGE_NAME_FLEX@@, int, "%d"
2016-07-20 20:03:00 -07:00
[Menu]
menuDialog = main
2020-08-07 17:16:55 -07:00
; see #1653
; menu = "Data Logging"
; subMenu = std_ms3SdConsole, "Browse / Import SD Card"
2020-07-31 20:53:56 -07:00
menu = "&Base &Engine"
subMenu = engineChars, "Base engine"
subMenu = limitsAndFallback, "Limits and fallbacks"
subMenu = triggerConfiguration, "Trigger"
subMenu = triggerConfiguration_IO, "Advanced Trigger"
2021-05-23 17:52:18 -07:00
subMenu = triggerConfiguration_gap, "Trigger Gap Override"
2016-07-20 20:03:00 -07:00
subMenu = std_separator
subMenu = energySystems, "Battery and alternator"
2016-07-20 20:03:00 -07:00
subMenu = std_separator
2018-02-12 10:44:39 -08:00
# Digital outputs
subMenu = mainRelayDialog, "Main relay"
2020-03-18 12:56:17 -07:00
subMenu = starterRelay, "Starter Disable relay"
subMenu = fuelPump, "Fuel pump"
subMenu = fanSetting, "Fan"
subMenu = acSettings, "Air Conditioning"
subMenu = tachSettings, "Tachometer"
subMenu = malfunction, "Check engine light"
subMenu = statusLeds, "Status LEDs"
menu = "Fuel"
# basic
subMenu = injectorConfig, "Injection configuration"
subMenu = injectionSettings, "Injection hardware", 0, {isInjectionEnabled == 1}
subMenu = cylinderBankSelect, "Cylinder bank selection", 0, {isInjectionEnabled == 1}
subMenu = injectorNonlinear, "Injector small-pulse correction", 0, {isInjectionEnabled == 1}
2021-10-02 06:41:28 -07:00
; subMenu = fuelTrimSettings, "Fuel Trim", 0, {isInjectionEnabled == 1}
subMenu = std_separator
# Air mass model
subMenu = veTableDialog, "VE", 0, {isInjectionEnabled == 1}
subMenu = tChargeSettings, "Charge temperature estimation", 0, {isInjectionEnabled == 1}
subMenu = baroCorrTbl, "Barometric pressure correction", 0, {isInjectionEnabled == 1 && fuelAlgorithm == LM_SPEED_DENSITY}
subMenu = mapEstimateTableTbl, "MAP estimate table", 0, { enableMapEstimationTableFallback }
subMenu = std_separator
# Fuel model
#if LAMBDA
subMenu = lambdaTableTbl, "Target lambda", 0, {isInjectionEnabled == 1}
#else
subMenu = afrTableTbl, "Target AFR", 0, {isInjectionEnabled == 1}
#endif
subMenu = cltFuelCorrCurve, "CLT multiplier", 0, {isInjectionEnabled == 1}
subMenu = iatFuelCorrCurve, "IAT multiplier", 0, {isInjectionEnabled == 1}
subMenu = fuelClosedLoopDialog, "Closed loop fuel correction", 0, {isInjectionEnabled == 1}
subMenu = coastingFuelCutControl, "Deceleration fuel cutoff (DFCO)", 0, {isInjectionEnabled == 1}
2018-02-12 10:44:39 -08:00
subMenu = std_separator
# Injector model
subMenu = injPhaseTableTbl, "Injection phase", 0, {isInjectionEnabled == 1}
2018-02-12 10:44:39 -08:00
subMenu = std_separator
# Accel enrichment
subMenu = AccelEnrich, "Acceleration enrichment", 0, {isInjectionEnabled == 1}
subMenu = tpsTpsAccelTbl, "TPS/TPS acceleration extra fuel", 0, {isInjectionEnabled == 1}
subMenu = mapAccelTaper, "Engine load AE taper", 0, {isInjectionEnabled == 1}
2018-02-12 10:44:39 -08:00
menu = "Ignition"
subMenu = ignitionSettings, "Ignition settings"
subMenu = std_separator
subMenu = dwellSettings, "Dwell", 0, {isIgnitionEnabled == 1}
subMenu = ignitionCylExtra, "Ignition cylinder trim", 0, {isIgnitionEnabled == 1}
subMenu = multisparkSettings, "Multispark", 0, {isIgnitionEnabled == 1}
subMenu = std_separator
2020-10-09 14:16:49 -07:00
subMenu = ignitionTableTbl, "Ignition advance", 0, {isIgnitionEnabled}
subMenu = std_separator
# corrections
subMenu = cltTimingCorrCurve, "CLT correction", 0, {isIgnitionEnabled == 1}
subMenu = ignitionIatCorrTableTbl, "IAT correction", 0, {isIgnitionEnabled == 1}
2018-02-12 10:44:39 -08:00
menu = "&Cranking"
subMenu = crankingDialog, "Cranking settings"
subMenu = postCrankingEnrichment, "After-start enrichment"
subMenu = primingFuelPulsePanel, "Priming pulse"
2016-07-20 20:03:00 -07:00
subMenu = std_separator
subMenu = crankingCltCurve, "Fuel CLT multiplier"
subMenu = crankingDurationCurve, "Fuel duration multiplier"
subMenu = crankingTpsCurve, "Fuel TPS multiplier"
subMenu = std_separator
subMenu = crankingAdvanceCurve, "Cranking ignition advance", 0, {useSeparateAdvanceForCranking == 1}
subMenu = std_separator
subMenu = cltCrankingCurve, "Cranking IAC CLT multiplier", 0, {overrideCrankingIacSetting == 1}
menu = "&Idle"
subMenu = idleSettings, "Idle settings"
subMenu = idlehw, "Idle hardware"
subMenu = std_separator
subMenu = cltIdleRPMCurve, "Target RPM"
subMenu = cltIdleCurve, "CLT multiplier"
2016-07-20 20:03:00 -07:00
subMenu = std_separator
subMenu = idleTimingPidCorrDialog, "Closed-loop idle timing"
subMenu = iacPidMultTbl, "IAC PID Multiplier", 0, {idleMode == 0 && useIacPidMultTable == 1}
subMenu = iacCoastingCurve, "Coasting IAC Position for Auto-Idle", 0, {useIacTableForCoasting == 1}
subMenu = std_separator
subMenu = idleVeCurve, "VE", 0, {useSeparateVeForIdle == 1}
subMenu = idleAdvanceCurve, "Ignition advance", 0, {useSeparateAdvanceForIdle == 1}
2020-09-07 08:31:29 -07:00
menu = "&Advanced"
subMenu = boostDialog, "Boost Control"
subMenu = boostPidDialog, "Closed Loop Boost", { isBoostControlEnabled && boostType == 1 }
subMenu = boostEtbPid, "ETB-style Wastegate Actuator", { isBoostControlEnabled }
subMenu = std_separator
subMenu = gppwm1, "General Purpose PWM 1"
subMenu = gppwm2, "General Purpose PWM 2"
subMenu = gppwm3, "General Purpose PWM 3"
subMenu = gppwm4, "General Purpose PWM 4"
subMenu = std_separator @@if_ts_show_etb
subMenu = etbDialog, "Electronic throttle body" @@if_ts_show_etb
subMenu = etbTpsBiasCurve, "ETB bias curve (feed forward)" @@if_ts_show_etb
subMenu = pedalToTpsTbl, "ETB pedal target" @@if_ts_show_etb
subMenu = std_separator
subMenu = vvtPidDialog, "VVT outputs and PID"
subMenu = vvtTable1Tbl, "VVT intake target"
subMenu = vvtTable2Tbl, "VVT exhaust target"
subMenu = std_separator
2021-09-18 12:00:00 -07:00
subMenu = auxInputsDialog, "Aux inputs"
2016-07-20 20:03:00 -07:00
subMenu = fsioOutputsDialog, "FSIO outputs"
subMenu = fsioFormulas, "FSIO Formulas"
subMenu = std_separator
2016-07-20 20:03:00 -07:00
subMenu = fsioTable1Tbl, "FSIO Table #1"
subMenu = fsioTable2Tbl, "FSIO Table #2"
subMenu = fsioTable3Tbl, "FSIO Table #3"
subMenu = fsioTable4Tbl, "FSIO Table #4"
2017-11-25 22:17:37 -08:00
subMenu = fsioCurve1, "FSIO Curve #1"
subMenu = fsioCurve2, "FSIO Curve #2"
subMenu = fsioCurve3, "FSIO Curve #3"
subMenu = fsioCurve4, "FSIO Curve #4"
subMenu = std_separator
2021-08-21 21:05:51 -07:00
subMenu = luaOutputs, "Lua PWM Outputs"
subMenu = std_separator
subMenu = tcuControls, "Transmission Settings"
subMenu = tcuSolenoidTableTbl, "TCU Solenoids"
menu = "&Sensors"
# Base analog input settings
subMenu = otherSensorInputs, "Misc sensors"
subMenu = analogInputSettings, "Analog input settings"
subMenu = std_separator
# Thermistors
subMenu = cltSensor, "CLT sensor"
subMenu = iatSensor, "IAT sensor"
subMenu = auxTempSensor1Sensor, "AuxTemp1 sensor"
subMenu = auxTempSensor2Sensor, "AuxTemp2 sensor"
subMenu = std_separator
# TPS/pedal
subMenu = tpsSensor, "TPS"
subMenu = pedalSensor, "Accelerator pedal"
subMenu = std_separator
# MAP/Baro
subMenu = mapSettings, "MAP sensor"
subMenu = mapCurves, "MAP sampling"
subMenu = baroSettings, "Baro sensor"
subMenu = std_separator
# MAF
subMenu = mafSettings, "MAF sensor"
subMenu = mafDecodingCurve, "MAF transfer function", 0, {mafAdcChannel != @@ADC_CHANNEL_NONE@@ }
subMenu = std_separator
# O2 sensor(s)
subMenu = egoSettings, "EGO sensor"
subMenu = widebandConfig, "rusEFI Wideband Controller", 0, { canReadEnabled && canWriteEnabled }
subMenu = narrowToWideOxygenCurve, "Narrow to Wideband approximation"
subMenu = cj125Function, "CJ125 settings (wbo decoder)" @@if_ts_show_cj125
subMenu = std_separator
# Misc sensors
subMenu = speedSensor, "Vehicle speed sensor"
subMenu = oilPressureSensor, "Oil pressure"
subMenu = fuelPressureSensor, "Fuel pressure"
subMenu = fuelLevelDialog, "Fuel level sensor"
subMenu = egtInputs, "EGT" @@if_ts_show_egt
subMenu = wastegateIdlePos, "Wastegate and idle position sensors"
menu = "&Controller"
subMenu = ecuStimulator, "ECU stimulator"
subMenu = datalogSettings, "Datalogging"
subMenu = ioTest, "Bench test"
2019-01-20 19:17:06 -08:00
subMenu = engineTypeDialog, "Popular vehicles"
subMenu = std_separator
subMenu = lcdScreen, "LCD" @@if_ts_show_lcd
subMenu = joystickPanel, "Joystick" @@if_ts_show_joystick
2020-03-17 12:50:42 -07:00
subMenu = spiFunction, "SPI"@@if_ts_show_spi
2020-09-03 20:27:53 -07:00
subMenu = monitoringSettings, "rusEFI console"
subMenu = std_separator
2020-08-08 00:02:53 -07:00
subMenu = canBusMain, "CAN Bus Communication"
subMenu = sdCard, "SD Card Logger" @@if_ts_show_sd_card
subMenu = connection, "Connection"
2020-04-23 12:40:10 -07:00
subMenu = tle8888, "TLE8888"
2020-09-07 08:31:29 -07:00
subMenu = allPins1, "Full pinout 1/3" @@if_ts_show_full_pinout
subMenu = allPins2, "Full pinout 2/3" @@if_ts_show_full_pinout
subMenu = allPins3_1_and_2 "Full pinout 3/3" @@if_ts_show_full_pinout
subMenu = std_separator
# EXPERIMENTAL FEATURES
subMenu = parkingLot, "Experimental/Broken"
2021-07-09 07:06:51 -07:00
subMenu = rotaryDialog, "Rotary"
subMenu = mc33Dialog, "GDI Dreams"
subMenu = vrThreshold, "VR Sensor Threshold"
subMenu = std_separator
subMenu = hipFunction, "HIP9011 settings (knock sensor) (alpha version)" @@if_ts_show_hip9011
subMenu = softwareKnock, "Software Knock" @@if_ts_show_software_knock
subMenu = std_separator
subMenu = smLaunchControl, "Launch Control"
subMenu = std_separator
# subMenu = smRollingLaunch, "Rolling Launch"
# subMenu = std_separator
# subMenu = antiLag, "Antilag Setup"
# subMenu = std_separator
2016-07-20 20:03:00 -07:00
2020-04-09 15:09:17 -07:00
menu = "Help"
2020-09-03 20:27:53 -07:00
subMenu = helpGeneral, "rusEFI Info"
2020-04-09 15:09:17 -07:00
2016-07-20 20:03:00 -07:00
[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.
2017-05-01 19:33:20 -07:00
;
; see TS_IO_TEST_COMMAND in firmware code
;
2020-08-05 16:57:28 -07:00
cmd_test_spk1 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x01"
cmd_test_spk2 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x02"
cmd_test_spk3 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x03"
cmd_test_spk4 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x04"
cmd_test_spk5 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x05"
cmd_test_spk6 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x06"
cmd_test_spk7 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x07"
cmd_test_spk8 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x08"
cmd_test_spk9 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x09"
cmd_test_spk10 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x0a"
cmd_test_spk11 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x0b"
cmd_test_spk12 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x0c"
2020-09-07 08:31:29 -07:00
cmd_test_fsio1 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x01"
cmd_test_fsio2 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x02"
2020-12-26 10:41:25 -08:00
cmd_test_fsio3 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x03"
cmd_test_fsio4 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x04"
cmd_test_fsio5 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x05"
cmd_test_fsio6 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x06"
cmd_test_fsio7 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x07"
cmd_test_fsio8 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x08"
cmd_test_fsio9 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x09"
cmd_test_fsio10 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x0a"
cmd_test_fsio11 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x0b"
cmd_test_fsio12 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x0c"
cmd_test_fsio13 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x0d"
cmd_test_fsio14 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x0e"
cmd_test_fsio15 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x0f"
cmd_test_fsio16 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY_16_hex@@\x00\x10"
2016-07-20 20:03:00 -07:00
cmd_test_inj1 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_INJECTOR_CATEGORY_16_hex@@\x00\x01"
cmd_test_inj2 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_INJECTOR_CATEGORY_16_hex@@\x00\x02"
2020-08-05 16:57:28 -07:00
cmd_test_inj3 = "@@TS_IO_TEST_COMMAND_char@@\x00\x13\x00\x03"
cmd_test_inj4 = "@@TS_IO_TEST_COMMAND_char@@\x00\x13\x00\x04"
cmd_test_inj5 = "@@TS_IO_TEST_COMMAND_char@@\x00\x13\x00\x05"
cmd_test_inj6 = "@@TS_IO_TEST_COMMAND_char@@\x00\x13\x00\x06"
cmd_test_inj7 = "@@TS_IO_TEST_COMMAND_char@@\x00\x13\x00\x07"
cmd_test_inj8 = "@@TS_IO_TEST_COMMAND_char@@\x00\x13\x00\x08"
cmd_test_inj9 = "@@TS_IO_TEST_COMMAND_char@@\x00\x13\x00\x09"
cmd_test_inj10 = "@@TS_IO_TEST_COMMAND_char@@\x00\x13\x00\x0a"
cmd_test_inj11 = "@@TS_IO_TEST_COMMAND_char@@\x00\x13\x00\x0b"
cmd_test_inj12 = "@@TS_IO_TEST_COMMAND_char@@\x00\x13\x00\x0c"
cmd_test_sol1 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_SOLENOID_CATEGORY_16_hex@@\x00\x01"
cmd_test_sol2 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_SOLENOID_CATEGORY_16_hex@@\x00\x02"
cmd_test_sol3 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_SOLENOID_CATEGORY_16_hex@@\x00\x03"
cmd_test_sol4 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_SOLENOID_CATEGORY_16_hex@@\x00\x04"
cmd_test_sol5 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_SOLENOID_CATEGORY_16_hex@@\x00\x05"
cmd_test_sol6 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_SOLENOID_CATEGORY_16_hex@@\x00\x06"
cmd_test_main_relay = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@CMD_TS_BENCH_MAIN_RELAY_16_hex@@"
cmd_test_fuel_pump = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@CMD_TS_BENCH_FUEL_PUMP_16_hex@@"
cmd_test_starter_relay = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@CMD_TS_BENCH_STARTER_ENABLE_RELAY_16_hex@@"
cmd_test_starter_disable_relay = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@CMD_TS_BENCH_STARTER_DISABLE_RELAY_16_hex@@"
cmd_test_ac_relay = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@CMD_TS_BENCH_AC_COMPRESSOR_RELAY_16_hex@@"
cmd_test_fan_1 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@CMD_TS_BENCH_FAN_RELAY_16_hex@@"
cmd_test_fan_2 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@CMD_TS_BENCH_FAN_RELAY_2_16_hex@@"
cmd_test_check_engine_light = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@CMD_TS_BENCH_CHECK_ENGINE_LIGHT_16_hex@@"
cmd_test_idle_valve = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@CMD_TS_BENCH_IDLE_VALVE_16_hex@@"
2020-11-21 21:09:36 -08:00
cmd_test_hpfp_valve = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@CMD_TS_BENCH_HPFP_VALVE_16_hex@@"
2021-06-27 18:04:39 -07:00
cmd_calibrate_tps_1_closed = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x02"
cmd_calibrate_tps_1_wot = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x03"
cmd_calibrate_tps_2_closed = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x04"
cmd_calibrate_tps_2_wot = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x05"
cmd_calibrate_pedal_up = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x06"
cmd_calibrate_pedal_down = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x07"
cmd_tle8888_init = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x08"
cmd_write_config = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x0A"
cmd_etb_autotune = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x0C"
cmd_enable_self_stim = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x0D"
cmb_etb_auto_calibrate = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x0E"
cmd_disable_self_stim = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x0F"
cmd_etb_autotune_stop = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x10"
cmb_etb_auto_calibrate_2 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x11"
cmd_wideband_firmare_update = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x12"
cmd_enable_ext_stim = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x13"
2021-07-20 10:20:34 -07:00
cmd_nDBANK = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x14"@@if_ts_show_f7_presets
2021-08-10 04:11:41 -07:00
cmd_burn_without_flash = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x15"
2020-08-05 16:57:28 -07:00
cmd_set_wideband_idx_0 = "@@TS_IO_TEST_COMMAND_char@@\x00\x15\x00\x00"
cmd_set_wideband_idx_1 = "@@TS_IO_TEST_COMMAND_char@@\x00\x15\x00\x01"
2020-08-05 16:57:28 -07:00
cmd_cj125_calibrate = "@@TS_IO_TEST_COMMAND_char@@\x00\x18\x00\x00"
cmd_call_from_pit = "@@TS_IO_TEST_COMMAND_char@@\x00\x20\x34\x56"
cmd_stop_engine = "@@TS_IO_TEST_COMMAND_char@@\x00\x79\x00\x00"
; reboot ECU
2020-08-05 16:57:28 -07:00
cmd_reset_controller = "@@TS_IO_TEST_COMMAND_char@@\x00\xbb\x00\x00"
; jump to DFU mode
2020-08-05 16:57:28 -07:00
cmd_dfu = "@@TS_IO_TEST_COMMAND_char@@\x00\xba\x00\x00"
2019-03-12 17:33:13 -07:00
; See 'executeTSCommand' in firmware source code
2020-05-21 18:00:34 -07:00
; MRE_MIATA_NB2_MAP = 11
2020-08-05 16:57:28 -07:00
cmd_set_engine_type_microRusEFI_Miata_NB2_MAP = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_MRE_MIATA_NB2_MAP_16_hex@@"
2020-05-22 10:12:16 -07:00
2020-08-29 13:49:56 -07:00
cmd_set_engine_type_microRusEFI_VW_B6 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_VW_B6_16_hex@@"
cmd_set_engine_type_microRusEFI_MRE_BODY_CONTROL = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_MRE_BODY_CONTROL_16_hex@@"
2020-05-22 10:12:16 -07:00
; MRE_MIATA_NA6 12
2020-08-05 16:57:28 -07:00
cmd_set_engine_type_microRusEFI_Miata_NA6_VAF = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_MRE_MIATA_NA6_VAF_16_hex@@"
2020-07-29 11:53:36 -07:00
2020-08-05 16:57:28 -07:00
cmd_set_engine_type_microRusEFI_Miata_NA6_MAP = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_MRE_MIATA_NA6_MAP_16_hex@@"
2020-07-29 11:53:36 -07:00
2020-11-28 19:49:28 -08:00
cmd_set_engine_type_microRusEFI_Miata_94_MAP = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_MRE_MIATA_94_MAP_16_hex@@"
2020-05-22 10:12:16 -07:00
2020-05-21 18:00:34 -07:00
; MRE_MIATA_NB2_MAF = 15
2020-08-05 16:57:28 -07:00
cmd_set_engine_type_microRusEFI_Miata_NB2_MAF = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_MRE_MIATA_NB2_MAF_16_hex@@"
2020-05-22 10:12:16 -07:00
2020-12-13 10:16:39 -08:00
cmd_set_engine_type_ET_MRE_SUBARU_EJ18 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_MRE_SUBARU_EJ18_16_hex@@"
2020-08-05 16:57:28 -07:00
cmd_set_engine_type_microRusEFI_Defaults = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_MRE_DEFAULTS_16_hex@@"
2020-12-14 21:17:09 -08:00
cmd_set_engine_type_ET_MRE_M111 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_MRE_M111_16_hex@@"
2020-06-30 18:29:47 -07:00
2021-06-13 18:28:57 -07:00
cmd_set_engine_type_hellen_NA6 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_HELLEN_NA6_16_hex@@"
cmd_set_engine_type_hellen_NA94 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_HELLEN_NA94_16_hex@@"
2021-08-09 23:17:12 -07:00
cmd_set_engine_type_hellen_NB2_36 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_HELLEN_NB2_36_16_hex@@"
cmd_set_engine_type_hellen_nissan_121_4 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_HELLEN_121_NISSAN_4_CYL_16_hex@@"
cmd_set_engine_type_hellen_nissan_121_6 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_HELLEN_121_NISSAN_6_CYL_16_hex@@"
cmd_set_engine_type_hellen_nissan_121_8 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_HELLEN_121_NISSAN_8_CYL_16_hex@@"
2021-07-08 13:35:58 -07:00
cmd_set_engine_type_hellen_121_vag_4 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_HELLEN_121_VAG_16_hex@@"
cmd_set_engine_type_hellen_121_vag_5 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_HELLEN_121_VAG_5_CYL_16_hex@@"
2021-07-08 17:06:15 -07:00
cmd_set_engine_type_hellen_121_vag_v6 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_HELLEN_121_VAG_V6_CYL_16_hex@@"
cmd_set_engine_type_hellen_121_vag_vr6 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_HELLEN_121_VAG_VR6_CYL_16_hex@@"
2021-07-08 13:35:58 -07:00
cmd_set_engine_type_hellen_121_vag_8 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_HELLEN_121_VAG_8_CYL_16_hex@@"
2021-09-18 16:42:04 -07:00
cmd_set_engine_type_hellen_128_merc_4 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_HELLEN_128_MERCEDES_4_CYL_16_hex@@"
cmd_set_engine_type_hellen_128_merc_6 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_HELLEN_128_MERCEDES_6_CYL_16_hex@@"
cmd_set_engine_type_hellen_128_merc_8 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_HELLEN_128_MERCEDES_8_CYL_16_hex@@"
2021-06-13 18:28:57 -07:00
2019-01-20 19:17:06 -08:00
; MIATA_NA6_MAP = 41
2020-08-05 16:57:28 -07:00
cmd_set_engine_type_Frankenso_Miata_NA6_MAP = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_FRANKENSO_MIATA_NA6_16_hex@@"
2019-01-20 19:17:06 -08:00
; MIATA_NA6_VAF = 57
2020-08-05 16:57:28 -07:00
cmd_set_engine_type_Frankenso_Miata_NA6_VAF = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_FRANKENSO_MIATA_NA6_VAF_16_hex@@"
2019-01-20 19:17:06 -08:00
; MAZDA_MIATA_2003 = 47
2020-08-05 16:57:28 -07:00
cmd_set_engine_type_Frankenso_Miata_NB2 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_FRANKENSO_MIATA_NB2_16_hex@@"
2020-05-21 18:00:34 -07:00
2020-12-14 21:17:09 -08:00
cmd_set_engine_type_Proteus_M73 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_PROTEUS_BMW_M73_16_hex@@"
cmd_set_engine_type_ET_PROTEUS_MIATA_NB2 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_PROTEUS_MIATA_NB2_16_hex@@"
2020-11-04 09:48:07 -08:00
cmd_set_engine_type_Proteus_Miata_TCU = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_MIATA_TCU_PROTEUS_16_hex@@"
2020-05-24 10:27:14 -07:00
2020-05-21 18:00:34 -07:00
2019-03-02 11:00:32 -08:00
; ETB_BENCH_ENGINE = 58
2020-08-05 16:57:28 -07:00
cmd_set_engine_type_etb_test = "@@TS_IO_TEST_COMMAND_char@@\x00\x30\x00\x3A"
2019-05-05 09:48:04 -07:00
; ETB_BENCH_ENGINE = 59
2020-08-05 16:57:28 -07:00
cmd_set_engine_type_8888_test = "@@TS_IO_TEST_COMMAND_char@@\x00\x30\x00\x3B"
cmd_set_engine_type_default = "@@TS_IO_TEST_COMMAND_char@@\x00\x31\x00\x00"
2016-07-20 20:03:00 -07:00
[UserDefined]
dialog = tChargeRpmTpsSettings, "RPM+TPS Mode Settings"
2018-01-02 09:29:04 -08:00
field = "We use these coefficients to approximate air/fuel charge temperate"
field = "based on CLT and IAT, depending on RPM and TPM"
field = "minRPM minTPS", tChargeMinRpmMinTps
field = "minRPM maxTPS", tChargeMinRpmMaxTps
field = "maxRPM minTPS", tChargeMaxRpmMinTps
field = "maxRPM maxTPS", tChargeMaxRpmMaxTps
2016-07-20 20:03:00 -07:00
dialog = tChargeGeneralSettings, ""
field = "tCharge Mode", tChargeMode
field = "tChange Increment Limit, deg/sec", tChargeAirIncrLimit
field = "tChange Decrement Limit, deg/sec", tChargeAirDecrLimit
field = ""
dialog = tChargeAirInterpSettings, "Air Interpolation Mode Settings"
field = "Min tCharge Coeff.", tChargeAirCoefMin
field = "Max tCharge Coeff.", tChargeAirCoefMax
field = "Max Air Flow, kg/h", tChargeAirFlowMax
dialog = tChargeSettings, "tCharge Settings"
panel = tChargeGeneralSettings
panel = tChargeRpmTpsSettings, { tChargeMode == 0}
panel = tChargeAirInterpSettings, { tChargeMode == 1}
dialog = baseInjection, "General"
2016-07-20 20:03:00 -07:00
field = "Enabled", isInjectionEnabled
field = "Mode", injectionMode, {isInjectionEnabled == 1}
field = "#Batch injection with individual wiring"
field = "Individually wired Batch Fuel", twoWireBatchInjection, {isInjectionEnabled == 1 && injectionMode == @@IM_IM_BATCH@@ }
field = "Override VE table load axis", veOverrideMode, { isInjectionEnabled }
field = "Override AFR table load axis", afrOverrideMode, { isInjectionEnabled }
2016-07-20 20:03:00 -07:00
dialog = ignitionOutputs, "Ignition Outputs"
2019-05-31 16:21:30 -07:00
field = "Ignition Pin Mode", ignitionPinMode, {isIgnitionEnabled == 1}
field = "Ignition Pin 1", ignitionPins1, {isIgnitionEnabled == 1}
; see rusefi_config.txt comment next to 'ignitionPin2logic' which says
; this section is auto-generated by FiringOrderTSLogic.java
2020-09-07 08:31:29 -07:00
@@FIRINGORDER@@
dialog = ignitionBasic, ""
2016-07-20 20:03:00 -07:00
field = "Enabled", isIgnitionEnabled
field = "Mode", ignitionMode, {isIgnitionEnabled == 1}
field = "Individually wired Wasted Spark", twoWireBatchIgnition, {isIgnitionEnabled == 1 && ignitionMode == @@IM_IM_WASTED_SPARK@@ }
2020-10-09 14:16:49 -07:00
field = "Override ignition table load axis", ignOverrideMode, {isIgnitionEnabled}
field = "#Use fixed timing while validating with a timing gun"
2020-10-09 14:16:49 -07:00
field = "Timing Mode", timingMode, {isIgnitionEnabled == 1}
field = "Fixed Timing", fixedTiming, {isIgnitionEnabled == 1 && timingMode == 1}
2016-07-20 20:03:00 -07:00
dialog = ignitionSettings, "", xAxis
panel = ignitionBasic
panel = ignitionOutputs
dialog = baseEngineConfig, "Engine Configuration"
; field = "Engine preset", engineType
field = "Number of cylinders", cylindersCount
field = "Displacement", displacement
field = "Firing order", firingOrder
field = "Vehicle weight", vehicleWeight
dialog = engineMetadata, "Engine Metadata"
field = "#These metadata are used by rusEFI Online"
2020-05-06 11:00:08 -07:00
field = "Engine Make", engineMake
2020-05-07 10:06:39 -07:00
field = "Manufacturer Engine Code", engineCode
field = "Vehicle Name", vehicleName
2020-05-06 21:55:59 -07:00
field = "Compression Ratio", compressionRatio
field = "Forced Induction?", isForcedInduction
2016-07-20 20:03:00 -07:00
; Engine->Trigger configuration
dialog = triggerConfiguration_settings, "Trigger Pattern"
2019-03-12 17:09:33 -07:00
field = "!https://rusefi.com/s/trigger"
2016-07-20 20:03:00 -07:00
field = "Trigger type", trigger_type
field = "Total tooth count", trigger_customTotalToothCount, {trigger_type == @@TT_TT_TOOTHED_WHEEL@@}, {trigger_type == @@TT_TT_TOOTHED_WHEEL@@}
field = "Missing/skipped tooth count", trigger_customSkippedToothCount, {trigger_type == @@TT_TT_TOOTHED_WHEEL@@}, {trigger_type == @@TT_TT_TOOTHED_WHEEL@@}
; see also in firmware '[doesTriggerImplyOperationMode]' tag
field = "Operation mode / speed", ambiguousOperationMode
field = "#Please use '4 stroke with cam' only if primary trigger sensor is actually on cam"
field = "#Separate cam input not part of Trigger Pattern does not count here"
2016-07-20 20:03:00 -07:00
field = "With VR sensors only rising edge has reliable position"
field = "use only rising edge", useOnlyRisingEdgeForTrigger
2017-04-13 20:48:44 -07:00
field = "!Reminder that 4-stroke cycle is 720 degrees"
2019-10-29 13:20:56 -07:00
field = "!For well-known trigger types use '0' trigger angle offset"
field = "Trigger Angle Advance", globalTriggerAngleOffset
field = "Display logic signals", displayLogicLevelsInEngineSniffer
2021-05-23 17:52:18 -07:00
dialog = triggerConfiguration_gap, "Trigger Gap Override"
field = "!This is a pretty advanced feature for when you are debugging trigger synchronization"
2021-05-23 17:52:18 -07:00
field = "Override well known trigger gaps", overrideTriggerGaps
2021-05-24 06:52:06 -07:00
field = gapTrackingLengthOverride, gapTrackingLengthOverride, { overrideTriggerGaps == 1 }
field = "First gap", triggerGapOverride1, { overrideTriggerGaps == 1 }
field = "Second gap", triggerGapOverride2, { overrideTriggerGaps == 1 }
field = "Third gap", triggerGapOverride3, { overrideTriggerGaps == 1 }
2021-05-23 17:52:18 -07:00
dialog = triggerConfiguration_IO, "Advanced Trigger"
2019-03-12 17:09:33 -07:00
field = "!https://rusefi.com/s/vvt"
2021-02-08 12:27:58 -08:00
; todo: code generator to hard-code all triggers not requiring VVT?
; todo: https://github.com/rusefi/rusefi/issues/2077
2021-03-23 12:18:36 -07:00
field = "Cam mode (intake cams)", vvtMode1, {trigger_type != @@TT_TT_MAZDA_MIATA_NA@@}
field = "Cam mode (exhaust cams)", vvtMode2, {trigger_type != @@TT_TT_MAZDA_MIATA_NA@@}
field = "VVT sync edge", vvtCamSensorUseRise, {trigger_type != @@TT_TT_MAZDA_MIATA_NA@@}
2021-03-23 12:18:36 -07:00
field = "#Set offset so VVT indicates 0 degrees in default position"
2021-08-10 12:27:25 -07:00
field = "VVT offset bank 1 intake", vvtOffsets1, { camInputs1 != 0 }
field = "VVT offset bank 1 exhaust", vvtOffsets2, { camInputs2 != 0 }
field = "VVT offset bank 2 intake", vvtOffsets3, { camInputs3 != 0 }
field = "VVT offset bank 2 exhaust", vvtOffsets4, { camInputs4 != 0 }
field = "Print verbose VVT sync details to console",verboseVVTDecoding
field = "Print verbose trigger sync to console", verboseTriggerSynchDetails
field = "Do not print messages in case of sync error", silentTriggerError
2020-09-28 18:05:20 -07:00
field = "Enable noise filtering", useNoiselessTriggerDecoder, {trigger_type == @@TT_TT_TOOTHED_WHEEL_60_2@@ || trigger_type == @@TT_TT_TOOTHED_WHEEL_36_1@@}
dialog = triggerInputs, "Trigger Inputs"
2021-02-08 11:10:57 -08:00
field = "#Cam is primary if you have cam sensor as part of trigger shape"
field = "Primary channel", triggerInputPins1
field = "Invert Primary", invertPrimaryTriggerSignal
field = "Secondary channel", triggerInputPins2, { triggerInputPins1 != 0 && trigger_type != @@TT_TT_TOOTHED_WHEEL@@ && trigger_type != @@TT_TT_TOOTHED_WHEEL_60_2@@ && trigger_type != @@TT_TT_TOOTHED_WHEEL_36_1@@ && trigger_type != @@TT_TT_ONE@@ && trigger_type != @@TT_TT_60_2_VW@@ && trigger_type != @@TT_TT_TOOTHED_WHEEL_36_2@@}
field = "Invert Secondary", invertSecondaryTriggerSignal, { triggerInputPins2 != 0 && trigger_type != @@TT_TT_TOOTHED_WHEEL@@ && trigger_type != @@TT_TT_TOOTHED_WHEEL_60_2@@ && trigger_type != @@TT_TT_TOOTHED_WHEEL_36_1@@ && trigger_type != @@TT_TT_ONE@@ && trigger_type != @@TT_TT_60_2_VW@@ && trigger_type != @@TT_TT_TOOTHED_WHEEL_36_2@@}
2021-03-23 12:18:36 -07:00
field = "#VVT or Cam for 60/2 goes below"
field = "#If your engine has no exhaust cam sensor, use intake cam inputs"
field = "Cam sensor bank 1 intake", camInputs1, { vvtMode1 != @@VM_VVT_INACTIVE@@ }
field = "Cam sensor bank 1 exhaust", camInputs2, { vvtMode2 != @@VM_VVT_INACTIVE@@ && camInputs1 != 0 }
field = "Cam sensor bank 2 intake", camInputs3, { vvtMode1 != @@VM_VVT_INACTIVE@@ && camInputs1 != 0 }
field = "Cam sensor bank 2 exhaust", camInputs4, { vvtMode2 != @@VM_VVT_INACTIVE@@ && camInputs2 != 0 }
2021-08-13 07:44:35 -07:00
field = "Invert cam inputs", invertCamVVTSignal, { camInputs1 != 0 }
panel = triggerInputComparator @@if_ts_show_trigger_comparator
2020-09-07 08:31:29 -07:00
2016-07-20 20:03:00 -07:00
dialog = triggerConfiguration
2020-09-03 20:27:53 -07:00
panel = triggerConfiguration_settings, North, { consumeObdSensors == 0 }
panel = triggerInputs, South, { consumeObdSensors == 0 }
2016-07-20 20:03:00 -07:00
; Engine->Injection Settings
dialog = injChars, "Injector Settings", yAxis
field = "Injector Flow", injector_flow, {isInjectionEnabled == 1}
field = "Fuel rail pressure sensor", injectorPressureType, { isInjectionEnabled && (highPressureFuel_hwChannel || lowPressureFuel_hwChannel) }
field = "Injector flow compensation mode", injectorCompensationMode, { isInjectionEnabled }
field = "Injector reference pressure", fuelReferencePressure, { isInjectionEnabled && injectorCompensationMode != 0 }
dialog = fuelParams, "Fuel characteristics", yAxis
field = "Stoichiometric ratio", stoichRatioPrimary, {isInjectionEnabled == 1}
field = "E100 stoichiometric ratio", stoichRatioSecondary, {isInjectionEnabled == 1 && flexSensorPin != 0 }
2021-09-29 20:46:30 -07:00
dialog = fuelTrimSettings, "Fuel Trim", yAxis
field = "Cylinder 1", fuelTrim1
field = "Cylinder 2", fuelTrim2, {cylindersCount > 1}
field = "Cylinder 3", fuelTrim3, {cylindersCount > 2}
field = "Cylinder 4", fuelTrim4, {cylindersCount > 3}
field = "Cylinder 5", fuelTrim5, {cylindersCount > 4}
field = "Cylinder 6", fuelTrim6, {cylindersCount > 5}
field = "Cylinder 7", fuelTrim7, {cylindersCount > 6}
field = "Cylinder 8", fuelTrim8, {cylindersCount > 7}
field = "Cylinder 9", fuelTrim9, {cylindersCount > 8}
field = "Cylinder 10", fuelTrim10, {cylindersCount > 9}
field = "Cylinder 11", fuelTrim11, {cylindersCount > 10}
field = "Cylinder 12", fuelTrim12, {cylindersCount > 11}
dialog = injectorOutputSettings, "Injector Outputs", yAxis
field = "Use only first half of pins for batch mode"
field = "Injection Pin 1", injectionPins1, {isInjectionEnabled == 1}
field = "Injection Pin 2", injectionPins2, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 1}
2021-01-02 13:51:14 -08:00
field = "Injection Pin 3", injectionPins3, {isInjectionEnabled == 1 && injectionMode != @@IM_IM_SINGLE_POINT@@ && cylindersCount > 2}
field = "Injection Pin 4", injectionPins4, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 3}
2021-01-02 13:51:14 -08:00
field = "Injection Pin 5 ", injectionPins5, {isInjectionEnabled == 1 && injectionMode != @@IM_IM_SINGLE_POINT@@ && cylindersCount > 4}
field = "Injection Pin 6 ", injectionPins6, {isInjectionEnabled == 1 && injectionMode != @@IM_IM_SINGLE_POINT@@ && cylindersCount > 5}
field = "Injection Pin 7 ", injectionPins7, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 6}
field = "Injection Pin 8 ", injectionPins8, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 7}
field = "Injection Pin 9 ", injectionPins9, {isInjectionEnabled == 1 && cylindersCount > 8}
field = "Injection Pin 10 ", injectionPins10, {isInjectionEnabled == 1 && cylindersCount > 9}
field = "Injection Pin 11 ", injectionPins11, {isInjectionEnabled == 1 && cylindersCount > 10}
field = "Injection Pin 12 ", injectionPins12, {isInjectionEnabled == 1 && cylindersCount > 11}
field = ""
field = "injection Pin Mode", injectionPinMode, {isInjectionEnabled == 1}
dialog = cylinderBankSelect, "Cylinder Banks", yAxis
field = "Cylinder 1", cylinderBankSelect1, {isInjectionEnabled == 1}
2021-01-02 13:51:14 -08:00
field = "Cylinder 2", cylinderBankSelect2, {isInjectionEnabled == 1 && injectionMode != @@IM_IM_SINGLE_POINT@@ && cylindersCount > 1}
field = "Cylinder 3", cylinderBankSelect3, {isInjectionEnabled == 1 && injectionMode != @@IM_IM_SINGLE_POINT@@ && cylindersCount > 2}
field = "Cylinder 4", cylinderBankSelect4, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 3}
field = "Cylinder 5 ", cylinderBankSelect5, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 4}
field = "Cylinder 6 ", cylinderBankSelect6, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 5}
field = "Cylinder 7 ", cylinderBankSelect7, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 6}
field = "Cylinder 8 ", cylinderBankSelect8, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 7}
field = "Cylinder 9 ", cylinderBankSelect9, {isInjectionEnabled == 1 && cylindersCount > 8}
field = "Cylinder 10 ", cylinderBankSelect10, {isInjectionEnabled == 1 && cylindersCount > 9}
field = "Cylinder 11 ", cylinderBankSelect11, {isInjectionEnabled == 1 && cylindersCount > 10}
field = "Cylinder 12 ", cylinderBankSelect12, {isInjectionEnabled == 1 && cylindersCount > 11}
dialog = injectorNonlinearPolynomial, "Polynomial Adder", yAxis
field = "Add nonlinearity below pulse", applyNonlinearBelowPulse
field = "constant", injectorCorrectionPolynomial1
field = "x^1", injectorCorrectionPolynomial2
field = "x^2", injectorCorrectionPolynomial3
field = "x^3", injectorCorrectionPolynomial4
field = "x^4", injectorCorrectionPolynomial5
field = "x^5", injectorCorrectionPolynomial6
field = "x^6", injectorCorrectionPolynomial7
field = "x^7", injectorCorrectionPolynomial8
dialog = injectorNonlinear
field = "Small pulse correction mode", injectorNonlinearMode
panel = injectorNonlinearPolynomial, {1}, { injectorNonlinearMode != 0 }
dialog = testFsio, "FSIO Test"
commandButton = "FSIO#1", cmd_test_fsio1
commandButton = "FSIO#2", cmd_test_fsio2
commandButton = "FSIO#3", cmd_test_fsio3
commandButton = "FSIO#4", cmd_test_fsio4
commandButton = "FSIO#5", cmd_test_fsio5
commandButton = "FSIO#6", cmd_test_fsio6
commandButton = "FSIO#7", cmd_test_fsio7
commandButton = "FSIO#8", cmd_test_fsio8
commandButton = "FSIO#9", cmd_test_fsio9
commandButton = "FSIO#10", cmd_test_fsio10
2020-12-25 22:18:22 -08:00
commandButton = "FSIO#11", cmd_test_fsio11
commandButton = "FSIO#12", cmd_test_fsio12
commandButton = "FSIO#13", cmd_test_fsio13
commandButton = "FSIO#14", cmd_test_fsio14
commandButton = "FSIO#15", cmd_test_fsio15
commandButton = "FSIO#16", cmd_test_fsio16
dialog = testInjectors, "Injector Test"
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
commandButton = "Injector #9", cmd_test_inj9
commandButton = "Injector #10", cmd_test_inj10
commandButton = "Injector #11", cmd_test_inj11
commandButton = "Injector #12", cmd_test_inj12
dialog = testSolenoids, "TCU Solenoid Test"
commandButton = "Solenoid #1", cmd_test_sol1
commandButton = "Solenoid #2", cmd_test_sol2
commandButton = "Solenoid #3", cmd_test_sol3
commandButton = "Solenoid #4", cmd_test_sol4
commandButton = "Solenoid #5", cmd_test_sol5
commandButton = "Solenoid #6", cmd_test_sol6
dialog = injectionSettingsEast, "", yAxis
panel = testInjectors
field = ""
dialog = injectionSettingsWest, "", yAxis
panel = injectorOutputSettings
field = ""
dialog = injectionSettings, "", xAxis
panel = injectionSettingsWest
panel = injectionSettingsEast
dialog = injectorConfig, "", yAxis
topicHelp = "fuelHelp"
panel = baseInjection
panel = injChars
panel = fuelParams
panel = injectorsDeadTime
2016-07-20 20:03:00 -07:00
2018-05-08 10:32:33 -07:00
dialog = ignitionCylExtra, "Ignition Cylinder Extra Timing"
2017-03-11 17:15:27 -08:00
field = "Extra cyl #1", timing_offset_cylinder1
2017-03-12 07:28:42 -07:00
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}
dialog = multisparkDwellParams, "Delay & Dwell"
field = "Spark duration", multisparkSparkDuration, {multisparkEnable}
field = "Subsequent spark dwell", multisparkDwell, {multisparkEnable}
dialog = multisparkMain, "Configuration"
field = "Maximum engine speed", multisparkMaxRpm, {multisparkEnable}
field = "Fire sparks for this angle duration" multisparkMaxSparkingAngle, {multisparkEnable}
field = "Maximum extra spark count" multisparkMaxExtraSparkCount, {multisparkEnable}
dialog = multisparkSettings, "Multispark"
field = "#WARNING! These settings have the potential to overheat ignition components"
field = "#and cause other nasty misbehavior. Use with care, at your own risk!"
field = "#Not recommended for use on distributor or wasted spark ignition systems."
field = "Enable multiple sparks", multisparkEnable
panel = multisparkMain
panel = multisparkDwellParams
dialog = dwellSettings, "", yAxis
panel = dwellCorrection
panel = dwellVoltageCorrection
2016-07-20 20:03:00 -07:00
; Sensors->AUX1 Thermistor Sensor Setting
dialog = auxTempSensor1Sensor, "aux1 Thermistor Settings"
field = "Input channel", auxTempSensor1_adcChannel
field = "Bias resistor", auxTempSensor1_bias_resistor, {auxTempSensor1_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "#Here is three pairs of thermistor temperature and resistance."
field = "#Typical temperatures is -40 deg C, 0 deg C and 100 deg C"
2016-12-21 09:02:35 -08:00
field = ""
field = "Lowest temperature", auxTempSensor1_tempC_1, {auxTempSensor1_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "Resistance @ LT", auxTempSensor1_resistance_1, {auxTempSensor1_adcChannel != @@ADC_CHANNEL_NONE@@}
2016-12-21 09:02:35 -08:00
field = ""
field = "Middle temperature", auxTempSensor1_tempC_2, {auxTempSensor1_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "Resistance @ MT", auxTempSensor1_resistance_2, {auxTempSensor1_adcChannel != @@ADC_CHANNEL_NONE@@}
2016-12-21 09:02:35 -08:00
field = ""
field = "Highest temperature", auxTempSensor1_tempC_3, {auxTempSensor1_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "Resistance @ HT", auxTempSensor1_resistance_3, {auxTempSensor1_adcChannel != @@ADC_CHANNEL_NONE@@}
2016-12-21 09:02:35 -08:00
; Sensors->AUX2 Thermistor Sensor Setting
dialog = auxTempSensor2Sensor, "aux2 Thermistor Settings"
field = "Input channel", auxTempSensor2_adcChannel
field = "Bias resistor", auxTempSensor2_bias_resistor, {auxTempSensor2_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "#Here is three pairs of thermistor temperature and resistance."
field = "#Typical temperatures is -40 deg C, 0 deg C and 100 deg C"
2016-12-21 09:02:35 -08:00
field = ""
field = "Lowest temperature", auxTempSensor2_tempC_1, {auxTempSensor2_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "Resistance @ LT", auxTempSensor2_resistance_1, {auxTempSensor2_adcChannel != @@ADC_CHANNEL_NONE@@}
2016-12-21 09:02:35 -08:00
field = ""
field = "Middle temperature", auxTempSensor2_tempC_2, {auxTempSensor2_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "Resistance @ MT", auxTempSensor2_resistance_2, {auxTempSensor2_adcChannel != @@ADC_CHANNEL_NONE@@}
2016-12-21 09:02:35 -08:00
field = ""
field = "Highest temperature", auxTempSensor2_tempC_3, {auxTempSensor2_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "Resistance @ HT", auxTempSensor2_resistance_3, {auxTempSensor2_adcChannel != @@ADC_CHANNEL_NONE@@}
2021-02-16 08:14:24 -08:00
dialog = tpsNum1, "Throttle Body #1"
field = "Primary sensor", tps1_1AdcChannel
field = "Primary min", tpsMin, {tps1_1AdcChannel != @@ADC_CHANNEL_NONE@@}
field = "Primary max", tpsMax, {tps1_1AdcChannel != @@ADC_CHANNEL_NONE@@}
2021-02-15 19:02:28 -08:00
field = "Secondary sensor", tps1_2AdcChannel, {tps1_1AdcChannel != @@ADC_CHANNEL_NONE@@}
field = "Secondary min", tps1SecondaryMin, {tps1_2AdcChannel != @@ADC_CHANNEL_NONE@@}
field = "Secondary max", tps1SecondaryMax, {tps1_2AdcChannel != @@ADC_CHANNEL_NONE@@}
2021-02-15 19:02:28 -08:00
commandButton = "Auto Calibrate ETB 1", cmb_etb_auto_calibrate, {tps1_2AdcChannel != @@ADC_CHANNEL_NONE@@ && throttlePedalPositionAdcChannel != @@ADC_CHANNEL_NONE@@}
2021-02-16 08:14:24 -08:00
dialog = tpsNum2, "Throttle Body #2"
field = "Primary sensor", tps2_1AdcChannel
field = "Primary min", tps2Min, {tps2_1AdcChannel != @@ADC_CHANNEL_NONE@@}
field = "Primary max", tps2Max, {tps2_1AdcChannel != @@ADC_CHANNEL_NONE@@}
2021-02-15 19:02:28 -08:00
field = "Secondary sensor", tps2_2AdcChannel, {tps2_1AdcChannel != @@ADC_CHANNEL_NONE@@}
field = "Secondary min", tps2SecondaryMin, {tps2_2AdcChannel != @@ADC_CHANNEL_NONE@@}
field = "Secondary max", tps2SecondaryMax, {tps2_2AdcChannel != @@ADC_CHANNEL_NONE@@}
2021-02-15 19:02:28 -08:00
commandButton = "Auto Calibrate ETB 2", cmb_etb_auto_calibrate_2, {tps2_1AdcChannel != @@ADC_CHANNEL_NONE@@ && tps2_2AdcChannel != @@ADC_CHANNEL_NONE@@ && throttlePedalPositionAdcChannel != @@ADC_CHANNEL_NONE@@}
dialog = tpsLimits, "TPS Limits"
field = "TPS minimum valid value", tpsErrorDetectionTooLow, {tps1_1AdcChannel != @@ADC_CHANNEL_NONE@@}
field = "TPS maximum valid value", tpsErrorDetectionTooHigh, {tps1_1AdcChannel != @@ADC_CHANNEL_NONE@@}
dialog = tpsSensor, "TPS"
panel = tpsLimits
panel = tpsNum1
panel = tpsNum2
dialog = pedalSensorLeft, "Accelerator pedal"
field = "Accelerator position sensor", throttlePedalPositionAdcChannel
field = "Up voltage", throttlePedalUpVoltage
field = "Down (WOT) voltage", throttlePedalWOTVoltage
2020-01-10 22:08:41 -08:00
field = "Accelerator position 2nd sensor", throttlePedalPositionSecondAdcChannel
2021-09-13 18:02:15 -07:00
field = "Up voltage", throttlePedalSecondaryUpVoltage
2020-05-23 07:45:15 -07:00
field = "Down (WOT) voltage", throttlePedalSecondaryWOTVoltage
dialog = pedalGauges
gauge = pedalPositionGauge
gauge = rawPpsPrimaryGauge
2020-08-21 05:53:23 -07:00
gauge = rawPpsSecondaryGauge
dialog = pedalSensor, "Accelerator pedal", border
panel = pedalSensorLeft, West
panel = pedalGauges, East
2020-04-15 18:28:44 -07:00
dialog = wastegatePosConfig, "Wastegate position sensor"
field = "Input pin", wastegatePositionSensor
field = "Min (fully closed, most boost)", wastegatePositionMin
field = "Max (fully open, least boost)", wastegatePositionMax
dialog = idlePosConfig, "Idle position sensor"
field = "Input pin", idlePositionSensor
field = "Min (valve closed, low idle)", idlePositionMin
field = "Max (valve open, high idle)", idlePositionMax
dialog = wastegateIdlePosLeft, ""
panel = wastegatePosConfig
panel = idlePosConfig
dialog = wastegateIdlePosGauges, ""
gauge = rawWastegatePositionGauge, West
gauge = wastegatePosGauge, East
gauge = rawIdlePositionSensorGauge
gauge = idlePosSensGauge
dialog = wastegateIdlePos, "", border
panel = wastegateIdlePosLeft, West
panel = wastegateIdlePosGauges, East
dialog = mc33Dialog, "Low-Z injector control (MC33816)"
2020-08-02 15:33:08 -07:00
field = "MC33816 cs", mc33816_cs
field = "MC33816 rstb", mc33816_rstb
field = "MC33816 flag0", mc33816_flag0
field = "MC33816 SPI Device", mc33972spiDevice
2020-11-15 13:05:10 -08:00
field = "HPFP Valve Pin", hpfpValvePin
field = "HPFP Valve Pin Mode", hpfpValvePinMode
2020-11-09 19:07:52 -08:00
field = tempHpfpStart, tempHpfpStart
field = tempHpfpDuration, tempHpfpDuration
2020-08-02 15:33:08 -07:00
field = "Boost voltage", mc33_hvolt
field = "Boost current target", mc33_i_boost
field = "Max boost time (timeout)", mc33_t_max_boost
field = "Boost -> Peak Bypass Time", mc33_t_peak_off
field = "Peak current target", mc33_i_peak
field = "Peak time", mc33_t_peak_tot
field = "Peak -> Hold Bypass Time", mc33_t_bypass
field = "Hold current target", mc33_i_hold
field = "mc33_t_hold_off ?????", mc33_t_hold_off
field = "Maximum injection duration", mc33_t_hold_tot
2020-09-07 08:31:29 -07:00
2020-04-15 18:28:44 -07:00
; Sensor Inputs
dialog = otherSensorInputs, "Other Sensor Inputs"
2019-07-21 14:06:16 -07:00
field = "Clutch down switch", clutchDownPin
field = "Clutch down inverted", clutchDownPinInverted
field = "Clutch down mode", clutchDownPinMode
2019-07-21 14:06:16 -07:00
field = "Clutch up switch", clutchUpPin
field = "Clutch up inverted", clutchUpPinInverted
field = "Clutch up mode", clutchUpPinMode
2019-07-21 14:06:16 -07:00
field = "Throttle Up switch", throttlePedalUpPin
field = "Brake pedal switch", brakePedalPin
field = "Flex fuel sensor", flexSensorPin
dialog = fuelLevelDialog, "Fuel Level Sensor"
field = "Input channel", fuelLevelSensor
panel = fuelLevelCurve
dialog = triggerInputComparator, "Built-in Comparator Settings (Kinetis-only)"
field = "Comparator Center Point Voltage", triggerCompCenterVolt
field = "Comparator hysteresis voltage (Min)", triggerCompHystMin
field = "Comparator hysteresis voltage (Max)", triggerCompHystMax
field = "VR-sensor saturation RPM", triggerCompSensorSatRpm
2020-05-12 11:16:31 -07:00
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
2020-03-25 07:03:09 -07:00
;
; allXXX sections allows a quick overview of used I/O in order to address conflicts mostly, not really to
; configure the features.
;
dialog = allPinsSensors, "Sensors"
2019-12-25 12:39:13 -08:00
field = "Throttle pedal Position Channel", throttlePedalPositionAdcChannel
field = "Throttle pedal Position #2", throttlePedalPositionSecondAdcChannel
2019-12-25 12:39:13 -08:00
field = "Primary input channel", triggerInputPins1
field = "Secondary channel", triggerInputPins2
field = "Cam Sync/VVT input", camInputs1
2017-02-03 19:03:18 -08:00
field = "CLT ADC input", clt_adcChannel
field = "IAT ADC input", iat_adcChannel
field = "vBatt ADC input", vbattAdcChannel
field = "TPS1 ADC input", tps1_1AdcChannel
2019-06-04 20:59:27 -07:00
field = "TPS2 ADC input", tps2_1AdcChannel
2017-02-03 19:03:18 -08:00
field = "MAF ADC input", mafAdcChannel
field = "AFR ADC input", afr_hwChannel
field = "Baro ADC input", baroSensor_hwChannel
field = "MAP ADC input", map_sensor_hwChannel
field = "FuelLevelSensor", fuelLevelSensor
2017-02-05 20:04:55 -08:00
field = "Vehicle Speed Input pin", vehicleSpeedSensorInputPin
2017-02-03 19:03:18 -08:00
field = "clutchDownPin", clutchDownPin
field = "clutchUpPin", clutchUpPin
2017-05-15 02:08:17 -07:00
field = "brakePedalPin", brakePedalPin
field = "A/C Switch", acSwitch
field = "Aux Temperature #1", auxTempSensor1_adcChannel
field = "Aux Temperature #2", auxTempSensor2_adcChannel
field = "Aux Fast Analog", auxFastSensor1_adcChannel
2021-08-07 23:59:06 -07:00
dialog = allTriggerDebug, "Trigger Debug"
field = "trigger 1 debug", triggerInputDebugPins1
field = "trigger 2 debug", triggerInputDebugPins2
field = "trigger 3 debug", triggerInputDebugPins3
field = "cam 1 debug", camInputsDebug1
field = "cam 2 debug", camInputsDebug2
field = "cam 3 debug", camInputsDebug3
field = "cam 4 debug", camInputsDebug4
dialog = allPinsMC33, "MC33816"
field = "Chip Select", mc33816_cs
field = rstb, mc33816_rstb
field = flag0, mc33816_flag0
field = mc33816_driven, mc33816_driven
field = mc33816spiDevice, mc33816spiDevice
2020-11-02 16:28:46 -08:00
field = hpfpValcePin, hpfpValvePin
2017-02-03 19:03:18 -08:00
dialog = allPins1_1
2020-04-14 16:09:26 -07:00
field = "trigger stimulator pin #1", triggerSimulatorPins1
field = "trigger stimulator pin #2", triggerSimulatorPins2
field = "trigger stimulator pin #2", triggerSimulatorPins3
field = "Warning Led", warningLedPin
field = "tle6240_cs", tle6240_cs
field = "tle6240 SPI", tle6240spiDevice
2020-05-12 11:16:31 -07:00
panel = joystickPanel
dialog = allPins1_2
field = "Tachometer output Pin", tachOutputPin
2017-02-03 19:03:18 -08:00
field = "O2 heater pin", o2heaterPin
field = "Idle Solenoid Pin", idle_solenoidPin
field = "Second Idle Solenoid Pin", secondSolenoidPin
2017-02-03 19:03:18 -08:00
field = "Idle Stepper Dir", idle_stepperDirectionPin
field = "Idle Stepper Step", idle_stepperStepPin
field = "Idle Stepper Enable", stepperEnablePin
field = "Fuel Pump Pin", fuelPumpPin
2019-12-14 06:33:07 -08:00
field = "ETB#1 Dir #1", etbIo1_directionPin1 @@if_ts_show_etb_pins
field = "ETB#1 Dir #2", etbIo1_directionPin2 @@if_ts_show_etb_pins
2021-06-05 13:40:16 -07:00
field = "ETB#1 Control", etbIo1_controlPin @@if_ts_show_etb_pins
field = "ETB#1 Disable", etbIo1_disablePin @@if_ts_show_etb_pins
2019-12-14 06:33:07 -08:00
field = "ETB#2 Dir #1", etbIo2_directionPin1 @@if_ts_show_etb_pins
field = "ETB#2 Dir #2", etbIo2_directionPin2 @@if_ts_show_etb_pins
2021-06-05 13:40:16 -07:00
field = "ETB#2 Control", etbIo2_controlPin @@if_ts_show_etb_pins
field = "ETB#2 Disable", etbIo2_disablePin @@if_ts_show_etb_pins
field = "SD CS Pin", sdCardCsPin @@if_ts_show_sd_card
2019-08-18 11:11:15 -07:00
field = "MIL / Check Engine Pin", malfunctionIndicatorPin
2018-01-26 19:47:09 -08:00
field = "test557pin", test557pin
field = "Fan Pin", fanPin
2020-06-27 16:39:09 -07:00
field = "A/C Relay", acRelayPin
field = "Main Relay Pin", mainRelayPin
2020-03-24 21:58:59 -07:00
field = "Starter Relay Pin", starterRelayDisablePin
2017-02-03 19:03:18 -08:00
dialog = allPins2_1
2017-02-03 20:04:50 -08:00
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 = "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
dialog = allPins2_2
field = "Ignition Pin 1", ignitionPins1
2017-02-03 20:04:50 -08:00
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
2017-11-27 18:49:58 -08:00
field = "output #1", fsioOutputPins1
field = "output #2", fsioOutputPins2
field = "output #3", fsioOutputPins3
field = "output #4", fsioOutputPins4
field = "output #5", fsioOutputPins5
field = "output #6", fsioOutputPins6
2017-02-05 20:04:55 -08:00
dialog = allPins2_3
2020-03-29 14:08:29 -07:00
field = "LCD E pin", HD44780_e
field = "LCD D4 pin", HD44780_db4
field = "LCD D5 pin", HD44780_db5
field = "LCD D6 pin", HD44780_db6
field = "LCD D7 pin", HD44780_db7
field = "Debug Trigger Sync", debugTriggerSync
2021-08-07 23:59:06 -07:00
panel = allTriggerDebug
panel = allPinsMC33
dialog = allPins1_3
2019-02-02 17:32:42 -08:00
field = "FSIO ADC #1", fsioAdc1
field = "FSIO ADC #2", fsioAdc2
field = "FSIO ADC #3", fsioAdc3
field = "FSIO ADC #4", fsioAdc4
2019-06-06 16:20:00 -07:00
field = "GPS RX", gps_rx_pin @@if_ts_show_gps
field = "GPS TX", gps_tx_pin @@if_ts_show_gps
field = "CAN RX pin", canRxPin @@if_ts_show_can_pins
field = "CAN TX pin", canTxPin @@if_ts_show_can_pins
field = "SPI1 MOSI", spi1mosiPin, {is_enabled_spi_1 == 1} @@if_ts_show_spi
field = "SPI1 MISO", spi1misoPin, {is_enabled_spi_1 == 1} @@if_ts_show_spi
field = "SPI1 SCK", spi1sckPin, {is_enabled_spi_1 == 1} @@if_ts_show_spi
field = "SPI2 MOSI", spi2mosiPin, {is_enabled_spi_2 == 1} @@if_ts_show_spi
field = "SPI2 MISO", spi2misoPin, {is_enabled_spi_2 == 1} @@if_ts_show_spi
field = "SPI2 SCK", spi2sckPin, {is_enabled_spi_2 == 1} @@if_ts_show_spi
field = "SPI3 MOSI", spi3mosiPin, {is_enabled_spi_3 == 1} @@if_ts_show_spi
field = "SPI3 MISO", spi3misoPin, {is_enabled_spi_3 == 1} @@if_ts_show_spi
field = "SPI3 SCK", spi3sckPin, {is_enabled_spi_3 == 1} @@if_ts_show_spi
2018-06-17 16:05:54 -07:00
field = "hip9011CsPin", hip9011CsPin
field = "LIS302DLCsPin", LIS302DLCsPin
2019-08-18 11:11:15 -07:00
field = "MIL / Check Engine", malfunctionIndicatorPin
2019-01-04 19:09:38 -08:00
field = "Saab CDM knock", cdmInputPin
2020-09-07 08:31:29 -07:00
field = "DRV8860 CS", drv8860_cs
field = "DRV8860 CS Mode", drv8860_csPinMode
field = "DRV8860 MISO pin", drv8860_miso
field = "DRV8860 SPI", drv8860spiDevice
2019-01-26 08:33:41 -08:00
field = "comm status light", communicationLedPin
field = "running status light", runningLedPin
dialog = allPins3_1
panel = allPinsSensors
dialog = allPins3_2
field = "servo#1", servoOutputPins1
field = "servo#2", servoOutputPins2
field = "servo#3", servoOutputPins3
field = "servo#4", servoOutputPins4
field = "servo#5", servoOutputPins5
2021-02-10 17:21:05 -08:00
field = "VVT Pin #1", auxPidPins1
field = "VVT Pin #2", auxPidPins2
field = "VVT Pin #3", auxPidPins3
field = "VVT Pin #4", auxPidPins4
field = "Aux Valve #1", auxValves1
field = "Aux Valve #2", auxValves2
field = "TLE8888 Chip Select", tle8888_cs @@if_ts_show_spi
field = "TLE 8888 spi", tle8888spiDevice @@if_ts_show_spi
2020-04-19 12:04:59 -07:00
field = "AUX Serial TX", auxSerialTxPin
field = "AUX Serial RX", auxSerialRxPin
2020-12-23 13:51:15 -08:00
field = "Start/Stop Button", startStopButtonPin
field = "Upshift Pin", tcuUpshiftButtonPin
field = "Downshift Pin", tcuDownshiftButtonPin
2017-02-05 20:04:55 -08:00
dialog = allPins3_1_and_2, "All Pins 3/3", xAxis
panel = allPins3_1
panel = allPins3_2
2017-02-03 19:03:18 -08:00
dialog = allPins1_1_and_2, "", xAxis
panel = allPins1_1
panel = allPins1_2
2017-02-03 19:03:18 -08:00
dialog = allPins1, "All Pins 1/3", xAxis
panel = allPins1_1_and_2
panel = allPins1_3
dialog = allPins2_1_and_2, "", xAxis
panel = allPins2_1
panel = allPins2_2
dialog = allPins2, "All Pins 2/3", xAxis
panel = allPins2_1_and_2
panel = allPins2_3
2017-02-05 20:04:55 -08:00
2017-02-03 19:03:18 -08:00
; Sensors->CLT sensor
dialog = clt_thermistor, "CLT sensor"
field = "Input channel", clt_adcChannel
field = "Bias resistor", clt_bias_resistor, {clt_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "#Input three pairs of thermistor temperature and resistance."
field = "#Typical temperatures are -40 deg C, 0 deg C and 100 deg C"
2016-07-20 20:03:00 -07:00
field = ""
field = "Lowest temperature", clt_tempC_1, {clt_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "Resistance @ LT", clt_resistance_1, {clt_adcChannel != @@ADC_CHANNEL_NONE@@}
2016-07-20 20:03:00 -07:00
field = ""
field = "Middle temperature", clt_tempC_2, {clt_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "Resistance @ MT", clt_resistance_2, {clt_adcChannel != @@ADC_CHANNEL_NONE@@}
2016-07-20 20:03:00 -07:00
field = ""
field = "Highest temperature", clt_tempC_3, {clt_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "Resistance @ HT", clt_resistance_3, {clt_adcChannel != @@ADC_CHANNEL_NONE@@}
field = ""
field = "Linear characteristic", useLinearCltSensor, {clt_adcChannel != @@ADC_CHANNEL_NONE@@}
2016-07-20 20:03:00 -07:00
dialog = cltGauges
gauge = CLTGauge
gauge = rawCltGauge
dialog = cltSensor, "CLT Sensor", border
panel = clt_thermistor, West
panel = cltGauges, East
; Sensors->IAT sensor
dialog = iat_thermistor, "IAT sensor"
field = "Input channel", iat_adcChannel
field = "Bias resistor", iat_bias_resistor, {iat_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "#Input three pairs of thermistor temperature and resistance."
field = "#Typical temperatures are -40 deg C, 0 deg C and 100 deg C"
2016-07-20 20:03:00 -07:00
field = ""
field = "Lowest temperature", iat_tempC_1, {iat_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "Resistance @ LT", iat_resistance_1, {iat_adcChannel != @@ADC_CHANNEL_NONE@@}
2016-07-20 20:03:00 -07:00
field = ""
field = "Middle temperature", iat_tempC_2, {iat_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "Resistance @ MT", iat_resistance_2, {iat_adcChannel != @@ADC_CHANNEL_NONE@@}
2016-07-20 20:03:00 -07:00
field = ""
field = "Highest temperature", iat_tempC_3, {iat_adcChannel != @@ADC_CHANNEL_NONE@@}
field = "Resistance @ HT", iat_resistance_3, {iat_adcChannel != @@ADC_CHANNEL_NONE@@}
field = ""
field = "Linear characteristic", useLinearIatSensor, {iat_adcChannel != @@ADC_CHANNEL_NONE@@}
2016-07-20 20:03:00 -07:00
dialog = iatGauges
gauge = IATGauge
gauge = rawIatGauge
dialog = iatSensor, "IAT Sensor", border
panel = iat_thermistor, West
panel = iatGauges, East
2020-09-07 08:31:29 -07:00
; Sensors->Oil pressure sensor
dialog = oilp_settings, "Oil Pressure Sensor"
field = "Oil Pressure ADC input", oilPressure_hwChannel
field = "low voltage", oilPressure_v1, {oilPressure_hwChannel != @@ADC_CHANNEL_NONE@@}
field = "low pressure", oilPressure_value1, {oilPressure_hwChannel != @@ADC_CHANNEL_NONE@@}
field = "high voltage", oilPressure_v2, {oilPressure_hwChannel != @@ADC_CHANNEL_NONE@@}
field = "high pressure", oilPressure_value2, {oilPressure_hwChannel != @@ADC_CHANNEL_NONE@@}
dialog = oilPressureGauges
gauge = OilPressGauge
gauge = rawOilPressureGauge
dialog = oilPressureSensor, "", border
panel = oilp_settings, West
panel = oilPressureGauges, East
dialog = fuelp_settings, "Fuel Pressure Sensor"
field = "Fuel low pressure ADC input", lowPressureFuel_hwChannel
field = "low voltage", lowPressureFuel_v1, {lowPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
field = "low pressure", lowPressureFuel_value1, {lowPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
field = "high voltage", lowPressureFuel_v2, {lowPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
field = "high pressure", lowPressureFuel_value2, {lowPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
field = "Fuel high pressure ADC input", highPressureFuel_hwChannel
field = "low voltage", highPressureFuel_v1, {highPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
field = "low pressure", highPressureFuel_value1, {highPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
field = "high voltage", highPressureFuel_v2, {highPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
field = "high pressure", highPressureFuel_value2, {highPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
dialog = fuelPressureGauges
gauge = lowFuelPressureGauge
gauge = rawLowFuelPressureGauge
gauge = highFuelPressureGauge
gauge = rawHighFuelPressureGauge
dialog = fuelPressureSensor, "", border
panel = fuelp_settings, West
panel = fuelPressureGauges, East
; Sensors->MAP sensor
dialog = mapSensorAnalog, "MAP sensor", yAxis
field = "MAP ADC input", map_sensor_hwChannel
field = "MAP type", map_sensor_type, { map_sensor_hwChannel != @@ADC_CHANNEL_NONE@@ }
field = "MAP value low point", map_sensor_lowValue, { map_sensor_hwChannel != @@ADC_CHANNEL_NONE@@ && map_sensor_type == 0 }
field = "MAP voltage low point", mapLowValueVoltage, { map_sensor_hwChannel != @@ADC_CHANNEL_NONE@@ && map_sensor_type == 0 }
field = "MAP value high point", map_sensor_highValue,{ map_sensor_hwChannel != @@ADC_CHANNEL_NONE@@ && map_sensor_type == 0 }
field = "MAP voltage high value", mapHighValueVoltage, { map_sensor_hwChannel != @@ADC_CHANNEL_NONE@@ && map_sensor_type == 0 }
dialog = mapCommon, "MAP common settings"
field = "Low value threshold", mapErrorDetectionTooLow
field = "High value threshold", mapErrorDetectionTooHigh
field = ""
field = "Measure Map Only In One Cylinder", measureMapOnlyInOneCylinder
field = "Minimum MAP samples", mapMinBufferLength
dialog = mapSettings, "", yAxis
panel = mapCommon
panel = mapSensorAnalog
dialog = baroSettings, "Baro sensor"
field = "Baro ADC input", baroSensor_hwChannel
2020-07-26 11:03:31 -07:00
field = baroSensor_lowValue, baroSensor_lowValue, {baroSensor_hwChannel != @@ADC_CHANNEL_NONE@@}
field = baroSensor_highValue, baroSensor_highValue, {baroSensor_hwChannel != @@ADC_CHANNEL_NONE@@}
field = baroSensor_type, baroSensor_type, {baroSensor_hwChannel != @@ADC_CHANNEL_NONE@@}
field = "LPS25 Baro SCL", lps25BaroSensorScl
field = "LPS25 Baro SDA", lps25BaroSensorSda
dialog = mapCurves, "MAP sampling", yAxis
field = "isMapAveragingEnabled", isMapAveragingEnabled
panel = map_samplingAngleCurve
panel = map_samplingWindowCurve
dialog = mafSettings, "MAF sensor", yAxis
field = "MAF ADC input", mafAdcChannel
2016-07-20 20:03:00 -07:00
; Sensors->EGO sensor
dialog = egoSettings_sensor, "EGO sensor"
2017-11-07 05:41:19 -08:00
field = "Type", afr_type
2017-10-29 17:29:02 -07:00
; todo: only use these values for custom!
2016-07-20 20:03:00 -07:00
field = "low voltage", afr_v1
field = "low value", afr_value1
field = "high voltage", afr_v2
field = "high value", afr_value2
field = "Correction", egoValueShift
2016-07-20 20:03:00 -07:00
dialog = egoSettings_IO, "EGO Sensor I/O"
field = "Input channel", afr_hwChannel
field = "Heater pin", o2heaterPin
2016-07-20 20:03:00 -07:00
dialog = egoSettings, "", yAxis
field = "Enable CAN Wideband", enableAemXSeries, { canReadEnabled }
field = "Enable Innovate LC-2 Serial", enableInnovateLC2, { auxSerialRxPin && auxSerialTxPin }
2020-04-19 12:04:59 -07:00
panel = egoSettings_IO
2020-07-26 11:03:31 -07:00
panel = egoSettings_sensor, {afr_hwChannel != @@ADC_CHANNEL_NONE@@ && enableAemXSeries == 0 && !auxSerialRxPin && !auxSerialTxPin}
2016-07-20 20:03:00 -07:00
; 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
2018-01-07 09:11:49 -08:00
dialog = idleSolenoid, "Solenoid"
2016-07-20 20:03:00 -07:00
field = "Idle Solenoid Pin Mode", idle_solenoidPinMode, !useStepperIdle
field = "Idle Solenoid Pin", idle_solenoidPin, !useStepperIdle
field = "Second Idle Solenoid Pin", secondSolenoidPin, { !useStepperIdle && isDoubleSolenoidIdle }
2016-07-20 20:03:00 -07:00
field = "Idle Solenoid Frequency", idle_solenoidFrequency, !useStepperIdle
2020-03-10 11:31:00 -07:00
dialog = hbridgeHardware, "H-Bridge Hardware"
field = "PWM Frequency", etbFreq
field = "Two-wire mode", etb_use_two_wires
field = "No1 Direction #1", etbIo1_directionPin1
field = "No1 Direction #2", etbIo1_directionPin2
field = "No1 Control", etbIo1_controlPin
field = "No1 Disable", etbIo1_disablePin
2020-03-10 11:31:00 -07:00
field = "No2 Direction #1", etbIo2_directionPin1
field = "No2 Direction #2", etbIo2_directionPin2
field = "No2 Control", etbIo2_controlPin
field = "No2 Disable", etbIo2_disablePin
2020-03-10 11:31:00 -07:00
dialog = idleStepperHw, "Stepper Hardware"
field = "Idle Stepper Step Pin", idle_stepperStepPin
field = "Idle Stepper Dir Pin", idle_stepperDirectionPin
field = "Idle Stepper Enable Pin", stepperEnablePin
field = "Idle Stepper Enable Pin Mode", stepperEnablePinMode
2018-01-07 09:11:49 -08:00
dialog = idleStepper, "Stepper"
2021-09-26 14:52:29 -07:00
field = "Drive stepper with dual H bridges", useHbridgesToDriveIdleStepper, useStepperIdle
2016-07-20 20:03:00 -07:00
field = "Stepper reaction time", idleStepperReactionTime, useStepperIdle
field = "Stepper total steps", idleStepperTotalSteps, useStepperIdle
field = "Stepper parking extra steps, %", stepperParkingExtraSteps, useStepperIdle
field = "Force parking every restart", stepperForceParkingEveryRestart, useStepperIdle
2021-09-26 14:52:29 -07:00
panel = idleStepperHw, { useStepperIdle && !useHbridgesToDriveIdleStepper }
; todo: reminder that enable condition has to match in both usages of hbridgeHardware due to TS defect?
panel = hbridgeHardware, { etbFunctions1 != @@ETB_FUNCTION_NONE@@ || etbFunctions2 != @@ETB_FUNCTION_NONE@@ || (useStepperIdle && useHbridgesToDriveIdleStepper) }
2020-03-10 11:31:00 -07:00
2018-01-07 09:11:49 -08:00
dialog = idleHwType, "Idle Valve Hardware", border
2016-07-20 20:03:00 -07:00
panel = idleSolenoid, West
panel = idleStepper, East
2020-03-10 11:31:00 -07:00
dialog = idlehw, "", yAxis
2020-03-10 11:31:00 -07:00
field = "!ECU reboot needed to apply these settings"
field = "Use Stepper", useStepperIdle
field = "Double Solenoid Mode", isDoubleSolenoidIdle
field = "Use electronic throttle for idle", useETBforIdleControl, { throttlePedalPositionAdcChannel != @@ADC_CHANNEL_NONE@@ }
field = "Electronic throttle idle range", etbIdleThrottleRange, { useETBforIdleControl == 1 }
panel = idleHwType
dialog = idlePidSettings, "Closed Loop Idle"
2018-01-07 09:11:49 -08:00
field = "P-factor", idleRpmPid_pFactor
field = "I-factor", idleRpmPid_iFactor
field = "derivativeFilterLoss", idle_derivativeFilterLoss
field = "antiwindupFreq", idle_antiwindupFreq
2018-01-07 09:11:49 -08:00
field = "D-factor", idleRpmPid_dFactor
field = "Offset", idleRpmPid_offset
field = "Min", idleRpmPid_minValue
field = "Max", idleRpmPid_maxValue
field = "iTerm Min", idlerpmpid_iTermMin
field = "iTerm Max", idlerpmpid_iTermMax
field = "PID Extra for low RPM", pidExtraForLowRpm
field = idleIncrementalPidCic, idleIncrementalPidCic
field = "use Cic Pid", useCicPidForIdle
field = "Use IAC PID Multiplier Table", useIacPidMultTable
dialog = idleOpenLoop, "Open Loop Idle"
slider = "Open loop base position", manIdlePosition, horizontal
field = "A/C adder", acIdleExtraOffset
field = "A/C target adder", acIdleRpmBump
field = "Fan #1 adder", fan1ExtraIdle
field = "Fan #2 adder", fan2ExtraIdle
field = "Extra idle air if throttle pressed", iacByTpsTaper
dialog = idleGating, "Idle Detection Thresholds"
field = "TPS threshold", idlePidDeactivationTpsThreshold
field = "RPM upper limit", idlePidRpmUpperLimit
field = "RPM deadzone", idlePidRpmDeadZone
field = "Max vehicle speed", maxIdleVss
dialog = idleExtra, "Extra Idle Features"
field = "Use idle ignition table", useSeparateAdvanceForIdle
field = "Use idle VE table", useSeparateVeForIdle
field = "Use coasting idle table", useIacTableForCoasting, {idleMode == 0}
2019-09-10 20:03:55 -07:00
field = useInstantRpmForIdle, useInstantRpmForIdle
field = "Detailed status in console", isVerboseIAC
dialog = idleSettings, "", yAxis
field = "Idle control mode", idleMode
field = "! Solenoid idle control is disabled at zero RPM"
2021-01-02 14:32:33 -08:00
panel = idleGating
panel = idleOpenLoop
2018-01-07 09:11:49 -08:00
panel = idlePidSettings, { idleMode == 0}
panel = idleExtra
2016-07-20 20:03:00 -07:00
dialog = idleTimingPidCorrDialog, "", yAxis
field = ""
field = "Enable closed loop idle ignition timing", useIdleTimingPidControl
field = "RPM deadzone", idleTimingPidDeadZone
field = ""
field = "#Gain is in degrees advance per rpm away from target"
field = "#A good starting point is 0.1 = 10 deg per 100 rpm"
field = "Proportional gain", idleTimingPid_pFactor, {useIdleTimingPidControl == 1}
field = "Derivative gain", idleTimingPid_dFactor, {useIdleTimingPidControl == 1}
field = ""
field = "Min adjustment (retard)", idleTimingPid_minValue, {useIdleTimingPidControl == 1}
field = "Max adjustment (advance)", idleTimingPid_maxValue, {useIdleTimingPidControl == 1}
field = ""
field = "#Use debug mode 'Timing' to view idle timing adjustment"
2016-07-20 20:03:00 -07:00
; Engine->Fan Settings
dialog = fan1Settings, "Fan 1"
field = "Pin", fanPin
field = "Pin mode", fanPinMode
field = "On temperature", fanOnTemperature
field = "Off temperature", fanOffTemperature
field = "Enable with AC", enableFan1WithAc
field = "Disable when engine stopped", disableFan1WhenStopped
dialog = fan2Settings, "Fan 2"
field = "Pin", fan2Pin
field = "Pin mode", fan2PinMode
field = "On temperature", fan2OnTemperature
field = "Off temperature", fan2OffTemperature
field = "Enable with AC", enableFan2WithAc
field = "Disable when engine stopped", disableFan2WhenStopped
dialog = fanTest, "", xAxis
commandButton = "Test Fan 1", cmd_test_fan_1
commandButton = "Test Fan 2", cmd_test_fan_2
indicatorPanel = fanIndicators, 2
indicator = { ind_fan }, "fan 1 off", "fan 1 on", white, black, green, black
indicator = { ind_fan_2 }, "fan 2 off", "fan 2 on", white, black, green, black
dialog = acSettings, "A/C Settings"
field = "A/C switch", acSwitch
field = "A/C switch mode", acSwitchMode
2020-06-27 16:37:45 -07:00
field = "A/C Relay", acRelayPin
field = "A/C Relay Mode", acRelayPinMode
field = "Max RPM", maxAcRpm
field = "Max CLT", maxAcClt
field = "Max TPS", maxAcTps
dialog = fanSetting, "Fan Settings"
panel = fan1Settings
panel = fan2Settings
panel = fanTest
panel = fanIndicators
dialog = fuelPump, "Fuel Pump"
field = "Pin", fuelPumpPin
field = "Pin mode", fuelPumpPinMode
field = "Prime duration", startUpFuelPumpDuration
; Controller->Actuator Outputs
dialog = mainRelayDialog, "Main relay output"
field = "microRusEFI main relay control is hard wired on pin #29"@@if_ts_show_main_relay_microRusEFI_message
field = "Pin", mainRelayPin@@if_ts_show_main_relay
field = "Pin mode", mainRelayPinMode@@if_ts_show_main_relay
dialog = starterRelay, "Starter relay output"
2020-03-24 21:58:59 -07:00
field = "Pin", starterRelayDisablePin
field = "Pin mode", starterRelayDisablePinMode
dialog = statusLeds, "Status LEDs"
field = "Running status LED", runningLedPin
2020-05-11 20:23:04 -07:00
field = "TS communication status LED", communicationLedPin
field = "Warning LED", warningLedPin
field = "Trigger error LED", triggerErrorPin
field = "Debug Trigger Sync", debugTriggerSync
2016-07-20 20:03:00 -07:00
; Engine->MIL Settings
dialog = malfunction, "Check Engine Settings"
field = "Pin", malfunctionIndicatorPin
field = "Pin mode", malfunctionIndicatorPinMode
2016-09-08 13:02:17 -07:00
field = "Warning Period", warningPeriod
2016-07-20 20:03:00 -07:00
dialog = softwareKnockCfg, "Configuration"
field = "Enable", enableSoftwareKnock
2021-01-03 14:58:00 -08:00
field = "Cylinder Bore", cylinderBore
field = "Knock filter frequency", knockBandCustom, {enableSoftwareKnock}
field = "knockDetectionWindowStart",knockDetectionWindowStart, {enableSoftwareKnock}
field = "knockSamplingDuration", knockSamplingDuration, {enableSoftwareKnock}
field = ""
field = "Select the nearest sensor for each cylinder"
field = "Cylinder 1", knockBankCyl1, {enableSoftwareKnock}
field = "Cylinder 2", knockBankCyl2, {enableSoftwareKnock && cylindersCount >= 2}
field = "Cylinder 3", knockBankCyl3, {enableSoftwareKnock && cylindersCount >= 3}
field = "Cylinder 4", knockBankCyl4, {enableSoftwareKnock && cylindersCount >= 4}
field = "Cylinder 5", knockBankCyl5, {enableSoftwareKnock && cylindersCount >= 5}
field = "Cylinder 6", knockBankCyl6, {enableSoftwareKnock && cylindersCount >= 6}
field = "Cylinder 7", knockBankCyl7, {enableSoftwareKnock && cylindersCount >= 7}
field = "Cylinder 8", knockBankCyl8, {enableSoftwareKnock && cylindersCount >= 8}
field = "Cylinder 9", knockBankCyl9, {enableSoftwareKnock && cylindersCount >= 9}
field = "Cylinder 10", knockBankCyl10, {enableSoftwareKnock && cylindersCount >= 10}
field = "Cylinder 11", knockBankCyl11, {enableSoftwareKnock && cylindersCount >= 11}
field = "Cylinder 12", knockBankCyl12, {enableSoftwareKnock && cylindersCount >= 12}
dialog = softwareKnock, "Software Knock", border
panel = softwareKnockCfg, West
panel = swKnockThresholdCurve, Center
2016-07-20 20:03:00 -07:00
; Engine->hip9011 Settings
dialog = hipFunction, "HIP9011 Settings (knock decoder)"
field = "Enabled", isHip9011Enabled
field = "!ECU reboot needed to apply these settings"
2017-01-28 16:03:06 -08:00
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 = "knockDetectionWindowStart", knockDetectionWindowStart, {isHip9011Enabled == 1}
field = "knockDetectionWindowEnd", knockDetectionWindowEnd, {isHip9011Enabled == 1}
2018-05-20 10:22:32 -07:00
field = "cylinder bore (mm)", cylinderBore, {isHip9011Enabled == 1}
2017-01-28 16:03:06 -08:00
field = "Band Freq override", knockBandCustom, {isHip9011Enabled == 1}
field = "SPI device", hip9011SpiDevice, {isHip9011Enabled == 1}
2016-07-20 20:03:00 -07:00
panel = knockThresholdCurve
; Engine->cj125 Settings
dialog = cj125Function, "CJ125 Settings (wbo decoder)"
field = "Enabled", isCJ125Enabled
2020-05-01 16:42:09 -07:00
commandButton = "Calibrate", cmd_cj125_calibrate
field = "Using 4.9 sensor?", cj125isLsu49
2016-07-20 20:03:00 -07:00
field = "!ECU reboot needed to apply these settings"
2017-02-11 23:02:24 -08:00
field = "ChipSelect pin", cj125CsPin, {isCJ125Enabled == 1}
field = "ChipSelect mode", cj125CsPinMode, {isCJ125Enabled == 1}
2018-06-16 05:17:54 -07:00
field = "!See also 'Controller-SPI setting'"
2016-07-20 20:03:00 -07:00
field = "SPI device", cj125SpiDevice
2018-01-22 14:46:34 -08:00
field = "Heater pin", wboHeaterPin, {isCJ125Enabled == 1}
2017-02-11 23:02:24 -08:00
field = "UA input", cj125ua, {isCJ125Enabled == 1}
field = "UR input", cj125ur, {isCJ125Enabled == 1}
2018-06-17 12:07:42 -07:00
field = "Is UA input divided?" cj125isUaDivided, {isCJ125Enabled == 1}
field = "Is UR input divided?" cj125isUrDivided, {isCJ125Enabled == 1}
2016-07-20 20:03:00 -07:00
dialog = spiFunction, "SPI settings"
field = "!ECU reboot needed to apply these settings"
2017-01-28 17:03:19 -08:00
field = "SPI1 enable", is_enabled_spi_1
field = "SPI1 MOSI", spi1mosiPin, {is_enabled_spi_1 == 1}
field = "SPI1mosi mode", spi1MosiMode, {is_enabled_spi_1 == 1}
2017-01-28 17:03:19 -08:00
field = "SPI1 MISO", spi1misoPin, {is_enabled_spi_1 == 1}
field = "SPI1miso mode", spi1MisoMode, {is_enabled_spi_1 == 1}
2017-01-28 17:03:19 -08:00
field = "SPI1 SCK", spi1sckPin, {is_enabled_spi_1 == 1}
field = "SPI1sck mode", spi1SckMode, {is_enabled_spi_1 == 1}
2017-01-28 17:03:19 -08:00
field = "SPI2 enable", is_enabled_spi_2
field = "SPI2 MOSI", spi2mosiPin, {is_enabled_spi_2 == 1}
field = "SPI2mosi mode", spi2MosiMode, {is_enabled_spi_2 == 1}
2017-01-28 17:03:19 -08:00
field = "SPI2 MISO", spi2misoPin, {is_enabled_spi_2 == 1}
field = "SPI2miso mode", spi2MisoMode, {is_enabled_spi_2 == 1}
2017-01-28 17:03:19 -08:00
field = "SPI2 SCK", spi2sckPin, {is_enabled_spi_2 == 1}
field = "SPI2sck mode", spi2SckMode, {is_enabled_spi_2 == 1}
2017-01-28 17:03:19 -08:00
field = "SPI3 enable", is_enabled_spi_3
field = "SPI3 MOSI", spi3mosiPin, {is_enabled_spi_3 == 1}
field = "SPI3mosi mode", spi3MosiMode, {is_enabled_spi_3 == 1}
2017-01-28 17:03:19 -08:00
field = "SPI3 MISO", spi3misoPin, {is_enabled_spi_3 == 1}
field = "SPI3miso mode", spi3MisoMode, {is_enabled_spi_3 == 1}
2017-01-28 17:03:19 -08:00
field = "SPI3 SCK", spi3sckPin, {is_enabled_spi_3 == 1}
field = "SPI3sck mode", spi3SckMode, {is_enabled_spi_3 == 1}
2018-06-17 16:05:54 -07:00
field = "LIS302DLCsPin", LIS302DLCsPin
2016-07-20 20:03:00 -07:00
dialog = stftPartitioning, "Region Configuration"
field = "Idle region RPM", stft_maxIdleRegionRpm
field = "Overrun region load", stft_maxOverrunLoad
field = "Power region load", stft_minPowerLoad
dialog = stftPartitionSettingsMain, "Main Region", xAxis
field = "Time const", stft_cellCfgs4_timeConstant
field = "Max add", stft_cellCfgs4_maxAdd
field = "Max remove", stft_cellCfgs4_maxRemove
dialog = stftPartitionSettingsIdle, "Idle Region", xAxis
field = "Time const", stft_cellCfgs1_timeConstant
field = "Max add", stft_cellCfgs1_maxAdd
field = "Max remove", stft_cellCfgs1_maxRemove
dialog = stftPartitionSettingsPower, "Power Region", xAxis
field = "Time const", stft_cellCfgs3_timeConstant
field = "Max add", stft_cellCfgs3_maxAdd
field = "Max remove", stft_cellCfgs3_maxRemove
dialog = stftPartitionSettingsOverrun, "Overrun Region", xAxis
field = "Time const", stft_cellCfgs2_timeConstant
field = "Max add", stft_cellCfgs2_maxAdd
field = "Max remove", stft_cellCfgs2_maxRemove
dialog = fuelClosedLoopDialog, "Closed loop fuel correction"
2017-01-22 13:04:09 -08:00
field = "Enabled", fuelClosedLoopCorrectionEnabled
field = "Startup delay" stft_startupDelay, {fuelClosedLoopCorrectionEnabled == 1}
field = "Minimum CLT for correction", stft_minClt, {fuelClosedLoopCorrectionEnabled == 1}
field = "Minimum AFR for correction", stft_minAfr, {fuelClosedLoopCorrectionEnabled == 1}
field = "Maximum AFR for correction", stft_maxAfr, {fuelClosedLoopCorrectionEnabled == 1}
field = "Adjustment deadband", stft_deadband, {fuelClosedLoopCorrectionEnabled == 1}
field = "Ignore error magnitude", stftIgnoreErrorMagnitude, {fuelClosedLoopCorrectionEnabled == 1}
panel = stftPartitioning, {fuelClosedLoopCorrectionEnabled == 1}
panel = stftPartitionSettingsMain, {fuelClosedLoopCorrectionEnabled == 1}
panel = stftPartitionSettingsIdle, {fuelClosedLoopCorrectionEnabled == 1}
panel = stftPartitionSettingsPower, {fuelClosedLoopCorrectionEnabled == 1}
panel = stftPartitionSettingsOverrun, {fuelClosedLoopCorrectionEnabled == 1}
2017-01-22 13:04:09 -08:00
dialog = vvtPidDialog0, "Configuration"
field = "VVT solenoid bank 1 intake", auxPidPins1
field = "VVT solenoid bank 1 exhaust", auxPidPins2
field = "VVT solenoid bank 2 intake", auxPidPins3
field = "VVT solenoid bank 2 exhaust", auxPidPins4
field = "PWM frequency", auxPidFrequency1, {auxPidPins1 != 0 || auxPidPins2 != 0}
2021-02-10 18:46:52 -08:00
field = "Detailed status in console", isVerboseAuxPid1, {auxPidPins1 != 0 || auxPidPins2 != 0}
2021-02-10 17:21:05 -08:00
dialog = vvtPidDialog1, "Intake PID"
2021-02-10 17:21:05 -08:00
field = "offset", auxPid1_offset, {auxPidPins1 != 0}
field = "P factor", auxPid1_pFactor, {auxPidPins1 != 0}
field = "I factor", auxPid1_iFactor, {auxPidPins1 != 0}
field = "D factor", auxPid1_dFactor, {auxPidPins1 != 0}
field = "Min", auxPid1_minValue, {auxPidPins1 != 0}
field = "Max", auxPid1_maxValue, {auxPidPins1 != 0}
dialog = vvtPidDialog2, "Exhaust PID"
2021-02-10 17:21:05 -08:00
field = "offset", auxPid2_offset, {auxPidPins2 != 0}
field = "P factor", auxPid2_pFactor, {auxPidPins2 != 0}
field = "I factor", auxPid2_iFactor, {auxPidPins2 != 0}
field = "D factor", auxPid2_dFactor, {auxPidPins2 != 0}
field = "Min", auxPid2_minValue, {auxPidPins2 != 0}
field = "Max", auxPid2_maxValue, {auxPidPins2 != 0}
dialog = vvtPidDialog, "VVT Configuration & PID", border
2021-02-10 17:21:05 -08:00
panel = vvtPidDialog0, West
panel = vvtPidDialog1, Center
panel = vvtPidDialog2, East
2016-07-20 20:03:00 -07:00
; 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}
2019-04-23 06:10:18 -07:00
field = "Detailed status in console", isVerboseAlternator, {isAlternatorControlEnabled == 1}
2019-02-10 19:47:49 -08:00
field = "control period", alternatorControl_periodMs, {isAlternatorControlEnabled == 1}
2016-07-20 20:03:00 -07:00
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", alternatorControl_minValue, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0}
field = "Max", alternatorControl_maxValue, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0}
2016-07-20 20:03:00 -07:00
field = "#% duty = Pterm + Iterm + Dterm + offset%"
2020-03-24 21:58:59 -07:00
dialog = startStopDialog, "Start/Stop Button"
field = "Start/Stop Button Pin", startStopButtonPin
field = "Start/Stop Button Mode", startStopButtonMode
field = "Starter Control", starterControlPin, {startStopButtonPin != 0}
field = "Start cranking maximum time", startCrankingDuration, {startStopButtonPin != 0}
2016-07-20 20:03:00 -07:00
dialog = energySystems, "Battery and Alternator Settings", yAxis
panel = batteryDialog
panel = alternator
2020-03-24 21:58:59 -07:00
panel = startStopDialog
2020-09-07 08:31:29 -07:00
dialog = speedSensorAnalog
field = "Input pin", vehicleSpeedSensorInputPin
2017-02-05 20:04:55 -08:00
field = "revolution to speed mult", vehicleSpeedCoef
dialog = speedSensorCan
field = "Vss Car Type", canVssNbcType, { enableCanVss }
dialog = vssFilter
field = "Filter Reciprocal", vssFilterReciprocal
dialog = speedSensorLeft, "Speed sensor config", yAxis
panel = speedSensorCan, { enableCanVss }
panel = speedSensorAnalog, { enableCanVss == 0 }
field = "Enable CANbus VSS values", enableCanVss, { canReadEnabled }
panel = vssFilter
dialog = speedSensor, "Speed sensor", xAxis
panel = speedSensorLeft
gauge = VSSGauge
2020-09-07 08:31:29 -07:00
2016-07-20 20:03:00 -07:00
; Engine->Other inputs
dialog = analogInputSettings, "Analog Input Settings"
2016-07-20 20:03:00 -07:00
field = "!ECU reboot needed to apply these settings"
field = "Use fixed baro corr from MAP", useFixedBaroCorrFromMap
2020-03-01 19:32:09 -08:00
field = "Analog divider ratio", analogInputDividerCoefficient@@if_ts_show_analog_divider
field = "Smoothing factor", slowAdcAlpha
2016-07-20 20:03:00 -07:00
dialog = tachSettings, "Tachometer output"
field = "Pin", tachOutputPin
field = "Pin mode", tachOutputPinMode
field = "Pulse Mode", tachPulseDurationAsDutyCycle
field = "Pulse duration", tachPulseDuractionMs
2019-12-29 22:41:23 -08:00
field = "Pulse per Rev", tachPulsePerRev
2016-07-20 20:03:00 -07:00
; Board->Connection
dialog = tsPort, "Secondary Serial"
2019-12-07 18:22:09 -08:00
field = "Use UART/TTL serial?", useSerialPort
field = "tunerStudioSerialSpeed", tunerStudioSerialSpeed, {useSerialPort == 1}
field = "TX pin", binarySerialTxPin, {useSerialPort == 1}
2020-05-02 19:06:11 -07:00
field = "RX pin", binarySerialRxPin, {useSerialPort == 1}
2016-07-20 20:03:00 -07:00
dialog = canBus, "CAN Bus"
field = "CAN read enabled", canReadEnabled
field = "CAN write enabled", canWriteEnabled
field = "CAN bitrate", canBaudRate
field = "CAN dash type", canNbcType
field = "inertia measurement unit", imuType
2020-06-09 19:44:43 -07:00
field = "Enable rusEFI CAN broadcast", enableVerboseCanTx
2020-09-03 20:27:53 -07:00
field = "rusEFI CAN data base address", verboseCanBaseAddress
field = "rusEFI CAN data period", canSleepPeriodMs
field = "RX pin", canRxPin @@if_ts_show_can_pins
field = "TX pin", canTxPin @@if_ts_show_can_pins
2020-04-19 12:04:59 -07:00
2020-08-01 20:58:14 -07:00
dialog = canBus2, "Secondary CAN Bus"
field = "CAN read enabled", can2ReadEnabled
field = "CAN write enabled", can2WriteEnabled
field = "CAN bitrate", can2BaudRate
field = "CAN dash type", can2NbcType
2020-08-01 20:58:14 -07:00
field = "Enable rusEFI CAN broadcast", enableVerboseCan2Tx
2020-09-03 20:27:53 -07:00
field = "rusEFI CAN data base address", verboseCan2BaseAddress
field = "rusEFI CAN data period", can2SleepPeriodMs
2020-08-01 20:58:14 -07:00
field = "RX pin", can2RxPin @@if_ts_show_can_pins
field = "TX pin", can2TxPin @@if_ts_show_can_pins
2020-08-08 00:02:53 -07:00
dialog = canBusMain, "CAN Bus Communication", yAxis
panel = canBus
panel = canBus2 @@if_ts_show_can2
2020-04-19 12:04:59 -07:00
dialog = auxSerial, "AUX Serial"
field = "RX pin", auxSerialRxPin @@if_ts_show_auxserial_pins
field = "TX pin", auxSerialTxPin @@if_ts_show_auxserial_pins
field = "Serial Baud Rate", auxSerialSpeed @@if_ts_show_auxserial_pins
2016-07-20 20:03:00 -07:00
dialog = sdCard, "SD Card Logger"
2020-08-07 18:28:50 -07:00
field = "Enable SD Card", isSdCardEnabled
field = "showSdCardWarning", showSdCardWarning
2017-02-22 19:05:34 -08:00
field = "CS Pin", sdCardCsPin
2017-04-11 16:16:48 -07:00
field = "SPI", sdCardSpiDevice
2016-07-20 20:03:00 -07:00
field = "log format", logFormat
2019-09-20 17:18:22 -07:00
field = "Write Period", sdCardPeriodMs
2016-07-20 20:03:00 -07:00
2019-06-06 16:20:00 -07:00
dialog = gpsReceiver, "GPS Receiver"
2016-07-20 20:03:00 -07:00
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 = tle8888, "TLE8888", yAxis
field = "TLE8888 Chip Select", tle8888_cs @@if_ts_show_spi
field = "TLE8888 SPI", tle8888spiDevice @@if_ts_show_spi
2020-04-23 13:57:37 -07:00
field = "Mode", tle8888mode
field = "useTLE8888 cranking reset hack", useTLE8888_cranking_hack
2020-11-10 09:37:15 -08:00
field = "useTLE8888 stepper", useTLE8888_stepper
2019-09-05 07:30:27 -07:00
commandButton = "Reinit", cmd_tle8888_init
dialog = connection, "", yAxis
field = "ADC vRef voltage", adcVcc
panel = tsPort @@if_ts_show_tunerstudio_port
field = "uartConsoleSerialSpeed", uartConsoleSerialSpeed
2020-04-19 12:04:59 -07:00
panel = auxSerial
2019-06-06 16:20:00 -07:00
panel = gpsReceiver @@if_ts_show_gps
2016-10-02 11:02:23 -07:00
2016-07-20 20:03:00 -07:00
2020-09-03 20:27:53 -07:00
dialog = monitoringSettings, "rusEFI Console Settings"
2016-07-20 20:03:00 -07:00
field = "Sensor Sniffer", sensorChartMode
field = " Threshold", sensorSnifferRpmThreshold
field = "Engine Sniffer", isEngineChartEnabled
field = " Threshold", engineSnifferRpmThreshold
dialog = generalSettings, "General"
2019-03-12 17:22:40 -07:00
field = "!https://rusefi.com/s/fuel"
field = "Fuel strategy", fuelAlgorithm
2016-07-20 20:03:00 -07:00
dialog = debugging, "Debug"
field = "!https://rusefi.com/s/debugmode"
field = "Debug mode", debugMode
dialog = limits, "Limits"
field = "Cut fuel on RPM limit", cutFuelOnHardLimit
field = "Cut spark on RPM limit", cutSparkOnHardLimit
field = "RPM hard limit", rpmHardLimit, { cutFuelOnHardLimit || cutSparkOnHardLimit }
field = "Boost cut pressure", boostCutPressure
field = "Minimum oil pressure after start", minOilPressureAfterStart
dialog = etbLimits, "Electronic Throttle Limiting"
field = "Smoothly close the throttle to limit RPM."
field = "Soft limiter start", etbRevLimitStart
field = "Soft limiter range", etbRevLimitRange
dialog = fallbacks, "Fallbacks"
field = "Use MAP estimation table as fallback", enableMapEstimationTableFallback
field = "Failed MAP sensor fallback", failedMapFallback, { !enableMapEstimationTableFallback }
dialog = limitsAndFallback, "Limits and fallbacks"
panel = limits
panel = etbLimits
panel = fallbacks
; Engine->Base Engine Settings
dialog = engineChars, "Base Engine Settings"
2019-03-12 17:22:40 -07:00
topicHelp = "baseHelp"
panel = baseEngineConfig
panel = engineMetadata
panel = generalSettings
panel = debugging
2016-07-20 20:03:00 -07:00
dialog = crankingFuel, "Fuel"
field = "Injection mode", crankingInjectionMode
field = "Fuel Source For Cranking", useRunningMathForCranking
field = "Base fuel mass", cranking_baseFuel, {useRunningMathForCranking == 0}
dialog = crankingIAC, "Idle air valve"
field = "Cranking base IAC position", crankingIACposition
field = "After cranking IAC taper duration",afterCrankingIACtaperDuration
field = "Override cranking IAC CLT multiplier", overrideCrankingIacSetting
2016-07-20 20:03:00 -07:00
dialog = crankingIgnition, "Ignition"
2021-05-23 10:54:49 -07:00
field = "Timing Advance mode", useSeparateAdvanceForCranking
field = "Fixed cranking advance", crankingTimingAngle, {useSeparateAdvanceForCranking == 0}
field = "Fixed Cranking Dwell", ignitionDwellForCrankingMs
dialog = postCrankingEnrichment, "After start enrichment"
2017-01-13 07:03:24 -08:00
field = "Post-Cranking factor", postCrankingFactor
field = "Duration", postCrankingDurationSec
2017-01-13 07:03:24 -08:00
2018-01-17 20:05:01 -08:00
dialog = primingFuelPulsePanel, "Priming fuel pulse"
field = "Duration at -40C degrees", startOfCrankingPrimingPulse
field = "Falloff temperature", primeInjFalloffTemperature
dialog = crankingAdv, "Advanced"
field = "Enable flood clear", isCylinderCleanupEnabled
field = "Enable faster engine spin-up", isFasterEngineSpinUpEnabled
field = "Use Advance Corrections for cranking", useAdvanceCorrectionsForCranking
; Cranking->Cranking Settings
dialog = crankingDialog, "Cranking Settings"
2016-07-20 20:03:00 -07:00
field = "Cranking RPM limit", cranking_rpm
panel = crankingFuel
2016-07-20 20:03:00 -07:00
panel = crankingIgnition
panel = crankingIAC
panel = crankingAdv
dialog = EngineLoadAccelPanel, "Engine Load (alpha version)"
2016-07-20 20:03:00 -07:00
field = "Length", engineLoadAccelLength
field = "Accel threshold", engineLoadAccelEnrichmentThreshold
field = "Accel multiplier", engineLoadAccelEnrichmentMultiplier
field = "Decel threshold", engineLoadDecelEnleanmentThreshold
field = "Decel multiplier", engineLoadDecelEnleanmentMultiplier
2016-07-20 20:03:00 -07:00
2016-09-11 18:02:02 -07:00
dialog = TpsAccelPanel, "TPS"
2019-04-20 11:54:16 -07:00
field = "Set 'Debug Mode' to see detailed 'TPS acceleration enrichment' diagnostics"
2016-07-20 20:03:00 -07:00
field = "Length", tpsAccelLength
field = "Accel Threshold", tpsAccelEnrichmentThreshold
field = "Decel Threshold", tpsDecelEnleanmentThreshold
2016-09-11 18:02:02 -07:00
; field = "Decel Multiplier", tpsDecelEnleanmentMultiplier
field = "#Accelerator Pump model:"
field = "Fraction Period", tpsAccelFractionPeriod
field = "Fraction Divisor", tpsAccelFractionDivisor
2016-07-20 20:03:00 -07:00
dialog = WallWettingAccelPanel, "Wall Wetting (alpha version)"
2019-10-15 12:03:19 -07:00
field = "evaporation time constant / tau", wwaeTau
field = "added to wall coef / beta", wwaeBeta
2016-07-20 20:03:00 -07:00
; Tuning->AccelEnrichment
dialog = AccelEnrich, "Accel/Decel Enrichment"
2016-09-11 18:02:02 -07:00
panel = TpsAccelPanel
panel = WallWettingAccelPanel
panel = EngineLoadAccelPanel
2017-07-26 17:27:08 -07:00
field = "No accel after RPM hard limit", noAccelAfterHardLimitPeriodSecs
2016-07-20 20:03:00 -07:00
; Flex Logic
dialog = fsioIO, "Outputs"
2017-11-19 08:05:57 -08:00
field = "output #1", fsioOutputPins1
field = "output #2", fsioOutputPins2
field = "output #3", fsioOutputPins3
field = "output #4", fsioOutputPins4
field = "output #5", fsioOutputPins5
field = "output #6", fsioOutputPins6
2021-09-05 10:56:51 -07:00
2017-11-19 08:05:57 -08:00
field = "aux valve #1", auxValves1
field = "aux valve #2", auxValves2
2016-07-20 20:03:00 -07:00
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 = ""
field = ""
dialog = fsioSetting, "Setting"
field = "Set number is not associated with the output number."
field = "Set number, only the cell number with some numbers."
2017-03-12 11:49:13 -07:00
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
2021-09-05 12:02:07 -07:00
2016-07-20 20:03:00 -07:00
dialog = fsioOutputsDialog, "FSIO outputs", border
panel = fsioIO, West
panel = fsioFrequency, Center
panel = fsioSetting, East
2017-06-25 23:38:12 -07:00
dialog = fsioFormulas, "FSIO Formulas"
2019-05-03 06:27:11 -07:00
field = "!FSIO uses Reverse Polish Notation. Please read http://rusefi.com/s/fsio"
2020-09-03 20:27:53 -07:00
field = "#fsioinfo command in rusEFI console could be useful while troubleshooting those"
2017-06-25 23:38:12 -07:00
field = "#1", fsioFormulas1
field = "#2", fsioFormulas2
field = "#3", fsioFormulas3
2020-06-01 04:55:42 -07:00
field = "use FSIO #4 for serious engine warning",useFSIO4ForSeriousEngineWarning
2017-06-25 23:38:12 -07:00
field = "#4", fsioFormulas4
2020-06-01 04:55:42 -07:00
field = "use FSIO #5 for critical engine stop", useFSIO5ForCriticalIssueEngineStop
2017-07-25 17:32:54 -07:00
field = "#5", fsioFormulas5
2020-09-07 08:31:29 -07:00
2017-07-25 17:32:54 -07:00
field = "#6", fsioFormulas6
2021-08-14 23:16:24 -07:00
2021-09-18 12:00:00 -07:00
dialog = auxInputsDialog, "Aux inputs"
2016-07-20 20:03:00 -07:00
field = "ADC #1", fsioAdc1
field = "ADC #2", fsioAdc2
field = "ADC #3", fsioAdc3
field = "ADC #4", fsioAdc4
dialog = luaOutputs, "Lua Outputs"
field = "#Call startPwm to initialize, then call"
field = "#setPwmDuty and setPwmFreq to vary duty/freq"
field = "#See rusefi.com/s/lua for more info"
field = "output #0", luaOutputPins1
field = "output #1", luaOutputPins2
field = "output #2", luaOutputPins3
field = "output #3", luaOutputPins4
field = "output #4", luaOutputPins5
field = "output #5", luaOutputPins6
field = "output #6", luaOutputPins7
field = "output #7", luaOutputPins8
dialog = transmissionPanel
field = "TCU Enabled" tcuEnabled
dialog = solenoidPanel, "Shift Solenoids"
field = "Solenoid 1 Pin" tcu_solenoid1, { tcuEnabled }
field = "Solenoid 2 Pin" tcu_solenoid2, { tcuEnabled }
field = "Solenoid 3 Pin" tcu_solenoid3, { tcuEnabled }
field = "Solenoid 4 Pin" tcu_solenoid4, { tcuEnabled }
field = "Solenoid 5 Pin" tcu_solenoid5, { tcuEnabled }
field = "Solenoid 6 Pin" tcu_solenoid6, { tcuEnabled }
field = "Solenoid 1 Pin Mode" tcu_solenoid_mode1, { tcuEnabled }
field = "Solenoid 2 Pin Mode" tcu_solenoid_mode2, { tcuEnabled }
field = "Solenoid 3 Pin Mode" tcu_solenoid_mode3, { tcuEnabled }
field = "Solenoid 4 Pin Mode" tcu_solenoid_mode4, { tcuEnabled }
field = "Solenoid 5 Pin Mode" tcu_solenoid_mode5, { tcuEnabled }
field = "Solenoid 6 Pin Mode" tcu_solenoid_mode6, { tcuEnabled }
dialog = buttonShiftInputPanel, "Switch/Button Shift"
field = "Upshift Pin" tcuUpshiftButtonPin, { tcuEnabled }
field = "Upshift Pin Mode" tcuUpshiftButtonPinMode, { tcuEnabled }
field = "Downshift Pin" tcuDownshiftButtonPin, { tcuEnabled }
field = "Downshift Pin Mode" tcuDownshiftButtonPinMode, { tcuEnabled }
dialog = tcuControls, "Transmission Settings"
panel = transmissionPanel
panel = solenoidPanel
panel = buttonShiftInputPanel
;Boost Open Loop
dialog = boost_left, ""
field = "Enable", isBoostControlEnabled
field = "Control Mode", boostType, { isBoostControlEnabled }
field = "Output", boostControlPin, { isBoostControlEnabled }
field = "Output Mode", boostControlPinMode, { isBoostControlEnabled }
2020-09-07 08:31:29 -07:00
field = "Frequency", boostPwmFrequency, { isBoostControlEnabled }
2021-05-30 04:04:04 -07:00
field = "Safe duty cycle", boostControlSafeDutyCycle, { isBoostControlEnabled }
dialog = boostDialog, "", border
panel = boost_left, West
panel = boostTableTbl, Center
;Boost Closed Loop
dialog = boostPidleft, ""
field = "Enable closed loop above", minimumBoostClosedLoopMap, { isBoostControlEnabled && boostType == 1 }
field = "P Gain", boostPid_pFactor, { isBoostControlEnabled && boostType == 1 }
2020-09-07 08:31:29 -07:00
field = "I Gain", boostPid_iFactor, { isBoostControlEnabled && boostType == 1 }
field = "D Gain", boostPid_dFactor, { isBoostControlEnabled && boostType == 1 }
field = "Min adjustment", boostPid_minValue, { isBoostControlEnabled && boostType == 1 }
field = "Max adjustment", boostPid_maxValue, { isBoostControlEnabled && boostType == 1 }
dialog = boostTableDialog, "", card
panel = boostTable2Tbl
dialog = boostPidDialog, "", border
panel = boostPidleft, West
2020-09-07 08:31:29 -07:00
panel = boostTableDialog, Center
dialog = boostEtbPid, ""
field = "!This section is for advanced users only!"
field = "H-Bridge #1 function", etbFunctions1
field = "H-Bridge #2 function", etbFunctions2
field = "P gain", etbWastegatePid_pFactor, { isBoostControlEnabled }
field = "I gain", etbWastegatePid_iFactor, { isBoostControlEnabled }
field = "D gain", etbWastegatePid_dFactor, { isBoostControlEnabled }
field = "PID min", etbWastegatePid_minValue, { isBoostControlEnabled }
field = "PID max", etbWastegatePid_maxValue, { isBoostControlEnabled }
help = veTableDialogHelp, "Volumetric Efficiency"
text = "Volumetric Efficiency is used to calculate fuel in Speed Density mode. VE incorporates pressure ratio as measured by MAP sensor in boost (no VE ever above 105%ish)"
2019-03-12 17:22:40 -07:00
webHelp = "https://rusefi.com/s/fuel"
help = fuelHelp, "Fuel Control"
text = "More about fuel control on the web"
webHelp = "https://rusefi.com/s/fuel"
2017-05-27 14:10:42 -07:00
2019-04-22 18:32:55 -07:00
help = etbHelp, "ETB Control"
text = "More about electronic throttle body on the web"
webHelp = "https://rusefi.com/s/etb"
2021-10-02 12:23:04 -07:00
help = vrThresholdHelp, "VR Sensor Threshold"
text = "This is about rusEFI VR Discrete decoder"
webHelp = "https://rusefi.com/"
help = tpsTpsHelp, "Acceleration Enrichment"
2019-03-12 17:22:40 -07:00
text = "More about Tps To Tps acceleration on the web"
webHelp = "https://rusefi.com/s/tpstps"
help = baseHelp, "Base Settings Control"
2019-03-12 19:04:52 -07:00
text = "More about rusefi on the web"
webHelp = "https://rusefi.com/"
2019-03-12 17:22:40 -07:00
dialog = veTableDialog
topicHelp = "veTableDialogHelp"
2017-05-27 14:10:42 -07:00
panel = veTableTbl, South
dialog = veTableDialog3D, "VE Table"
topicHelp = "veTableDialogHelp"
2017-05-27 14:10:42 -07:00
panel = veTableMap, South
2019-04-22 18:32:55 -07:00
dialog = etbPidDialog, "PID settings"
field = "pFactor", etb_pFactor
field = "iFactor", etb_iFactor
field = "dFactor", etb_dFactor
field = "pid min", etb_minValue
field = "pid max", etb_maxValue
field = "iTermMin", etb_iTermMin
field = "iTermMax", etb_iTermMax
dialog = etbIdleDialog, "ETB Idle"
field = "use ETB for idle", useETBforIdleControl
field = "ETB idle maximum angle", etbIdleThrottleRange
2019-04-22 18:32:55 -07:00
dialog = etbDialogLeft
field = "https://rusefi.com/s/etb"
2019-04-23 06:10:18 -07:00
field = "Detailed status in console", isVerboseETB
field = "Disable ETB if engine is stopped", disableEtbWhenEngineStopped
field = "Disable ETB Motor", pauseEtbControl
field = "H-Bridge #1 function", etbFunctions1
field = "H-Bridge #2 function", etbFunctions2
2020-03-10 11:31:00 -07:00
; we need the term about stepper idle in here, because there's a bug in TS that you can't have different visibility
; criteria for the same panel when used in multiple places
2021-09-26 14:52:29 -07:00
; todo: report bug to TS?
; another todo: split panel into two panels so that we can enable/disable h-bridge #1 separately from h-bridge #2
panel = hbridgeHardware, { etbFunctions1 != @@ETB_FUNCTION_NONE@@ || etbFunctions2 != @@ETB_FUNCTION_NONE@@ || (useStepperIdle && useHbridgesToDriveIdleStepper) }
2019-04-22 18:32:55 -07:00
dialog = etbAutotune, "PID Autotune"
2020-08-21 21:03:19 -07:00
field = "First step: calibrate TPS and hit 'Burn'"
2021-02-16 08:14:24 -08:00
commandButton = "Auto Calibrate ETB 1", cmb_etb_auto_calibrate
commandButton = "Auto Calibrate ETB 2", cmb_etb_auto_calibrate_2
2020-08-21 21:03:19 -07:00
field = "Second step"
commandButton = "Start ETB PID Autotune", cmd_etb_autotune
commandButton = "Stop ETB PID Autotune", cmd_etb_autotune_stop
2019-04-22 18:32:55 -07:00
field = "!Set debug mode below to 'ETB Autotune' to show more detail"
field = "Debug mode", debugMode
dialog = etbDialogRight
panel = etbIdleDialog, { throttlePedalPositionAdcChannel != @@ADC_CHANNEL_NONE@@ }
panel = etbPidDialog, { (throttlePedalPositionAdcChannel != @@ADC_CHANNEL_NONE@@) || (etbFunctions1 == @@DC_FUNCTION_IDLE@@) }
panel = etbAutotune
; Neutral position handling not yet implemented!
;field = "Neutral Position", etbNeutralPosition
2021-09-13 09:36:37 -07:00
dialog = etbDialog, "Electronic Throttle Body", border
2019-04-22 18:32:55 -07:00
topicHelp = "etbHelp"
panel = etbDialogLeft, West
panel = etbDialogRight, East
2016-07-20 20:03:00 -07:00
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
2020-08-23 12:09:23 -07:00
commandButton = "Spark #9", cmd_test_spk9
commandButton = "Spark #10",cmd_test_spk10
commandButton = "Spark #11",cmd_test_spk11
commandButton = "Spark #12",cmd_test_spk12
2016-07-20 20:03:00 -07:00
dialog = testMisc, "Misc"
2020-04-22 15:23:14 -07:00
; commandButton = "Come To Pit", cmd_call_from_pit
2021-01-10 20:46:50 -08:00
commandButton = "Main Relay", cmd_test_main_relay@@if_ts_show_main_relay
2016-07-20 20:03:00 -07:00
commandButton = "Fuel Pump", cmd_test_fuel_pump
commandButton = "Cooling Fan", cmd_test_fan_1
commandButton = "Cooling Fan 2", cmd_test_fan_2
2021-06-23 14:03:55 -07:00
commandButton = "A/C Relay", cmd_test_ac_relay
2016-07-20 20:03:00 -07:00
commandButton = "Check Engine", cmd_test_check_engine_light
2019-09-14 15:04:32 -07:00
commandButton = "Idle Air Valve", cmd_test_idle_valve
2020-11-21 21:09:36 -08:00
commandButton = "HPFP Valve", cmd_test_hpfp_valve
2020-03-29 14:21:17 -07:00
commandButton = "Starter Relay", cmd_test_starter_relay
commandButton = "Stop Engine", cmd_stop_engine
commandButton = "Write Config", cmd_write_config
commandButton = "Reset ECU", cmd_reset_controller
commandButton = "Reset to DFU", cmd_dfu
2021-07-20 10:20:34 -07:00
commandButton = "F7 nDBANK fix", cmd_nDBANK@@if_ts_show_f7_presets
2021-08-10 04:11:41 -07:00
commandButton = "No flash Burn mode", cmd_burn_without_flash
2017-05-01 19:33:20 -07:00
; bench test
dialog = ioTest, "Bench Test & Commands", xAxis
panel = testSpark
panel = testInjectors
panel = testSolenoids
panel = testFsio
panel = testMisc
dialog = widebandConfig, "rusEFI Wideband Config"
field = "!Please connect exactly one wideband controller before pressing these buttons!"
commandButton = "Update Firmware", cmd_wideband_firmare_update
field = "!These buttons will set ALL connected controllers to the specified index."
field = "!Disconnect all controllers you don't want to set!"
commandButton = "Set Index 0", cmd_set_wideband_idx_0
commandButton = "Set Index 1", cmd_set_wideband_idx_1
2019-04-08 15:05:16 -07:00
dialog = engineTypeDialog, "Popular vehicles"
2020-09-03 20:27:53 -07:00
field = "!These buttons send a command to rusEFI controller to apply preset values"
field = "!Once you send the command, please reconnect to rusEFI controller in order to read fresh values"
2020-05-21 18:00:34 -07:00
commandButton = "Frankenso Miata NA6 Stage 0", cmd_set_engine_type_Frankenso_Miata_NA6_VAF@@if_show_Frankenso_presets
commandButton = "Frankenso Miata NA6 Stage 1", cmd_set_engine_type_Frankenso_Miata_NA6_MAP@@if_show_Frankenso_presets
commandButton = "Frankenso Miata NB2 MAP", cmd_set_engine_type_Frankenso_Miata_NB2@@if_show_Frankenso_presets
2020-12-18 20:05:44 -08:00
commandButton = "microRusEFI Defaults", cmd_set_engine_type_microRusEFI_Defaults@@if_show_microRusEFI_presets
2020-07-29 11:53:36 -07:00
commandButton = "microRusEFI Miata NA6 VAF", cmd_set_engine_type_microRusEFI_Miata_NA6_VAF@@if_show_microRusEFI_presets
commandButton = "microRusEFI Miata NA6 MAP", cmd_set_engine_type_microRusEFI_Miata_NA6_MAP@@if_show_microRusEFI_presets
2020-11-28 19:49:28 -08:00
commandButton = "microRusEFI Miata 94/95 MAP", cmd_set_engine_type_microRusEFI_Miata_94_MAP@@if_show_microRusEFI_presets
2021-07-29 22:03:38 -07:00
commandButton = "microRusEFI Miata NB2 MAP", cmd_set_engine_type_microRusEFI_Miata_NB2_MAP@@if_show_microRusEFI_presets
2020-05-21 18:00:34 -07:00
commandButton = "microRusEFI Miata NB2 MAF", cmd_set_engine_type_microRusEFI_Miata_NB2_MAF@@if_show_microRusEFI_presets
2020-12-18 20:05:44 -08:00
commandButton = "microRusEFI GDI VAG B6 test", cmd_set_engine_type_microRusEFI_VW_B6@@if_show_microRusEFI_presets
2020-08-29 13:49:56 -07:00
commandButton = "microRusEFI BCM", cmd_set_engine_type_microRusEFI_MRE_BODY_CONTROL@@if_show_microRusEFI_presets
2020-12-18 20:05:44 -08:00
commandButton = "microRusEFI Subaru EJ18", cmd_set_engine_type_ET_MRE_SUBARU_EJ18@@if_show_microRusEFI_presets
2020-05-21 18:00:34 -07:00
2020-05-24 10:27:14 -07:00
commandButton = "Proteus M73 v12", cmd_set_engine_type_Proteus_M73@@if_show_Proteus_presets
2020-11-04 09:48:07 -08:00
commandButton = "Proteus Miata TCU", cmd_set_engine_type_Proteus_Miata_TCU@@if_show_Proteus_presets
2020-12-18 12:21:11 -08:00
commandButton = "Proteus Miata NB2", cmd_set_engine_type_ET_PROTEUS_MIATA_NB2@@if_show_Proteus_presets
2021-06-13 18:28:57 -07:00
2021-07-08 13:35:58 -07:00
commandButton = "Hellen NA6", cmd_set_engine_type_hellen_NA6@@if_show_HellenNA6_presets
commandButton = "Hellen NA8 94-95", cmd_set_engine_type_hellen_NA94@@if_show_HellenNA6_presets
2020-05-24 10:27:14 -07:00
2021-08-09 23:17:12 -07:00
commandButton = "Hellen NB2 36 wheel", cmd_set_engine_type_hellen_NB2_36@@if_show_HellenNB2_presets
commandButton = "Hellen Nissan 4 cylinder", cmd_set_engine_type_hellen_nissan_121_4@@if_show_Hellen121nissan_presets
commandButton = "Hellen Nissan 6 cylinder", cmd_set_engine_type_hellen_nissan_121_6@@if_show_Hellen121nissan_presets
commandButton = "Hellen Nissan 8 cylinder", cmd_set_engine_type_hellen_nissan_121_8@@if_show_Hellen121nissan_presets
2021-07-08 13:35:58 -07:00
commandButton = "Hellen 121 VAG i4", cmd_set_engine_type_hellen_121_vag_4@@if_show_Hellen121vag_presets
2021-07-08 17:06:15 -07:00
commandButton = "Hellen 121 VAG i5", cmd_set_engine_type_hellen_121_vag_5@@if_show_Hellen121vag_presets
commandButton = "Hellen 121 VAG v6", cmd_set_engine_type_hellen_121_vag_v6@@if_show_Hellen121vag_presets
commandButton = "Hellen 121 VAG vr6", cmd_set_engine_type_hellen_121_vag_vr6@@if_show_Hellen121vag_presets
2021-07-08 13:35:58 -07:00
commandButton = "Hellen 121 VAG v8", cmd_set_engine_type_hellen_121_vag_8@@if_show_Hellen121vag_presets
2020-05-24 10:27:14 -07:00
2021-09-18 16:42:04 -07:00
commandButton = "Hellen 128 Merc 4 cyl", cmd_set_engine_type_hellen_128_merc_4@@if_show_Hellen128merc_presets
commandButton = "Hellen 128 Merc 6 cyl", cmd_set_engine_type_hellen_128_merc_6@@if_show_Hellen128merc_presets
commandButton = "Hellen 128 Merc v8", cmd_set_engine_type_hellen_128_merc_8@@if_show_Hellen128merc_presets
2020-05-21 18:00:34 -07:00
commandButton = "ETB test bench", cmd_set_engine_type_etb_test@@if_show_test_presets
2020-07-02 17:40:00 -07:00
commandButton = "TLE8888 test bench", cmd_set_engine_type_8888_test@@if_show_test_presets
2019-03-12 17:33:13 -07:00
commandButton = "Reset firmware settings", cmd_set_engine_type_default
2016-07-20 20:03:00 -07:00
; Board->ECU stimulator
dialog = ecuStimulator, "ECU stimulator"
field = "Trigger Simulator", triggerSimulatorFrequency
commandButton = "Enable internal trigger simulation", cmd_enable_self_stim
commandButton = "Enable external trigger simulation", cmd_enable_ext_stim @@if_ts_show_hardware_simulator
commandButton = "Disable trigger simulation", cmd_disable_self_stim
; 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 = ""@@if_ts_show_hardware_simulator
field = "trigger stimulator pin #1", triggerSimulatorPins1@@if_ts_show_hardware_simulator
field = "trigger stimulator pin mode #1", triggerSimulatorPinModes1@@if_ts_show_hardware_simulator
field = "trigger stimulator pin #2", triggerSimulatorPins2@@if_ts_show_hardware_simulator
field = "trigger stimulator pin mode #2", triggerSimulatorPinModes2@@if_ts_show_hardware_simulator
field = "trigger stimulator pin #3", triggerSimulatorPins3@@if_ts_show_hardware_simulator
field = "trigger stimulator pin mode #3", triggerSimulatorPinModes3@@if_ts_show_hardware_simulator
2016-07-20 20:03:00 -07:00
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
dialog = datalogSettings, "Datalogging Settings"
field = "#Disabling optional logging may increase update rate!"
field = "Log debug channels", enableLogDebugChannels
field = "Log recent errors list", enableLogErrorList
2016-07-20 20:03:00 -07:00
; Racing Features->Launch Control
dialog = smLaunchControl, "Launch Control Settings EXPERIMENTAL"
field = "Enable Launch Control", launchControlEnabled
field = "Activation Mode", launchActivationMode
field = "Switch Input", launchActivatePin, {launchActivationMode == 0 && launchControlEnabled == 1}
field = "Clutch Input", clutchDownPin, {launchActivationMode == 1 && launchControlEnabled == 1}
field = "Clutch Input inverted", clutchDownPinMode, {launchActivationMode == 1 && launchControlEnabled == 1}
field = ""
field = "Rpm Treshold", launchRpmTreshold, {launchControlEnabled == 1}
field = "Speed Treshold", launchSpeedTreshold, {launchControlEnabled == 1}
field = ""
field = "Launch RPM", launchRpm, {launchControlEnabled == 1}
;field = "Extra Fuel", launchFuelAdded, {launchControlEnabled == 1}
;field = "Boost Solenoid Duty", launchBoostDuty, {launchControlEnabled == 1}
field = "Ignition Retard enable", enableLaunchRetard, {launchControlEnabled == 1}
field = "Ignition Retard", launchTimingRetard, {launchControlEnabled == 1}
field = "Ignition Retard RPM Range", launchTimingRpmRange, {launchControlEnabled == 1}
field = "Smooth Retard Mode", launchSmoothRetard, {launchControlEnabled == 1}
field = "Hard Cut Mode"
field = "Ignition Cut", launchSparkCutEnable, {launchControlEnabled == 1}
field = "Fuel Cut", launchFuelCutEnable, {launchControlEnabled == 1}
field = "Hard Cut RPM Range", hardCutRpmRange, {launchControlEnabled == 1}
2020-09-07 08:31:29 -07:00
; Racing Features->Rolling Launch
dialog = smRollingLaunch, "Rolling Launch Settings NOT WORKING"
field = "Enable Rolling Launch", rollingLaunchEnabled
; Racing Features->Rolling Launch
dialog = antiLag, "AntiLag Settings NOT WORKING"
field = "Enable AntiLag", antiLagEnabled
field = "Activation Mode", antiLagActivationMode, {antiLagEnabled == 1}
field = "Switch Input", antiLagActivatePin, {antiLagActivationMode == 1 && antiLagEnabled == 1}
2018-03-22 05:12:34 -07:00
dialog = coastingFuelCutControl, "Coasting Fuel Cutoff Settings"
field = "Enable Coasting Fuel Cutoff", coastingFuelCutEnabled
2021-04-12 05:17:17 -07:00
field = "No cut below CLT", coastingFuelCutClt, {coastingFuelCutEnabled == 1}
field = "Cut fuel above", coastingFuelCutRpmHigh, {coastingFuelCutEnabled == 1}
field = "Restore fuel below", coastingFuelCutRpmLow, {coastingFuelCutEnabled == 1}
field = "Cut fuel below TPS", coastingFuelCutTps, {coastingFuelCutEnabled == 1}
field = "Cut fuel below MAP", coastingFuelCutMap, {coastingFuelCutEnabled == 1}
2021-07-09 07:06:51 -07:00
dialog = rotaryDialog, "Rotary"
field = "Enable Trailing Sparks", enableTrailingSparks
2021-07-09 09:39:34 -07:00
field = "Trailing Spark Offset", trailingSparkAngle
2021-07-09 07:06:51 -07:00
field = "Trailing Pin 1", trailingCoilPins1
field = "Trailing Pin 2", trailingCoilPins2
field = "Trailing Pin 3", trailingCoilPins3
field = "Trailing Pin 4", trailingCoilPins4
dialog = parkingLot, "Experimental/Broken"
field = "#System hacks"
field = "Global fuel correction", globalFuelCorrection
field = "MAP Averaging Logic @", mapAveragingSchedulingAtIndex
field = "showHumanReadableWarning (affects Burn)", showHumanReadableWarning
field = "Warning Message", warning_message
field = "Ford redundant TPS mode", useFordRedundantTps
field = "consumeObdSensors", consumeObdSensors, { canReadEnabled == 1 && canWriteEnabled == 1}
field = "use FSIO Table CAN Sniffing Filtering",useFSIOTableForCanSniffingFiltering
2021-07-27 14:31:58 -07:00
field = "turbo speed sensor", turboSpeedSensorInputPin
field = "turbo speed multiplier", turboSpeedSensorMultiplier
2021-09-06 07:03:26 -07:00
field = "Artificial Misfire", artificialTestMisfire
2021-08-07 23:59:06 -07:00
panel = allTriggerDebug
2020-04-09 15:09:17 -07:00
2020-08-31 14:08:04 -07:00
help = helpGeneral, "rusEFI General Help"
webHelp = @@MAIN_HELP_URL@@
2020-04-09 15:09:17 -07:00
text = "<img src='https://rusefi.com/style/logo_100.gif'>"
dialog = vrThreshold1, "VR 1 Threshold"
field = "Pin", vrThreshold1_pin
panel = vrThresholdCurve1
dialog = vrThreshold2, "VR 2 Threshold"
field = "Pin", vrThreshold2_pin
panel = vrThresholdCurve2
dialog = vrThreshold
2021-10-02 12:23:04 -07:00
topicHelp = "vrThresholdHelp"
panel = vrThreshold1
panel = vrThreshold2
dialog = gppwm1left, ""
field = "Pin", gppwm1_pin
field = ""
field = "Set frequency to 0hz for on-off mode"
field = "Frequency", gppwm1_pwmFrequency, {gppwm1_pin != 0}
field = ""
field = "On above duty", gppwm1_onAboveDuty, {gppwm1_pin != 0 && gppwm1_pwmFrequency == 0}
field = "Off below duty", gppwm1_offBelowDuty, {gppwm1_pin != 0 && gppwm1_pwmFrequency == 0}
field = "Duty if error", gppwm1_dutyIfError, {gppwm1_pin != 0}
field = ""
field = "Load Axis", gppwm1_loadAxis, {gppwm1_pin != 0}
field = "Note", gpPwmNote1
field = ""
field = ""
field = ""
field = ""
field = ""
dialog = gppwm1, "General Purpose PWM 1", xAxis
panel = gppwm1left
panel = gppwm1Tbl, {gppwm1_pin != 0}
dialog = gppwm2left, ""
field = "Pin", gppwm2_pin
field = ""
field = "Set frequency to 0hz for on-off mode"
field = "Frequency", gppwm2_pwmFrequency, {gppwm2_pin != 0}
field = ""
field = "On above duty", gppwm2_onAboveDuty, {gppwm2_pin != 0 && gppwm2_pwmFrequency == 0}
field = "Off below duty", gppwm2_offBelowDuty, {gppwm2_pin != 0 && gppwm2_pwmFrequency == 0}
field = "Duty if error", gppwm2_dutyIfError, {gppwm2_pin != 0}
field = ""
field = "Load Axis", gppwm2_loadAxis, {gppwm2_pin != 0}
field = "Note", gpPwmNote2
field = ""
field = ""
field = ""
field = ""
field = ""
dialog = gppwm2, "General Purpose PWM 2", xAxis
panel = gppwm2left
panel = gppwm2Tbl, {gppwm2_pin != 0}
dialog = gppwm3left, ""
field = "Pin", gppwm3_pin
field = ""
field = "Set frequency to 0hz for on-off mode"
field = "Frequency", gppwm3_pwmFrequency, {gppwm3_pin != 0}
field = ""
field = "On above duty", gppwm3_onAboveDuty, {gppwm3_pin != 0 && gppwm3_pwmFrequency == 0}
field = "Off below duty", gppwm3_offBelowDuty, {gppwm3_pin != 0 && gppwm3_pwmFrequency == 0}
field = "Duty if error", gppwm3_dutyIfError, {gppwm3_pin != 0}
field = ""
field = "Load Axis", gppwm3_loadAxis, {gppwm3_pin != 0}
field = "Note", gpPwmNote3
field = ""
field = ""
field = ""
field = ""
field = ""
dialog = gppwm3, "General Purpose PWM 3", xAxis
panel = gppwm3left
panel = gppwm3Tbl, {gppwm3_pin != 0}
dialog = gppwm4left, ""
field = "Pin", gppwm4_pin
field = ""
field = "Set frequency to 0hz for on-off mode"
field = "Frequency", gppwm4_pwmFrequency, {gppwm4_pin != 0}
field = ""
field = "On above duty", gppwm4_onAboveDuty, {gppwm4_pin != 0 && gppwm4_pwmFrequency == 0}
field = "Off below duty", gppwm4_offBelowDuty, {gppwm4_pin != 0 && gppwm4_pwmFrequency == 0}
field = "Duty if error", gppwm4_dutyIfError, {gppwm4_pin != 0}
field = ""
field = "Load Axis", gppwm4_loadAxis, {gppwm4_pin != 0}
field = "Note", gpPwmNote4
field = ""
field = ""
field = ""
field = ""
field = ""
dialog = gppwm4, "General Purpose PWM 4", xAxis
panel = gppwm4left
panel = gppwm4Tbl, {gppwm4_pin != 0}
2020-04-09 15:09:17 -07:00
2017-11-29 10:49:10 -08:00
[Tools]
;addTool = toolName, PanelName
addTool = veTableGenerator, "VE Table Generator", veTableTbl
#if LAMBDA
#else
addTool = afrTableGenerator, "AFR Table Generator", afrTableTbl
#endif