rusefi/firmware/tunerstudio/rusefi.input

3311 lines
168 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
;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"
2019-02-10 19:47:49 -08:00
idleRpmPid_periodMs = "PID recalculation period"
2018-06-15 17:45:06 -07:00
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
2016-07-20 20:03:00 -07:00
gauge2 = afr1Gauge
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@@
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 = time, "Time", 8, 32, 0.01, "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
2017-06-19 19:29:03 -07:00
veAnalyzeMap = veTableTbl, afrTableTbl, AFRValue, egoCorrection, { 1 }
lambdaTargetTables = afrTableTbl, afrTSCustom
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
[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
hasSdCard = bits, U32, 0, [0:0], "true", "false";
isIgnitionEnabledIndicator=bits,U32, 0, [1:1], "true", "false";
ind_injection_enabled=bits,U32, 0, [2:2], "true", "false";
isCylinderCleanupEnabled=bits,U32, 0, [3:3], "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";
knockEverIndicator=bits, U32, 0, [13:13], "true", "false";
knockNowIndicator=bits, U32, 0, [14:14], "true", "false";
brakePedalIndicator=bits, U32, 0, [15:15], "true", "false";
toothLogReady =bits, U32, 0, [16:16], "true", "false";
acSwitchIndicator =bits, U32, 0, [17:17], "true", "false";
ind_tps_error = 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";
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";
; RPM, vss
RPMValue = scalar, U16, 4, "RPM", 1, 0.00000
rpmAcceleration = scalar, S16, 6, "dRpm",{1/@@PACK_MULT_PERCENT@@}, 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
AFRValue = scalar, U16, 34, "AFR",,{1/@@PACK_MULT_AFR@@},, 0.0
engineLoad = scalar, U16, 36, "%",{1/@@PACK_MULT_PERCENT@@}, 0.0 ; Blend of MAP and TPS, depends on algorithm
; misc sensors
VBatt = scalar, U16, 38, "V",,{1/@@PACK_MULT_VOLTAGE@@},, 0.0
oilPressure = scalar, U16, 40, "kPa",{1/@@PACK_MULT_PRESSURE@@}, 0.0
vvtPosition = scalar, U16, 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, "ms",{1/@@PACK_MULT_MS@@}, 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, "ms",{1/@@PACK_MULT_MS@@}, 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, 70, "%",{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, S16, 98, "amount",{1/@@PACK_MULT_PERCENT@@}, 0
fuelConsumptionPerHour=scalar,F32, 100, "kPa", 1, 0.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
; 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
2020-07-31 20:53:56 -07:00
sd_status = scalar, U08, 246, "", 1.0, 0.0
; Transmission
tcuCurrentGear = scalar, S08, 247, "gear", 1, 0
tcuDesiredGear = scalar, S08, 262, "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
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
2018-01-06 07:53:15 -08:00
;
; see TunerStudioOutputChannels struct
;
2016-07-20 20:03:00 -07:00
2017-06-19 19:29:03 -07:00
; todo: generate this section programatically
LM_SPEED_DENSITY = {3},
LM_REAL_MAF = {4}
2016-07-20 20:03:00 -07:00
egoCorrection = { 100 }
time = { timeNow }
; 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
; 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
; Alternator TPS Acceleration Warmup-Pid Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing ETB PID FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL
2020-07-21 09:35:25 -07:00
; DBG_ALTERNATOR_PID DBG_TPS_ACCEL DBG_2 DBG_IDLE_CONTROL
debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset",""
debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "", "", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", ""
debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", ""
debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", ""
2020-07-21 09:35:25 -07:00
debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", ""
debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", ""
debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", ""
debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count" "", "", "", "", "", ""
debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "S unused" "", "", "", "", "", ""
debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "S unused" "", "", "", "", "", ""
debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", ""
debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "di5", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", ""
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
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
requiresPowerCycle = auxPidFrequency3
requiresPowerCycle = auxPidFrequency4
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
requiresPowerCycle = fsioOutputPins7
requiresPowerCycle = fsioOutputPins8
requiresPowerCycle = fsioOutputPins9
requiresPowerCycle = fsioOutputPins10
requiresPowerCycle = fsioOutputPins11
requiresPowerCycle = fsioOutputPins12
requiresPowerCycle = fsioOutputPins13
requiresPowerCycle = fsioOutputPins14
requiresPowerCycle = fsioOutputPins15
requiresPowerCycle = fsioOutputPins16
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
requiresPowerCycle = fsioFrequency7
requiresPowerCycle = fsioFrequency8
requiresPowerCycle = fsioFrequency9
requiresPowerCycle = fsioFrequency10
requiresPowerCycle = fsioFrequency11
requiresPowerCycle = fsioFrequency12
requiresPowerCycle = fsioFrequency13
requiresPowerCycle = fsioFrequency14
requiresPowerCycle = fsioFrequency15
requiresPowerCycle = fsioFrequency16
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, 10
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
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
gauge = afr1Gauge
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 RPM based"
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
2016-07-20 20:03:00 -07:00
curve = map_samplingAngleCurve, "MAP Sampling Start Angle"
columnLabel = "RPM", "Angle"
xAxis = 0, 8000, 10
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, 10
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"
2016-07-20 20:03:00 -07:00
columnLabel = "Voltage", "Dead Time"
xAxis = 8, 16, 9
yAxis = 0, 2, 5
2016-07-20 20:03:00 -07:00
xBins = injector_battLagCorrBins, VBatt
yBins = injector_battLagCorr
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 = "Coolant", "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
2018-01-07 09:11:49 -08:00
yAxis = 0, 8000, 10
xBins = cltIdleRpmBins, coolant
yBins = cltIdleRpm, RPMValue
gauge = CLTGauge
curve = idleAdvanceCurve, "Idle Advance Angle"
columnLabel = "RPM", "degrees"
2018-01-07 09:11:49 -08:00
xAxis = 0, 8000, 10
yAxis = -100, 100, 10
xBins = idleAdvanceBins, RPMValue
yBins = idleAdvance
gauge = RPMGauge
curve = idleVeCurve, "Idle VE"
columnLabel = "RPM", "%"
2018-01-07 09:11:49 -08:00
xAxis = 0, 8000, 10
yAxis = 0, 250, 10
xBins = idleVeBins, RPMValue
yBins = idleVe
gauge = afr1Gauge
curve = crankingAdvanceCurve, "Cranking Advance Angle"
columnLabel = "RPM", "degrees"
xAxis = 0, 8000, 10
yAxis = -100, 100, 10
xBins = crankingAdvanceBins, RPMValue
yBins = crankingAdvance
gauge = RPMGauge
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
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 = 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)"
2016-07-20 20:03:00 -07:00
table = afrTableTbl, afrTableMap, "Target AFR Table", 1
; constant, variable
2017-06-19 19:29:03 -07:00
xBins = afrRpmBins, RPMValue
yBins = afrLoadBins, afrTableYAxis
2016-07-20 20:03:00 -07:00
zBins = afrTable
; 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
yBins = gearCountArray, tcuCurrentGear
xBins = solenoidCountArray, 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", "dRpm", 0, 3, 0, 1, 3, 4, 1, 1
knockLevelGauge = knockLevel,"Knock level", "volts", 0, 7, 10, 10, 100, 100, 1, 2
fuelTankLevelGauge = fuelTankLevel,"Fuel level", "x", 0, 7, 10, 10, 100, 100, 1, 2
2017-06-19 14:08:17 -07:00
speedToRpmRatioGauge = speedToRpmRatio, "speed2rpm", "", 0, 100, 0, 0, 100, 100, 4, 4
wastegatePosGauge = wastegatePositionSensor, "Wastegate position sensor", "%", 0, 100, 0, 0, 100, 100, 1, 1
idlePosSensGauge = idlePositionSensor, "Idle position sensor", "%", 0, 100, 0, 0, 100, 100, 1, 1
2019-03-12 11:35:49 -07:00
gaugeCategory = ECU Status
warningCounterGauge = warningCounter, "Warning count", "", 0, 100, 0, 0, 100, 100, 0, 0
lastErrorCodeGauge = lastErrorCode, "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 , "ECU Software Version", "%", 0, 100, 0, 0, 100, 100, 0, 0
2020-03-28 17:14:17 -07:00
timeSecondsGauge = seconds, "Uptime", "sec", 0, 100, 0, 0, 100, 100, 0, 0
2020-08-14 09:46:02 -07:00
tuneCrc16Gauge = tuneCrc16, "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, 15000, 200, 500, 6000, 6000, 0, 0
CLTGauge = coolant, "Coolant temp", "deg C", -40, 140, -15, 1, 95, 110, 1, 1
IATGauge = intake, "Intake air temp", "deg C", -40, 140, -15, 1, 95, 110, 1, 1
afr1Gauge = AFRValue, "Air fuel ratio", "", 10, 19.4, 12, 13, 15, 16, 2, 2
MAFGauge = MAFValue, "Mass air flow", "v", 0, 5, 0, 1, 3, 4, 1, 1
VBattGauge = VBatt, "Battery voltage", "V", 8, 21, 9, 10, 17, 19, 1, 1
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
vvtPositionGauge = vvtPosition, @@GAUGE_NAME_VVT@@, "deg", 0, 100, 0, 0, 720, 720, 0, 0
internalMcuTemperatureGauge = internalMcuTemperature, @@GAUGE_NAME_ECU_TEMPERATURE@@, "C", 0, 100, 0, 0, 75, 100, 0, 0
2019-02-26 19:32:17 -08:00
OilPressGauge = oilPressure, "Oil Pressure", "kPa", 0, 750, 35, 75, 550, 700, 0, 0
idleAirValvePositionGauge = idleAirValvePosition, "Idle position", "%", 0, 100, 0, 0, 100, 100, 1, 1
2020-07-27 19:50:48 -07:00
AuxT1Gauge = auxt1, "Aux temp 1", "deg C", -40, 140, -15, 1, 95, 110, 1, 1
AuxT2Gauge = auxt2, "Aux temp 2", "deg C", -40, 140, -15, 1, 95, 110, 1, 1
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@@, "perc", -11, 11, 1.0, 1.2, 100, 100, 3, 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@@, "deg 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
2019-03-12 18:48:28 -07:00
crankingFuelGauge = crankingFuelMs, @@GAUGE_NAME_FUEL_CRANKING@@, "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 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
2018-01-17 16:18:48 -08:00
injectorLagMsGauge = injectorLagMs, @@GAUGE_NAME_INJECTOR_LAG@@, "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1
2017-06-19 14:08:17 -07:00
fuelRunningGauge = fuelRunning, @@GAUGE_NAME_FUEL_RUNNING@@, "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1
baseFuelGauge = baseFuel, @@GAUGE_NAME_FUEL_BASE@@, "mSec", 0, 100, 0, 0, 100, 100, 2, 0
fuelPidCorrectionGauge = fuelPidCorrection, @@GAUGE_NAME_FUEL_PID_CORR@@, "%", -10, 10, -8, -5, 5, 8, 3, 1
fuelingLoadGauge = fuelingLoad, @@GAUGE_NAME_FUEL_LOAD@@, "%", 0, 300, 0, 0, 300, 300, 1, 1
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", "volts", 0, 5, 0, 0, 5, 5, 3, 0
rawPpsPrimaryGauge = rawPpsPrimary , "Raw Pedal Primary", "volts", 0, 5, 0, 0, 5, 5, 3, 0
rawCltGauge = rawClt , "Raw CLT", "volts", 0, 5, 0, 0, 5, 5, 3, 0
rawIatGauge = rawIat , "Raw IAT", "volts", 0, 5, 0, 0, 5, 5, 3, 0
rawOilPressureGauge = rawOilPressure, "Raw Oil Pressure", "volts", 0, 5, 0, 0, 5, 5, 3, 0
2020-08-21 05:53:23 -07:00
rawPpsSecondaryGauge = rawPpsSecondary,"Raw Pedal Secondary","volts", 0, 5, 0, 0, 5, 5, 3, 0
rawIdlePositionSensorGauge = rawIdlePositionSensor, "Raw Idle Position", "volts", 0, 5, 0, 0, 5, 5, 3, 0
rawWastegatePositionGauge = rawWastegatePosition,"Raw Wastegate Position","volts", 0, 5, 0, 0, 5, 5, 3, 0
gaugeCategory = Transmission
desiredGearGauge = tcuDesiredGear, "Desired", "gear", -1, 10, -1, -1, 10, 10, 0, 0
currentGearGauge = tcuCurrentGear, "Current", "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
[WueAnalyze]
; wueCurveName, afrTempCompensationCurve, lambdaTargetTableName, lambdaChannel, coolantTempChannel, egoCorrectionChannel, wueChannel, activeCondition
wueAnalyzeMap = wueAnalyzer_warmup_curve, wueAfrTargetOffsetCurve, afrTableTbl, AFRValue, coolant, cltCorrection, egoCorrection
lambdaTargetTables = afrTableTbl, afrTSCustom
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
2016-07-20 20:03:00 -07:00
gauge5 = afr1Gauge
gauge6 = VBattGauge
gauge7 = dwellGauge
gauge8 = ignadvGauge
; = expression, off-label, on-label, off-bg, off-fg, on-bg, on-fg
; important status
indicator = { ind_hasFatalError }, "", "CRITICAL ERROR", white, black, red, black
indicator = { ind_isWarnNow }, "", "WARNING", white, black, yellow, black
indicator = { ind_check_engine }, "", "Check Engine", white, black, red, black
indicator = { isIgnitionEnabledIndicator}, "no ignition", "ignition", yellow, black, white, black
indicator = { ind_injection_enabled}, "no injection", "injection", yellow, black, white, black
indicator = { ind_isTriggerError}, "trigger ok", "trigger err", white, black, red, black
2020-07-31 20:53:56 -07:00
indicator = { sd_status & 1}, "No SD", "SD in", white, black, green, black
indicator = { sd_status & 4}, "SD ready", "SD ready", white, black, green, black
indicator = { sd_status & 8}, "SD Log", "SD Log", white, black, green, black
indicator = { sd_status & 16}, "SD Err", "SD Err", white, black, red, black
2016-07-20 20:03:00 -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
2020-09-07 08:31:29 -07:00
indicator = { isCylinderCleanupActivated}, "no cyl cleanup", "cyl cleanup", white, black, yellow, black
2017-06-10 11:15:37 -07:00
indicator = { needBurn }, "config ok", "unsaved changes", white, black, yellow, black
2016-07-20 20:03:00 -07:00
indicator = { hasSdCard}, "no SD", "with SD", white, black, green, black
indicator = { ind_fuel_pump}, "pump off", "pump on", white, black, green, black
2016-07-20 20:03:00 -07:00
indicator = { clutchUpState }, "clutch", "cltch Up", white, black, red, black
indicator = { clutchDownState }, "clutch", "cltch Down", white, black, yellow, black
2017-05-15 17:10:27 -07:00
indicator = { brakePedalIndicator }, "brake", "brake down", white, black, red, black
indicator = { acSwitchIndicator }, "AC off", "AC on", white, black, blue, white
2016-07-20 20:03:00 -07:00
; error codes
indicator = { ind_tps_error}, "tps", "tps error", white, black, red, black
indicator = { ind_clt_error}, "clt", "clt error", white, black, red, black
indicator = { ind_iat_error}, "iat", "iat error", white, black, red, black
; not implemented
; indicator = { ind_map_error}, "map", "map error", white, black, red, black
indicator = { ind_pedal_error}, "pedal", "pedal error", white, black, red, black
2016-07-20 20:03:00 -07:00
indicator = { knockEverIndicator }, "", "Knock recently", white, black, red, black
indicator = { knockNowIndicator }, "no knock", "Knock NOW", white, black, red, black
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
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 = 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, "Oil Press", 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"
2017-04-13 20:37:17 -07:00
entry = VBatt, @@GAUGE_NAME_VBAT@@, float, "%.2f"
entry = engineLoad, @@GAUGE_NAME_ENGINE_LOAD@@, float, "%.1f"
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", float, "%.3f"
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"
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"
2016-09-17 18:02:45 -07:00
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_PID_CORR@@, float, "%.2f"
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"
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"
2017-04-13 20:37:17 -07:00
entry = vvtPosition, @@GAUGE_NAME_VVT@@, float,"%.2f"
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
2020-05-09 15:31:41 -07:00
entry = engineMakeCodeNameCrc16, "Engine CRC16",int,"%d"
entry = tuneCrc16, "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"
2019-09-20 16:38:19 -07:00
entry = acSwitchIndicator, @@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, "Desired Gear", int, "%d"
entry = tcuCurrentGear, "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
; tpsADC = U16, "ADC",
2016-07-20 20:03:00 -07:00
; alignmet = U16, "al",
; atmPres = F32, "pres",
; crankingFuel = F32, "ms",
; tCharge = F32, "T",
; sparkDwell = F32, "MAP",
; warmUpEnrich = F32, "%",
[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 = triggerConfiguration, "Trigger"
subMenu = triggerConfiguration_IO, "Advanced Trigger"
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 & rail"
subMenu = fanSetting, "Fan"
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 = 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 = std_separator
# Fuel model
subMenu = afrTableTbl, "Target AFR", 0, {isInjectionEnabled == 1}
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}
; todo: once proven, uncomment and remove from the "broken" menu
; 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"
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, "Ignition advance", 0, {useSeparateAdvanceForCranking == 1}
subMenu = std_separator
subMenu = cltCrankingCurve, "IAC multiplier", 0, {overrideCrankingIacSetting == 1}
menu = "&Idle"
subMenu = idleSettings, "Idle settings"
subMenu = idlehw, "Idle hardware"
subMenu = std_separator
subMenu = cltIdleRPMCurve, "Target RPM", 0, {idleMode == 0}
subMenu = iacPidMultTbl, "IAC PID Multiplier", 0, {idleMode == 0 && useIacPidMultTable == 1}
subMenu = std_separator
subMenu = idleVeCurve, "VE", 0, {useSeparateVeForIdle == 1}
subMenu = idleAdvanceCurve, "Ignition advance", 0, {useSeparateAdvanceForIdle == 1}
2016-07-20 20:03:00 -07:00
subMenu = std_separator
subMenu = idleTimingPidCorrDialog, "Closed-loop idle timing"
subMenu = cltIdleCurve, "CLT multiplier"
subMenu = iacCoastingCurve, "Coasting IAC Position for Auto-Idle", 0, {useIacTableForCoasting == 1}
2020-09-07 08:31:29 -07:00
menu = "&Advanced"
subMenu = boostDialog, "Boost Control"
subMenu = boostPidDialog, "Closed Loop Boost", { boostType == 1 }
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
subMenu = fsioInputsDialog, "FSIO inputs"
subMenu = auxPidDialog, "Aux PID"
2016-07-20 20:03:00 -07:00
subMenu = fsioOutputsDialog, "FSIO outputs"
subMenu = fsioTable1Tbl, "FSIO Table #1"
subMenu = fsioTable2Tbl, "FSIO Table #2"
subMenu = fsioTable3Tbl, "FSIO Table #3"
subMenu = fsioTable4Tbl, "FSIO Table #4"
2017-06-25 23:38:12 -07:00
subMenu = fsioFormulas, "FSIO Formulas"
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
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 = 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 = 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"
subMenu = multisparkSettings, "Multispark", 0, {isIgnitionEnabled == 1}
subMenu = mc33Dialog, "GDI Dreams"
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 = etbDialog, "Electronic throttle body (beta version)" @@if_ts_show_etb
subMenu = etbTpsBiasCurve, "Electronic throttle body bias curve" @@if_ts_show_etb
2019-06-10 20:38:44 -07:00
subMenu = pedalToTpsTbl, "Electronic Pedal Map" @@if_ts_show_etb
2020-09-07 08:31:29 -07:00
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"
cmd_test_spk13 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x0d"
cmd_test_spk14 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x0e"
cmd_test_spk15 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x0f"
cmd_test_spk16 = "@@TS_IO_TEST_COMMAND_char@@\x00\x12\x00\x10"
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"
cmd_test_fsio3 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY@@\x00\x03"
cmd_test_fsio4 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY@@\x00\x04"
cmd_test_fsio5 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY@@\x00\x05"
cmd_test_fsio6 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY@@\x00\x06"
cmd_test_fsio7 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY@@\x00\x07"
cmd_test_fsio8 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY@@\x00\x08"
cmd_test_fsio9 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY@@\x00\x09"
cmd_test_fsio10 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY@@\x00\x0a"
cmd_test_fsio11 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_FSIO_CATEGORY@@\x00\x0b"
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_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_radiator_fan = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@CMD_TS_BENCH_FAN_RELAY_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-08-05 16:57:28 -07:00
cmd_calibrate_tps_1_closed = "@@TS_IO_TEST_COMMAND_char@@\x00\x14\x00\x02"
cmd_calibrate_tps_1_wot = "@@TS_IO_TEST_COMMAND_char@@\x00\x14\x00\x03"
cmd_calibrate_tps_2_closed = "@@TS_IO_TEST_COMMAND_char@@\x00\x14\x00\x04"
cmd_calibrate_tps_2_wot = "@@TS_IO_TEST_COMMAND_char@@\x00\x14\x00\x05"
cmd_calibrate_pedal_up = "@@TS_IO_TEST_COMMAND_char@@\x00\x14\x00\x06"
cmd_calibrate_pedal_down = "@@TS_IO_TEST_COMMAND_char@@\x00\x14\x00\x07"
cmd_tle8888_init = "@@TS_IO_TEST_COMMAND_char@@\x00\x14\x00\x08"
cmd_write_config = "@@TS_IO_TEST_COMMAND_char@@\x00\x14\x00\x0A"
cmd_etb_autotune = "@@TS_IO_TEST_COMMAND_char@@\x00\x14\x00\x0C"
cmd_enable_self_stim = "@@TS_IO_TEST_COMMAND_char@@\x00\x14\x00\x0D"
cmb_etb_auto_calibrate = "@@TS_IO_TEST_COMMAND_char@@\x00\x14\x00\x0E"
cmb_etb_auto_calibrate_2 = "@@TS_IO_TEST_COMMAND_char@@\x00\x14\x00\x11"
2020-08-05 16:57:28 -07:00
cmd_disable_self_stim = "@@TS_IO_TEST_COMMAND_char@@\x00\x14\x00\x0F"
cmd_etb_autotune_stop = "@@TS_IO_TEST_COMMAND_char@@\x00\x14\x00\x10"
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-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-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-06-30 18:29:47 -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-08-05 16:57:28 -07:00
cmd_set_engine_type_Proteus_M73 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@ET_BMW_M73_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 = "Two wire batch emulation", twoWireBatchInjection, {isInjectionEnabled == 1 && injectionMode == 2}
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 = "Two wire wasted", twoWireBatchIgnition, {isIgnitionEnabled == 1 && ignitionMode == 2}
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"
2016-07-20 20:03:00 -07:00
; field = "Engine Preset", engineType
2020-05-06 21:55:59 -07:00
; this field is useful for rusEFI online catalog
2020-05-06 11:00:08 -07:00
field = "Engine Make", engineMake
2020-05-06 21:55:59 -07:00
; this field is useful for rusEFI online catalog
2020-05-07 10:06:39 -07:00
field = "Manufacturer Engine Code", engineCode
; this field is useful for rusEFI online catalog
field = "Vehicle Name", vehicleName
2016-07-20 20:03:00 -07:00
field = "Number of Cylinders", cylindersCount
field = "Engine Displacement", displacement
field = "Firing Order", firingOrder
2020-05-06 21:55:59 -07:00
; this field is useful for rusEFI online catalog
field = "Compression Ratio", compressionRatio
; this field is useful for rusEFI online catalog
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 == 0}, {trigger_type == 0}
field = "Missing/skipped tooth count", trigger_customSkippedToothCount, {trigger_type == 0}, {trigger_type == 0}
; 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 only interesting", displayLogicLevelsInEngineSniffer
dialog = triggerConfiguration_IO, "Advanced Trigger"
2019-03-12 17:09:33 -07:00
field = "!https://rusefi.com/s/vvt"
2016-08-23 20:03:01 -07:00
field = "VVT mode", vvtMode, {trigger_type != 80}
field = "VVT use rise front", vvtCamSensorUseRise, {trigger_type != 80}
2016-11-16 16:02:10 -08:00
field = "VVT position display offset", vvtOffset
2020-08-29 14:05:54 -07:00
field = "print verbose VVT sync details to console",verboseVVTDecoding
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"
field = "!ECU reboot needed to apply these settings"
field = "#Cam is primary if you have cam sensor"
field = "Primary channel", triggerInputPins1
field = "Invert Primary", invertPrimaryTriggerSignal
field = "Secondary channel", triggerInputPins2, { 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, { 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 = "Cam Sync/VVT input", camInputs1
2020-08-29 15:13:00 -07:00
field = "Invert Cam/VVT", invertCamVVTSignal
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}
dialog = fuelParams, "Fuel characteristics", yAxis
field = "Stoichiometric ratio", stoichRatioPrimary, {isInjectionEnabled == 1}
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}
field = "Injection Pin 3", injectionPins3, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 2}
field = "Injection Pin 4", injectionPins4, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 3}
field = "Injection Pin 5 ", injectionPins5, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 4}
field = "Injection Pin 6 ", injectionPins6, {isInjectionEnabled == 1 && injectionMode != 3 && 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 = 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
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
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 = "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 = "Enable Multiple Sparks", multisparkEnable
panel = multisparkMain
panel = multisparkDwellParams
dialog = dwellSettings, "", yAxis
2016-07-20 20:03:00 -07:00
panel = dwellCorrection, Center
; 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@@}
dialog = tpsNum1, "Throttle #1"
2019-04-01 00:43:12 -07:00
field = "!See Tools>Calibrate TPS"
field = "Primary sensor", tps1_1AdcChannel
field = "Primary min", tpsMin, {tps1_1AdcChannel != @@ADC_CHANNEL_NONE@@}
field = "Primary max", tpsMax, {tps1_1AdcChannel != @@ADC_CHANNEL_NONE@@}
field = "Secondary sensor", tps1_2AdcChannel
field = "Secondary min", tps1SecondaryMin, {tps1_2AdcChannel != @@ADC_CHANNEL_NONE@@}
field = "Secondary max", tps1SecondaryMax, {tps1_2AdcChannel != @@ADC_CHANNEL_NONE@@}
commandButton = "Auto Calibrate TPS 1", cmb_etb_auto_calibrate, {tps1_2AdcChannel != @@ADC_CHANNEL_NONE@@ && throttlePedalPositionAdcChannel != @@ADC_CHANNEL_NONE@@}
dialog = tpsNum2, "Throttle #2"
field = "Primary sensor", tps2_1AdcChannel
field = "Primary min", tps2Min, {tps2_1AdcChannel != @@ADC_CHANNEL_NONE@@}
field = "Primary max", tps2Max, {tps2_1AdcChannel != @@ADC_CHANNEL_NONE@@}
field = "Secondary sensor", tps2_2AdcChannel
field = "Secondary min", tps2SecondaryMin, {tps2_2AdcChannel != @@ADC_CHANNEL_NONE@@}
field = "Secondary max", tps2SecondaryMax, {tps2_2AdcChannel != @@ADC_CHANNEL_NONE@@}
commandButton = "Auto Calibrate TPS 2", cmb_etb_auto_calibrate_2, {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
2020-05-23 07:45:15 -07:00
field = "Up voltage" throttlePedalSecondaryUpVoltage
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, "Wastegate 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
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"
field = "Fuel level", fuelLevelSensor
2019-07-21 14:06:16 -07:00
field = "Clutch down switch", clutchDownPin
field = "Clutch down inverted", clutchDownPinMode
2019-07-21 14:06:16 -07:00
field = "Clutch up switch", clutchUpPin
field = "Clutch up inverted", clutchUpPinMode
2019-07-21 14:06:16 -07:00
field = "Throttle Up switch", throttlePedalUpPin
field = "Brake pedal switch", brakePedalPin
field = "A/C switch", acSwitch
field = "A/C switch mode", acSwitchMode
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 = "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 = "FrequencyReportingMapInputPin", frequencyReportingMapInputPin
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
dialog = allPinsMC33, "MC33816"
field = "Chip Select", mc33816_cs
field = rstb, mc33816_rstb
field = flag0, mc33816_flag0
field = mc33816_driven, mc33816_driven
field = mc33816spiDevice, mc33816spiDevice
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
2019-05-25 12:35:25 -07:00
field = high_fuel_pressure_sensor_1, high_fuel_pressure_sensor_1
field = high_fuel_pressure_sensor_2, high_fuel_pressure_sensor_2
2020-10-11 14:47:16 -07:00
field = low_fuel_pressure_sensor, low_fuel_pressure_sensor
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
field = "ETB#1 Control #1", etbIo1_controlPin1 @@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
field = "ETB#2 Control #1", etbIo2_controlPin1 @@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
field = "FSIO dig inp #7", fsioDigitalInputs7
field = "FSIO dig inp #8", fsioDigitalInputs8
field = "FSIO dig inp #9", fsioDigitalInputs9
field = "FSIO dig inp #10", fsioDigitalInputs10
field = "FSIO dig inp #11", fsioDigitalInputs11
field = "FSIO dig inp #12", fsioDigitalInputs12
field = "FSIO dig inp #13", fsioDigitalInputs13
field = "FSIO dig inp #14", fsioDigitalInputs14
field = "FSIO dig inp #15", fsioDigitalInputs15
field = "FSIO dig inp #16", fsioDigitalInputs16
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
field = "output #7", fsioOutputPins7
field = "output #8", fsioOutputPins8
field = "output #9", fsioOutputPins9
field = "output #10", fsioOutputPins10
field = "output #11", fsioOutputPins11
field = "output #12", fsioOutputPins12
field = "output #13", fsioOutputPins13
field = "output #14", fsioOutputPins14
field = "output #15", fsioOutputPins15
field = "output #16", fsioOutputPins16
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
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
field = "Aux Pin #1", auxPidPins1
field = "Aux Pin #2", auxPidPins2
field = "Aux Pin #3", auxPidPins3
field = "Aux 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
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
; 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 }
2018-06-10 01:43:49 -07:00
dialog = mapSensorFreq, "MAP frequency sensor", yAxis
field = "MAP Freq", frequencyReportingMapInputPin
field = "0 kPa freq", mapFrequency0Kpa
field = "100 kpa freq", mapFrequency100Kpa
dialog = mapCommon, "MAP common settings"
field = "frequency-based MAP", hasFrequencyReportingMapSensor
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, {hasFrequencyReportingMapSensor == 0}
panel = mapSensorFreq, {hasFrequencyReportingMapSensor == 1}
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@@}
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
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}
field = "Enable AEM X-Series CANbus", enableAemXSeries, { canReadEnabled }
2020-04-19 12:04:59 -07:00
field = "Enable Innovate LC-2 Serial", enableInnovateLC2, { 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 #1", etbIo1_controlPin1, { etb_use_two_wires == 0 }
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 #1", etbIo2_controlPin1, { etb_use_two_wires == 0}
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"
2020-03-10 11:31:00 -07:00
field = "Drive stepper with dual H bridges", useHbridges, 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
2020-03-10 11:31:00 -07:00
panel = idleStepperHw, { useStepperIdle && !useHbridges }
panel = hbridgeHardware, { useStepperIdle && useHbridges }
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
panel = idleHwType
dialog = idlePidSettings, "PID IAC Control"
field = "#See Idle Target RPM Curve"
field = "use Cic Pid", useCicPidForIdle
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
2020-07-07 19:19:22 -07:00
field = "A/C Offset extra", acIdleExtraOffset
2018-01-07 09:11:49 -08:00
field = "Min", idleRpmPid_minValue
2020-07-07 19:19:22 -07:00
field = "A/C Min extra", acIdleExtraMin
2018-01-07 09:11:49 -08:00
field = "Max", idleRpmPid_maxValue
field = "iTerm Min", idlerpmpid_iTermMin
field = "iTerm Max", idlerpmpid_iTermMax
2019-02-10 19:47:49 -08:00
field = "period", idleRpmPid_periodMs
field = "RPM dead zone to deactivate IAC pid", idlePidRpmDeadZone
field = "RPM upper limit to deactivate IAC pid",idlePidRpmUpperLimit
field = "PID Extra for low RPM", pidExtraForLowRpm
field = "Use IAC PID Multiplier Table", useIacPidMultTable
2018-01-07 09:11:49 -08:00
2016-07-20 20:03:00 -07:00
dialog = idleSettings, "", yAxis
field = "Idle IAC control mode", idleMode
2019-09-10 20:03:55 -07:00
field = useInstantRpmForIdle, useInstantRpmForIdle
field = "use ETB for idle", useETBforIdleControl, { throttlePedalPositionAdcChannel != @@ADC_CHANNEL_NONE@@ }
2019-06-28 14:51:18 -07:00
field = "ETB Idle range", etbIdleThrottleRange, {useETBforIdleControl == 1}
field = "Use separate Ignition Table for idle", useSeparateAdvanceForIdle
field = "Use separate VE Table for idle", useSeparateVeForIdle
field = "Use separate IAC Table For Coasting", useIacTableForCoasting, {idleMode == 0}
field = idleIncrementalPidCic, idleIncrementalPidCic
field = "TPS deactivation threshold", idlePidDeactivationTpsThreshold
2018-01-07 09:11:49 -08:00
panel = idlePidSettings, { idleMode == 0}
field = "Extra IAC if Throttle Pressed", iacByTpsTaper;
2019-04-23 06:10:18 -07:00
field = "Detailed status in console", isVerboseIAC
field = "#See Warmup idle multiplier"
2020-07-11 11:34:51 -07:00
field = "! Solenoid Idle control requires above zero RPM"
slider = "Manual IAC Position", manIdlePosition, horizontal
2016-07-20 20:03:00 -07:00
dialog = idleTimingPidCorrDialog, "", yAxis
field = "!This timing correction mode is Alpha Version"
field = "Use Auto-PID ignition advance control", useIdleTimingPidControl
field = "#See Idle Target RPM Curve"
field = "P-factor", idleTimingPid_pFactor, {useIdleTimingPidControl == 1}
field = "I-factor", idleTimingPid_iFactor, {useIdleTimingPidControl == 1}
field = "D-factor", idleTimingPid_dFactor, {useIdleTimingPidControl == 1}
field = "Offset", idleTimingPid_offset, {useIdleTimingPidControl == 1}
field = "Min Delta", idleTimingPid_minValue, {useIdleTimingPidControl == 1}
field = "Max Delta", idleTimingPid_maxValue, {useIdleTimingPidControl == 1}
field = "period", idleTimingPid_periodMs, {useIdleTimingPidControl == 1}
field = "#See RPM dead zone to deactivate IAC pid"
field = "RPM working zone for timing pid", idleTimingPidWorkZone, {useIdleTimingPidControl == 1}
field = "RPM working zone falloff", idlePidFalloffDeltaRpm, {useIdleTimingPidControl == 1}
field = "RPM dead zone to deactivate timing pid", idleTimingPidDeadZone, {useIdleTimingPidControl == 1}
2016-07-20 20:03:00 -07:00
; Engine->Fan Settings
dialog = fanSetting, "Fan Settings"
field = "Pin", fanPin
field = "Pin mode", fanPinMode
field = "On temperature", fanOnTemperature
field = "Off temperature", fanOffTemperature
2020-06-27 16:37:45 -07:00
; this one has build-in FSIO logic
field = "A/C Relay", acRelayPin
field = "A/C Relay Mode", acRelayPinMode
dialog = fuelPumpConfig, "Fuel Pump"
field = "Pin", fuelPumpPin
field = "Pin mode", fuelPumpPinMode
field = "Prime duration", startUpFuelPumpDuration
dialog = fuelRailConfig, "Fuel Rail"
field = "Absolute Fuel Pressure", absoluteFuelPressure
field = "Fuel Rail pressure", fuelRailPressure, {absoluteFuelPressure == 1}
dialog = fuelPump, ""
panel = fuelPumpConfig
panel = fuelRailConfig
; 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 = softwareKnock, "Software Knock"
field = "Enable", enableSoftwareKnock
field = "Knock filter frequency", knockBandCustom, {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}
2016-07-20 20:03:00 -07:00
; Engine->hip9011 Settings
dialog = hipFunction, "HIP9011 Settings (knock decoder)"
field = "Enabled", isHip9011Enabled
2017-01-28 16:03:06 -08:00
field = "Threshold", knockVThreshold, {isHip9011Enabled == 1}
2016-07-20 20:03:00 -07:00
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, "Short-term fuel trim"
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
2016-07-20 20:03:00 -07:00
dialog = auxPidDialog, "Aux PID"
field = "Enabled", activateAuxPid1
field = "FSIO pin #1", auxPidPins1
field = "PWM Frequency", auxPidFrequency1
2019-04-23 06:10:18 -07:00
field = "Detailed status in console", isVerboseAuxPid1
2016-07-20 20:03:00 -07:00
field = "#target based on FSIO map#1"
2019-02-10 19:47:49 -08:00
field = "control period", auxPid1_periodMs, {activateAuxPid1 == 1}
2016-07-20 20:03:00 -07:00
field = "#PID control"
field = "offset", auxPid1_offset, {activateAuxPid1 == 1}
field = "P factor", auxPid1_pFactor, {activateAuxPid1 == 1}
field = "I factor", auxPid1_iFactor, {activateAuxPid1 == 1}
field = "D factor", auxPid1_dFactor, {activateAuxPid1 == 1}
field = "Min", auxPid1_minValue, {activateAuxPid1 == 1}
field = "Max", auxPid1_maxValue, {activateAuxPid1 == 1}
2016-07-20 20:03:00 -07:00
field = "FSIO pin #2", auxPidPins2
field = "FSIO pin #3", auxPidPins3
field = "FSIO pin #4", auxPidPins4
; Engine->Battery & Alternator
dialog = batteryDialog, "Battery Settings", yAxis
field = "vBatt ADC input", vbattAdcChannel
field = "Battery Input Divider Coefficient", vbattDividerCoeff
dialog = alternator, "Alternator Settings", yAxis
field = "Enabled", isAlternatorControlEnabled
field = "simple on/off mode", onOffAlternatorLogic, {isAlternatorControlEnabled == 1}
field = "Target", targetVBatt, {isAlternatorControlEnabled == 1}
field = "Pin", alternatorControlPin, {isAlternatorControlEnabled == 1}
field = "Pin Mode", alternatorControlPinMode, {isAlternatorControlEnabled == 1}
field = "PWM frequency", alternatorPwmFrequency, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0}
field = "Off Above TPS", alternatorOffAboveTps, {isAlternatorControlEnabled == 1}
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 = speedSensorLeft, "Speed sensor config", yAxis
panel = speedSensorCan, { enableCanVss }
panel = speedSensorAnalog, { enableCanVss == 0 }
field = "Enable CANbus VSS values", enableCanVss, { canReadEnabled }
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 = "Rise at trigger index", tachPulseTriggerIndex
field = "Pulse duration is duty cycle", 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, "TunerStudio Port"
2017-05-19 08:31:21 -07:00
field = "tunerStudioSerialSpeed", tunerStudioSerialSpeed
2019-12-07 18:22:09 -08:00
field = "Use UART/TTL serial?", useSerialPort
field = "TX pin", binarySerialTxPin, {useSerialPort == 1}
2020-05-02 19:06:11 -07:00
field = "RX pin", binarySerialRxPin, {useSerialPort == 1}
2017-05-19 08:31:21 -07:00
field = "uartConsoleSerialSpeed", uartConsoleSerialSpeed
2016-07-20 20:03:00 -07:00
dialog = canBus, "CAN Bus"
field = "Can Read Enabled", canReadEnabled
field = "Can Write Enabled", canWriteEnabled
2020-09-03 20:27:53 -07:00
field = "consumeObdSensors", consumeObdSensors, { canReadEnabled == 1 && canWriteEnabled == 1}
2019-05-01 05:33:14 -07:00
field = "Can Nbc Type", canNbcType
field = "Can Baud Rate", canBaudRate
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
2019-02-10 19:47:49 -08:00
field = "Can Sleep 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 Nbc Type", can2NbcType
field = "Can Baud Rate", can2BaudRate
field = "Enable rusEFI CAN broadcast", enableVerboseCan2Tx
2020-09-03 20:27:53 -07:00
field = "rusEFI CAN data base address", verboseCan2BaseAddress
2020-08-01 20:58:14 -07:00
field = "Can Sleep Period", can2SleepPeriodMs
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
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
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 = " Each X cycle", sensorChartFrequency
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
2020-04-19 18:42:00 -07:00
field = "Warning Text", warning_message
field = "showHumanReadableWarning (affects Burn)", showHumanReadableWarning
dialog = limits, "Limits"
field = "RPM hard limit", rpmHardLimit
field = "Boost cut pressure", boostCutPressure
; Engine->Base Engine Settings
dialog = engineChars, "Base Engine Settings"
2019-03-12 17:22:40 -07:00
topicHelp = "baseHelp"
panel = baseEngineConfig
panel = generalSettings
panel = limits
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 pulse width", cranking_baseFuel, {useRunningMathForCranking == 0}
dialog = crankingIAC, "IAC"
field = "Cranking IAC position", crankingIACposition
field = "After cranking IAC taper duration", afterCrankingIACtaperDuration
field = "Override IAC multiplier for cranking", overrideCrankingIacSetting
2016-07-20 20:03:00 -07:00
dialog = crankingIgnition, "Ignition"
field = "Advance", crankingTimingAngle, {useSeparateAdvanceForCranking == 0}
field = "Use separate Advance Table for cranking", useSeparateAdvanceForCranking
field = "Use Advance Corrections for cranking", useAdvanceCorrectionsForCranking
field = "Use fixed cranking dwell", useConstantDwellDuringCranking
field = "Fixed Cranking Dwell", ignitionDwellForCrankingMs, {useConstantDwellDuringCranking == 1}
field = "Cranking Dwell Angle", crankingChargeAngle, {useConstantDwellDuringCranking == 0}
2016-07-20 20:03:00 -07:00
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
2016-07-20 20:03:00 -07:00
; Cranking->Cranking Settings
dialog = crankingDialog, "Cranking Settings"
2016-07-20 20:03:00 -07:00
field = "Cranking RPM limit", cranking_rpm
field = "Enable cylinder cleanup", isCylinderCleanupEnabled
field = ""
field = "Enable faster engine spin-up", isFasterEngineSpinUpEnabled
panel = primingFuelPulsePanel
panel = crankingFuel
2016-07-20 20:03:00 -07:00
panel = crankingIgnition
panel = crankingIAC
2017-01-13 07:03:24 -08:00
panel = postCrankingEnrichment
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
field = "output #7", fsioOutputPins7
field = "output #8", fsioOutputPins8
field = "output #9", fsioOutputPins9
field = "output #10", fsioOutputPins10
field = "output #11", fsioOutputPins11
field = "output #12", fsioOutputPins12
field = "output #13", fsioOutputPins13
field = "output #14", fsioOutputPins14
field = "output #15", fsioOutputPins15
field = "output #16", fsioOutputPins16
field = "aux valve #1", auxValves1
field = "aux valve #2", auxValves2
2020-03-20 17:45:35 -07:00
field = "Start/Stop Button", startStopButtonPin
field = "External Knock", externalKnockSenseAdc
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 = "freq #7", fsioFrequency7
field = "freq #8", fsioFrequency8
field = "freq #9", fsioFrequency9
field = "freq #10", fsioFrequency10
field = "freq #11", fsioFrequency11
field = "freq #12", fsioFrequency12
field = "freq #13", fsioFrequency13
field = "freq #14", fsioFrequency14
field = "freq #15", fsioFrequency15
field = "freq #16", fsioFrequency16
field = ""
field = ""
dialog = fsioSetting, "Setting"
field = "Set number is not associated with the output number."
field = "Set number, only the cell number with some numbers."
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
field = "set #7", fsio_setting7
field = "set #8", fsio_setting8
field = "set #9", fsio_setting9
field = "set #10", fsio_setting10
field = "set #11", fsio_setting11
field = "set #12", fsio_setting12
field = "set #13", fsio_setting13
field = "set #14", fsio_setting14
field = "set #15", fsio_setting15
field = "set #16", fsio_setting16
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
2020-06-01 04:55:42 -07:00
field = "use FSIO #6 for rev limiter", useFSIO6ForRevLimiter
2017-07-25 17:32:54 -07:00
field = "#6", fsioFormulas6
2020-09-07 08:31:29 -07:00
2017-07-25 17:32:54 -07:00
field = "#7", fsioFormulas7
2020-06-01 04:55:42 -07:00
2018-03-18 09:15:51 -07:00
field = "use FSIO #8 for servo #1", useFSIO8ForServo1
2017-07-25 17:32:54 -07:00
field = "#8", fsioFormulas8
2019-09-11 17:46:50 -07:00
field = "use FSIO #9 for servo #2", useFSIO9ForServo2
2017-07-25 17:32:54 -07:00
field = "#9", fsioFormulas9
2019-09-11 17:46:50 -07:00
field = "use FSIO #10 for servo #3", useFSIO10ForServo3
2017-07-25 17:32:54 -07:00
field = "#10", fsioFormulas10
2019-09-11 17:46:50 -07:00
field = "use FSIO #11 for servo #4", useFSIO11ForServo4
2017-07-25 17:32:54 -07:00
field = "#11", fsioFormulas11
2019-09-11 17:46:50 -07:00
field = "use FSIO #12 for servo #5", useFSIO12ForServo5
field = "use FSIO #12 idle offset", useFSIO12ForIdleOffset
2017-07-25 17:32:54 -07:00
field = "#12", fsioFormulas12
2019-09-11 17:46:50 -07:00
field = "use FSIO #13 idle min value", useFSIO13ForIdleMinValue
2017-07-25 17:32:54 -07:00
field = "#13", fsioFormulas13
field = "#14", fsioFormulas14
2019-05-05 07:47:25 -07:00
field = "use FSIO #15 for target idle RPM adjustment", useFSIO15ForIdleRpmAdjustment
2017-07-25 17:32:54 -07:00
field = "#15", fsioFormulas15
field = "use FSIO #16 for timing adjustment", useFSIO16ForTimingAdjustment
field = "#16", fsioFormulas16
2016-07-20 20:03:00 -07:00
dialog = fsioInputsDialog, "FSIO inputs"
field = "ADC #1", fsioAdc1
field = "ADC #2", fsioAdc2
field = "ADC #3", fsioAdc3
field = "ADC #4", fsioAdc4
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 }
dialog = boostDialog, "", border
panel = boost_left, West
panel = boostTableTbl, Center
;Boost Closed Loop
dialog = boostPidleft, ""
2020-09-07 08:31:29 -07:00
field = "P Gain", boostPid_pFactor, { isBoostControlEnabled && boostType == 1 }
field = "I Gain", boostPid_iFactor, { isBoostControlEnabled && boostType == 1 }
field = "D Gain", boostPid_dFactor, { isBoostControlEnabled && boostType == 1 }
field = "Control Period", boostPid_periodMs, { isBoostControlEnabled && boostType == 1 }
field = "Min Duty", boostPid_minValue, { isBoostControlEnabled && boostType == 1 }
field = "Max Duty", 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
help = veTableDialogHelp, "Volumetric Efficiency"
text = "Volumetric Efficiency is used to calculate fuel in Speed Density mode"
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"
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 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
panel = hbridgeHardware, { throttlePedalPositionAdcChannel != @@ADC_CHANNEL_NONE@@ || (useStepperIdle && useHbridges) }
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'"
commandButton = "Auto Calibrate TPS 1", cmb_etb_auto_calibrate
commandButton = "Auto Calibrate TPS 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@@) }
panel = etbAutotune
; Neutral position handling not yet implemented!
;field = "Neutral Position", etbNeutralPosition
dialog = etbDialog, "Electronic Throttle Body (beta)", 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
2016-07-20 20:03:00 -07:00
commandButton = "Fuel Pump", cmd_test_fuel_pump
commandButton = "Radiator Fan", cmd_test_radiator_fan
commandButton = "Check Engine", cmd_test_check_engine_light
2019-09-14 15:04:32 -07:00
commandButton = "Idle Air Valve", cmd_test_idle_valve
commandButton = "A/C Relay", cmd_test_ac_relay
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
2017-05-01 19:33:20 -07:00
; bench test
2019-02-26 19:32:17 -08:00
dialog = ioTest, "Bench Test & Commands", border
2016-07-20 20:03:00 -07:00
panel = testSpark, West
panel = testInjectors, Center
panel = testMisc, East
2019-01-20 19:17:06 -08:00
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-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-05-21 18:00:34 -07:00
commandButton = "microRusEfi Miata NB2 MAP", cmd_set_engine_type_microRusEFI_Miata_NB2_MAP@@if_show_microRusEFI_presets
commandButton = "microRusEFI Miata NB2 MAF", cmd_set_engine_type_microRusEFI_Miata_NB2_MAF@@if_show_microRusEFI_presets
2020-06-30 18:29:47 -07:00
commandButton = "microRusEFI Defaults", cmd_set_engine_type_microRusEFI_Defaults@@if_show_microRusEFI_presets
2020-08-29 13:49:56 -07:00
commandButton = "microRusEFI B6 test", cmd_set_engine_type_microRusEFI_VW_B6@@if_show_microRusEFI_presets
commandButton = "microRusEFI BCM", cmd_set_engine_type_microRusEFI_MRE_BODY_CONTROL@@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-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
2020-05-22 21:37:43 -07:00
field = "#Please DO NOT hit 'Burn' - just press a command button above and disconnect TunerStudio!"
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
2020-05-01 16:42:09 -07:00
commandButton = "Disable Internal Trigger Simulation", cmd_disable_self_stim
2016-07-20 20:03:00 -07:00
field = ""
field = "digipot spi", digitalPotentiometerSpiDevice
field = "digipot CS #0", digitalPotentiometerChipSelect1
field = "digipot CS #1", digitalPotentiometerChipSelect2
field = "digipot CS #2", digitalPotentiometerChipSelect3
field = "digipot CS #3", digitalPotentiometerChipSelect4
field = ""
field = "trigger stimulator pin #1", triggerSimulatorPins1
field = "trigger stimulator pin mode #1", triggerSimulatorPinModes1
2016-07-20 20:03:00 -07:00
field = "trigger stimulator pin #2", triggerSimulatorPins2
field = "trigger stimulator pin mode #2", triggerSimulatorPinModes2
2016-07-20 20:03:00 -07:00
field = "trigger stimulator pin #3", triggerSimulatorPins3
field = "trigger stimulator pin mode #3", triggerSimulatorPinModes3
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 = ""
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}
2016-07-20 20:03:00 -07:00
2018-03-22 05:12:34 -07:00
dialog = coastingFuelCutControl, "Coasting Fuel Cutoff Settings"
field = "Enable Coasting Fuel Cutoff", coastingFuelCutEnabled
field = "Cutoff Activation RPM High Limit", coastingFuelCutRpmHigh, {coastingFuelCutEnabled == 1}
field = "Cutoff Deactivation RPM Low Limit", coastingFuelCutRpmLow, {coastingFuelCutEnabled == 1}
field = "TPS Deactivation Threshold", coastingFuelCutTps, {coastingFuelCutEnabled == 1}
field = "CLT Activation Threshold", coastingFuelCutClt, {coastingFuelCutEnabled == 1}
field = "MAP Deactivation Threshold", coastingFuelCutMap, {coastingFuelCutEnabled == 1}
dialog = parkingLot, "Experimental/Broken"
field = "#System hacks"
field = "Global fuel correction", globalFuelCorrection
field = "Ignition Math Logic @", ignMathCalculateAtIndex
field = "MAP Averaging Logic @", mapAveragingSchedulingAtIndex
2020-04-09 15:09:17 -07:00
2020-08-31 14:08:04 -07:00
help = helpGeneral, "rusEFI General Help"
2020-04-09 15:09:17 -07:00
webHelp = "http://www.rusefi.com/"
text = "<img src='https://rusefi.com/style/logo_100.gif'>"
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 = ""
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 = ""
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 = ""
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 = ""
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
addTool = afrTableGenerator, "AFR Table Generator", afrTableTbl