mirror of https://github.com/rusefi/rusefi-1.git
4015 lines
214 KiB
Plaintext
4015 lines
214 KiB
Plaintext
; This is a TunerStudio project for the rusEFI.com engine management system
|
|
;
|
|
; 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
|
|
;
|
|
; In TunerStudio some fields have little question mark on the left of the name for additional field tips.
|
|
; Those tips are defined in ../integration/rusefi_config.txt
|
|
;
|
|
; For example
|
|
;
|
|
; 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
|
|
;
|
|
;
|
|
; field = "# blue text"
|
|
; field = "! red text"
|
|
; field = "normal text"
|
|
;
|
|
|
|
; 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]
|
|
; 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
|
|
signature = @@TS_SIGNATURE@@
|
|
|
|
[TunerStudio]
|
|
queryCommand = "S"
|
|
versionInfo = "V" ; firmwave version for title bar.
|
|
signature = @@TS_SIGNATURE@@ ; signature is expected to be 7 or more characters.
|
|
|
|
; TS will try to use legacy temp units in some cases, showing "deg F" on a CLT gauge that's actually deg C
|
|
useLegacyFTempUnits = false
|
|
|
|
; Optimize comms for fast rusefi ECUs
|
|
noCommReadDelay = true;
|
|
defaultRuntimeRecordPerSec = 100;
|
|
maxUnusedRuntimeRange = 1000;
|
|
|
|
; Set default IP/port to our IP/port
|
|
defaultIpAddress = 192.168.10.1;
|
|
defaultIpPort = 29000;
|
|
|
|
[Constants]
|
|
; new packet serial format with CRC
|
|
messageEnvelopeFormat = msEnvelope_1.0
|
|
|
|
endianness = little
|
|
nPages = 1
|
|
|
|
pageIdentifier = "\x00\x00"
|
|
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"
|
|
|
|
;communication settings
|
|
pageActivationDelay = 500 ; Milliseconds delay after burn command. See https://sourceforge.net/p/rusefi/tickets/77/
|
|
;e.g. put writeblocks off and add an interwrite delay
|
|
writeBlocks = on
|
|
interWriteDelay = 10
|
|
blockReadTimeout = 3000; Milliseconds general timeout
|
|
|
|
; delayAfterPortOpen = 500
|
|
|
|
blockingFactor = @@BLOCKING_FACTOR@@ ; max chunk size
|
|
;end communication settings
|
|
|
|
; name = bits, type, offset, bits
|
|
; name = array, type, offset, shape, units, scale, translate, lo, hi, digits
|
|
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
|
|
|
|
; CONFIG_DEFINITION_START
|
|
|
|
; this section will be generated automatically by ConfigDefinition.jar based on rusefi_config.txt
|
|
|
|
; CONFIG_DEFINITION_END
|
|
idleRpmPid_offset = "Constant base value"
|
|
|
|
[Tuning]
|
|
spotDepth = 2 ; 0 = no indicators, 1 = Z only, 2 = XYZ indicators.
|
|
cursorDepth = 2 ; Same as spot depth.
|
|
|
|
gaugeColumns = 1 ; Only 1 or 2 are valid.
|
|
|
|
pageButtons = "&EGO"
|
|
gauge1 = RPMGauge
|
|
#if LAMBDA
|
|
gauge2 = lambda1Gauge
|
|
#else
|
|
gauge2 = afr1Gauge
|
|
#endif
|
|
gauge3 = MAPGauge
|
|
gauge4 = veValueGauge
|
|
|
|
|
|
[LoggerDefinition]
|
|
; valid logger types: composite, tooth, trigger, csv
|
|
; loggerDef = compositeLogger, "Primary Trigger Logger", tooth
|
|
loggerDef = compositeLogger, "Trigger Logger", composite
|
|
startCommand = "l\x01"
|
|
stopCommand = "l\x02"
|
|
dataReadCommand = "L"
|
|
dataReadTimeout = 10000 ; time in ms
|
|
dataReadyCondition = { toothLogReady }
|
|
continuousRead = true
|
|
; each packet is @@COMPOSITE_PACKET_SIZE@@ and we have @@COMPOSITE_PACKET_COUNT@@ of those
|
|
dataLength = @@COMPOSITE_DATA_LENGTH_HALF@@
|
|
|
|
;tooth
|
|
; recordDef = headerLen, footerLen, recordLen
|
|
; recordDef = 0, 0, @@COMPOSITE_PACKET_SIZE@@
|
|
|
|
; uint16 that stores 1/100 second
|
|
; recordField = toothTime, "tooth", 0, 16, 0.01, "ms"
|
|
|
|
|
|
; recordDef = headerLen, footerLen, recordLen
|
|
recordDef = 0, 0, @@COMPOSITE_PACKET_SIZE@@
|
|
|
|
; these names are hard-coded inside TS
|
|
recordField = priLevel, "PriLevel", 0, 1, 1.0, "Flag"
|
|
recordField = secLevel, "SecLevel", 1, 1, 1.0, "Flag"
|
|
recordField = trigger, "Trigger", 2, 1, 1.0, "Flag"
|
|
recordField = sync, "Sync", 3, 1, 1.0, "Flag"
|
|
recordField = coil, "Coil", 4, 1, 1.0, "Flag"
|
|
recordField = inj, "Injector", 5, 1, 1.0, "Flag"
|
|
recordField = time, "Time", 8, 32, 0.001, "ms"
|
|
|
|
; it seems that TS also needs to know the diff.size of a tooth
|
|
calcField = toothTime, "ToothTime", "ms", { time - pastValue(time, 1) }
|
|
|
|
|
|
[VeAnalyze]
|
|
|
|
; tableName, lambdaTargetTableName, lambdaChannel, egoCorrectionChannel, activeCondition
|
|
#if LAMBDA
|
|
veAnalyzeMap = veTableTbl, lambdaTableTbl, lambdaValue, egoCorrectionForVeAnalyze, { 1 }
|
|
lambdaTargetTables = lambdaTableTbl, afrTSCustom
|
|
#else
|
|
veAnalyzeMap = veTableTbl, afrTableTbl, AFRValue, egoCorrectionForVeAnalyze, { 1 }
|
|
lambdaTargetTables = afrTableTbl, afrTSCustom
|
|
#endif
|
|
|
|
; filter = Name, "DisplayName", outputChannel, operator, defaultVal, userAdjustable
|
|
filter = minRPMFilter, "Minimum RPM", RPMValue, < , 500, , true
|
|
|
|
filter = minCltFilter, "Minimum CLT", coolant, < , 60, , true
|
|
|
|
filter = deltaTps, "dTPS", deltaTps > , 50, , true
|
|
|
|
filter = VBatt, "VBatt", VBatt < , 12, , true
|
|
|
|
filter = minTps, "Minimum TPS", TPSValue, < , 1, , true
|
|
|
|
|
|
;
|
|
; in order to add new TunerStudio gauge you need to chagne two places
|
|
; 1) add a line here in '[OutputChannels]'
|
|
; 2) in rusEFI firmware make a change to output_channels.txt
|
|
;
|
|
[OutputChannels]
|
|
|
|
ochGetCommand = "O%2o%2c"
|
|
|
|
; see TS_OUTPUT_SIZE in console source code
|
|
ochBlockSize = @@TS_TOTAL_OUTPUT_SIZE@@
|
|
|
|
;
|
|
; see TunerStudioOutputChannels struct
|
|
;
|
|
|
|
@@OUTPUTS_SECTION_FROM_FILE@@
|
|
|
|
time = { timeNow }
|
|
|
|
egoCorrectionForVeAnalyze = { 100 + fuelPidCorrection1 }
|
|
|
|
; These "synthetic" channels provide the Y-axis (load) value for gen purp PWM table's Y axes
|
|
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]
|
|
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 :)
|
|
; https://rusefi.com/wiki/index.php?title=Manual:Debug_fields
|
|
; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT1 PID Cranking Ignition Timing Fu Corr VSS SD Card Knock Wall Wetting ETB PID Executor InstantRpm CJ125 CAN MAP TLE8888 Analog inputs 2 Start ETB Autotune DYNO_VIEW LOGIC_ANALYZER Wideband TCU Lua VVT2 PID VVT3 PID VVT4 PID
|
|
; 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
|
; DBG_ALTERNATOR_PID DBG_TPS_ACCEL DBG_GPPWM DBG_IDLE_CONTROL
|
|
debugFieldF1List = bits, U08, [0:7], "Alt: Controller Output", "From TPS", "GPPWM 1", "Idle: Controller Output", "Idle output", " ", "", "VVT1: Controller Output"," ", "", "Ign IAT Corr", "", "", "Total SD", "last volts", "", "WW: Alpha", "ETB Controller Output", "", "", "df1", "df1", "InstantRpm", "", "24:df1", "CJ125: output", "", "MAP Average", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "","S unused" "", "Osc Amplitude", "", "", "", "" , "VSS", "", "WB: Pump DAC duty", "", "Lua Debug 1", "VVT2: Controller Output","VVT3: Controller Output","VVT4: Controller Output"
|
|
debugFieldF2List = bits, U08, [0:7], "Alt: I Term", "To TPS", "GPPWM 2", "Idle: I Term", "Idle df2", " ", "", "VVT1: I Term", " ", "", "Ign CLT Corr", "", "", "Write Cnt","last filtered","", "WW: Beta", "ETB I Term", "", "", "df2", "df2", "InstantRPM Ratio","", "24:df2", "CJ125: i term", "", "MAP Duration", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "","S unused" "", "Duty Amplitude", "", "", "", "" , "Speed", "", "WB: ESR", "", "Lua Debug 2", "VVT2: I Term", "VVT3: I Term", "VVT4: I Term"
|
|
debugFieldF3List = bits, U08, [0:7], "Alt: Previous Error", "Current TPS<>TPS", "GPPWM 3", "Idle: prev error", "Idle df3", "ICU sum", "", "VVT1: prev error", "", "", "", "", "", "Sync Cnt", "", "", "WW: film mass", "ETB err", "", "", "df3", "df3", "22df3", "", "24:df3", "CJ125: err", "", "MAP Fast", "", "", "", "", "TPS1/2 Diff", "", "", "", "","S unused" "", "Tu", "", "", "", "" , "DeltaSpeed", "", "WB: Nernst Voltage", "", "Lua Debug 3", "VVT2: prev error", "VVT3: prev error", "VVT4: prev error"
|
|
debugFieldF4List = bits, U08, [0:7], "Alt: I Gain", "Extra Fuel", "GPPWM 4", "Idle: I Gain", "Idle df4", " ", "", "VVT1: I Gain", "", "", "Ign PID Adj", "", "", "File Cnt", "", "", "WW: m_cmd", "ETB I setting", "", "", "df4", "df4", "22df4", "", "24:df4", "CJ125: UA", "", "MAP Estimate", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "","S unused" "", "Ku", "", "", "", "", "accel", "", "WB: Lambda", "", "Lua Debug 4", "VVT2: I Gain", "VVT3: I Gain", "VVT4: I Gain"
|
|
debugFieldF5List = bits, U08, [0:7], "Alt: D Gain", "df5", "df5", "Idle: D Gain", "Idle df5", " ", "df5", "VVT1: D Gain", "", "", "", "", "", "", "", "", "WW: film mass next","ETB D setting", "df5", "df5", "df5", "df5", "22df5", "", "24:df5", "CJ125: UR", "", "MAP Instant", "", "", "", "", "TPS1 Pri/Sec Ratio", "", "", "", "","S unused" "", "Kp", "", "", "", "", "", "", "", "", "Lua Debug 5", "VVT2: D Gain", "VVT3: D Gain", "VVT4: D Gain"
|
|
debugFieldF6List = bits, U08, [0:7], "Alt: D Term", "", "", "Idle: D Term", "Idle df6", " ", "", "VVT1: D Term", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "","S unused" "", "Ki", "", "", "", "", "", "", "", "", "Lua Debug 6", "VVT2: D Term", "VVT3: D Term", "VVT4: D Term"
|
|
debugFieldF7List = bits, U08, [0:7], "Alt: Max-Value", "", "", "Idle: Max-Value", "Idle df7", "", "", "VVT1: Max-Value", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "","S unused" "", "Kd", "", "", "", "", "", "", "", "", "Lua Debug 7", "", "", ""
|
|
debugFieldI1List = bits, U08, [0:7], "Alt: P Gain", "", "", "Idle: P Gain", "Idle di1", " ", "", "VVT1: P Gain", " ", "Cycle Counter", "Multispark Count", "", "", "", "hip corr", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "Spark Event Gap","", "24:di1", "CJ125: state", "read count","MAP counter", "", "", "", "SPI Counter", "", "", "", "", "","Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "Lua memory used","VVT2: P Gain", "VVT3: P Gain", "VVT4: P Gain"
|
|
debugFieldI2List = bits, U08, [0:7], "Alt: Offset", "", "", "Idle: Offset", "Idle di2", " ", "", "VVT1: Offset", "", "", "", "", "", "", "hip incor", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "Inj Event Gap", "", "24:di2", "", "write count","MAP raw ADC", "", "", "", "Latest Transmit","", "", "", "", "","Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "", "VVT2: Offset", "VVT3: Offset", "VVT4: Offset"
|
|
debugFieldI3List = bits, U08, [0:7], "Alt: Reset Cnt", "", "", "Idle: Reset Cnt", "Idle di3", " ", "", "VVT1: 10xTarget", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "","Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "", "VVT2: 10xTarger", "VVT3: 10xTarger", "VVT4: 10xTarger"
|
|
debugFieldI4List = bits, U08, [0:7], "Alt: Period", "", "", "Idle: State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "","" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "", "", "", ""
|
|
debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "", "di5", "di5", "di5", "","" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "", "", "", ""
|
|
|
|
[ConstantsExtensions]
|
|
; 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
|
|
|
|
; this magic is best described in output_channels.txt search for 'maintainConstantValue'
|
|
; TPS 1 Primary
|
|
maintainConstantValue = tpsMax, { (calibrationMode == @@TsCalMode_Tps1Max@@ ) ? calibrationValue : tpsMax }
|
|
maintainConstantValue = tpsMin, { (calibrationMode == @@TsCalMode_Tps1Min@@ ) ? calibrationValue : tpsMin }
|
|
|
|
; 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 == @@TsCalMode_Tps2SecondaryMax@@ ) ? calibrationValue : tps2SecondaryMax }
|
|
maintainConstantValue = tps2SecondaryMin, { (calibrationMode == @@TsCalMode_Tps2SecondaryMin@@ ) ? 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 }
|
|
|
|
maintainConstantValue = throttlePedalUpVoltage, { (calibrationMode == @@TsCalMode_PedalMin@@ ) ? calibrationValue : throttlePedalUpVoltage }
|
|
maintainConstantValue = throttlePedalSecondaryUpVoltage, { (calibrationMode == @@TsCalMode_PedalMin@@ ) ? calibrationValue2 : throttlePedalSecondaryUpVoltage }
|
|
|
|
maintainConstantValue = throttlePedalWOTVoltage, { (calibrationMode == @@TsCalMode_PedalMax@@ ) ? calibrationValue : throttlePedalWOTVoltage }
|
|
maintainConstantValue = throttlePedalSecondaryWOTVoltage,{ (calibrationMode == @@TsCalMode_PedalMax@@ ) ? calibrationValue2 : throttlePedalSecondaryWOTVoltage }
|
|
|
|
requiresPowerCycle = useETBforIdleControl
|
|
requiresPowerCycle = warningLedPin
|
|
requiresPowerCycle = runningLedPin
|
|
requiresPowerCycle = binarySerialTxPin
|
|
requiresPowerCycle = binarySerialRxPin
|
|
requiresPowerCycle = useSerialPort
|
|
requiresPowerCycle = tunerStudioSerialSpeed
|
|
requiresPowerCycle = auxSerialRxPin
|
|
requiresPowerCycle = auxSerialTxPin
|
|
|
|
requiresPowerCycle = etb_use_two_wires
|
|
requiresPowerCycle = etbFreq
|
|
requiresPowerCycle = etbFunctions1
|
|
requiresPowerCycle = etbFunctions2
|
|
|
|
requiresPowerCycle = idle_solenoidFrequency
|
|
requiresPowerCycle = boostPwmFrequency
|
|
requiresPowerCycle = alternatorPwmFrequency
|
|
requiresPowerCycle = vvtOutputFrequency1
|
|
requiresPowerCycle = vvtOutputFrequency2
|
|
requiresPowerCycle = vvtPins1
|
|
requiresPowerCycle = vvtPins2
|
|
requiresPowerCycle = vvtPins3
|
|
requiresPowerCycle = vvtPins4
|
|
|
|
requiresPowerCycle = auxAnalogInputs1
|
|
requiresPowerCycle = auxAnalogInputs2
|
|
requiresPowerCycle = auxAnalogInputs3
|
|
requiresPowerCycle = auxAnalogInputs4
|
|
requiresPowerCycle = auxAnalogInputs5
|
|
requiresPowerCycle = auxAnalogInputs6
|
|
requiresPowerCycle = auxAnalogInputs7
|
|
requiresPowerCycle = auxAnalogInputs8
|
|
|
|
readOnly = warning_message
|
|
|
|
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
|
|
|
|
|
|
[CurveEditor]
|
|
; xAxis = leftValue, rightValue, step
|
|
; yAxis = bottomValue, topValue, step
|
|
|
|
curve = knockThresholdCurve, "Engine knock threshold RPM based"
|
|
columnLabel = "RPM", "Threshold"
|
|
xAxis = 0, 8000, 9
|
|
yAxis = 0, 8, 10
|
|
xBins = knockNoiseRpmBins, RPMValue
|
|
yBins = knockBaseNoise
|
|
gauge = RPMGauge
|
|
|
|
curve = narrowToWideOxygenCurve, "Narrow to Wideband approximation"
|
|
columnLabel = "Voltage", "AFR"
|
|
xAxis = 0, 6, 10
|
|
yAxis = 0, 28, 10
|
|
xBins = narrowToWideOxygenBins
|
|
yBins = narrowToWideOxygen
|
|
#if LAMBDA
|
|
gauge = lambda1Gauge
|
|
#else
|
|
gauge = afr1Gauge
|
|
#endif
|
|
|
|
curve = scriptCurve1, "Script Curve #1"
|
|
columnLabel = "X", "Y"
|
|
xAxis = 0, 128, 10
|
|
yAxis = -155, 150, 10
|
|
xBins = scriptCurve1Bins
|
|
yBins = scriptCurve1
|
|
showTextValues = true
|
|
|
|
curve = scriptCurve2, "Script Curve #2"
|
|
columnLabel = "X", "Y"
|
|
xAxis = 0, 128, 10
|
|
yAxis = -150, 150, 10
|
|
xBins = scriptCurve2Bins
|
|
yBins = scriptCurve2
|
|
showTextValues = true
|
|
|
|
curve = scriptCurve3, "Script Curve #3"
|
|
columnLabel = "X", "Y"
|
|
xAxis = 0, 128, 10
|
|
yAxis = -5, 5, 10
|
|
xBins = scriptCurve3Bins
|
|
yBins = scriptCurve3
|
|
showTextValues = true
|
|
|
|
curve = scriptCurve4, "Script Curve #4"
|
|
columnLabel = "X", "Y"
|
|
xAxis = 0, 128, 10
|
|
yAxis = -5, 5, 10
|
|
xBins = scriptCurve4Bins
|
|
yBins = scriptCurve4
|
|
showTextValues = true
|
|
|
|
curve = scriptCurve5, "Script Curve #5"
|
|
columnLabel = "X", "Y"
|
|
xAxis = 0, 128, 10
|
|
yAxis = -5, 5, 10
|
|
xBins = scriptCurve5Bins
|
|
yBins = scriptCurve5
|
|
showTextValues = true
|
|
|
|
curve = scriptCurve6, "Script Curve #6"
|
|
columnLabel = "X", "Y"
|
|
xAxis = 0, 128, 10
|
|
yAxis = -5, 5, 10
|
|
xBins = scriptCurve6Bins
|
|
yBins = scriptCurve6
|
|
showTextValues = true
|
|
|
|
curve = dwellCorrection, "Dwell time base"
|
|
columnLabel = "RPM", "Dwell"
|
|
xAxis = 0, 8000, 9
|
|
yAxis = 0, 8, 9
|
|
xBins = sparkDwellRpmBins, RPMValue
|
|
yBins = sparkDwellValues
|
|
gauge = RPMGauge
|
|
|
|
curve = dwellVoltageCorrection, "Dwell voltage correction"
|
|
columnLabel = "Battery Volts", "Multiplier"
|
|
xAxis = 6, 16, 11
|
|
yAxis = 0, 3, 7
|
|
xBins = dwellVoltageCorrVoltBins, VBatt
|
|
yBins = dwellVoltageCorrValues
|
|
gauge = VBattGauge
|
|
|
|
curve = primingPulse, "Priming pulse fuel mass"
|
|
columnLabel = "Coolant", "Prime Pulse"
|
|
xAxis = -40, 120, 9
|
|
yAxis = 0, 1000, 9
|
|
xBins = primeBins, coolant
|
|
yBins = primeValues
|
|
gauge = CLTGauge
|
|
|
|
curve = map_samplingAngleCurve, "MAP Sampling Start Angle"
|
|
columnLabel = "RPM", "Angle"
|
|
xAxis = 0, 8000, 9
|
|
yAxis = 0, 180, 10
|
|
xBins = map_samplingAngleBins, RPMValue
|
|
yBins = map_samplingAngle
|
|
gauge = MAPGauge
|
|
|
|
curve = map_samplingWindowCurve, "MAP Sampling Duration"
|
|
columnLabel = "RPM", "Window"
|
|
xAxis = 0, 8000, 9
|
|
yAxis = 0, 180, 10
|
|
xBins = map_samplingWindowBins, RPMValue
|
|
yBins = map_samplingWindow
|
|
gauge = MAPGauge
|
|
|
|
curve = injectorsDeadTime, "Injector dead time"
|
|
columnLabel = "Battery", "Dead Time"
|
|
xAxis = 6, 16, 11
|
|
yAxis = 0, 8, 9
|
|
xBins = injector_battLagCorrBins, VBatt
|
|
yBins = injector_battLagCorr
|
|
gauge = VBattGauge
|
|
|
|
curve = vrThresholdCurve1, "VR 1 Threshold"
|
|
columnLabel = "RPM", "Voltage"
|
|
xAxis = 0, 8000, 9
|
|
yAxis = 0, 2.5, 6
|
|
xBins = vrThreshold1_rpmBins, RPMValue
|
|
yBins = vrThreshold1_values
|
|
|
|
curve = vrThresholdCurve2, "VR 2 Threshold"
|
|
columnLabel = "RPM", "Voltage"
|
|
xAxis = 0, 8000, 9
|
|
yAxis = 0, 2.5, 6
|
|
xBins = vrThreshold2_rpmBins, RPMValue
|
|
yBins = vrThreshold2_values
|
|
|
|
curve = mafDecodingCurve, "MAF sensor"
|
|
columnLabel = "Voltage", "kg/hour"
|
|
xAxis = -1, 6, 10
|
|
yAxis = -30, 1300, 10
|
|
xBins = mafDecodingBins, rawMaf
|
|
yBins = mafDecoding
|
|
gauge = rawMafGauge
|
|
|
|
curve = iatFuelCorrCurve, "Intake air temperature fuel Multiplier"
|
|
columnLabel = "Air Temp", "Multiplier"
|
|
xAxis = -40, 120, 9
|
|
yAxis = 0, 2, 11
|
|
xBins = iatFuelCorrBins, intake
|
|
yBins = iatFuelCorr
|
|
gauge = IATGauge
|
|
|
|
curve = cltTimingCorrCurve, "Warmup timing correction"
|
|
columnLabel = "Coolant", "Extra"
|
|
xAxis = -40, 120, 9
|
|
yAxis = 0, 20, 9
|
|
xBins = cltTimingBins, coolant
|
|
yBins = cltTimingExtra
|
|
gauge = CLTGauge
|
|
|
|
curve = cltFuelCorrCurve, "Warmup fuel manual Multiplier"
|
|
columnLabel = "Coolant", "Multiplier"
|
|
xAxis = -40, 120, 9
|
|
yAxis = 0, 3, 10
|
|
xBins = cltFuelCorrBins, coolant
|
|
yBins = cltFuelCorr
|
|
gauge = CLTGauge
|
|
|
|
curve = crankingCltCurve, "Cranking Coolant Temperature Multiplier"
|
|
columnLabel = "Coolant", "Multiplier"
|
|
xAxis = -40, 120, 9
|
|
yAxis = 0, 3, 10
|
|
xBins = crankingFuelBins, coolant
|
|
yBins = crankingFuelCoef
|
|
gauge = CLTGauge
|
|
|
|
curve = crankingCltCurveE100, "Cranking Coolant Temperature Multiplier (Flex Fuel E85)"
|
|
columnLabel = "Coolant", "Multiplier"
|
|
xAxis = -40, 120, 9
|
|
yAxis = 0, 3, 10
|
|
xBins = crankingFuelBins, coolant
|
|
yBins = crankingFuelCoefE100
|
|
gauge = CLTGauge
|
|
|
|
curve = etbTpsBiasCurve, "Electronic TB Bias Curve"
|
|
columnLabel = "TPS", "duty bias"
|
|
xAxis = 0, 50, 11
|
|
yAxis = -40, 40, 9
|
|
xBins = etbBiasBins, TPSValue
|
|
yBins = etbBiasValues
|
|
gauge = TPSGauge
|
|
|
|
curve = crankingTpsCurve, "Cranking TPS Multiplier"
|
|
columnLabel = "TPS", "Multiplier"
|
|
xAxis = 0, 100, 11
|
|
yAxis = 0, 3, 10
|
|
xBins = crankingTpsBins, TPSValue
|
|
yBins = crankingTpsCoef
|
|
gauge = TPSGauge
|
|
|
|
curve = crankingDurationCurve, "Cranking Duration Multiplier"
|
|
columnLabel = "Engine Cycle", "Multiplier"
|
|
xAxis = 0, 50, 11
|
|
yAxis = 0, 5, 6
|
|
xBins = crankingCycleBins
|
|
yBins = crankingCycleCoef
|
|
|
|
|
|
curve = cltIdleCurve, "Warmup Idle multiplier"
|
|
columnLabel = "Coolant", "Multiplier"
|
|
xAxis = -40, 120, 10
|
|
yAxis = 0, 3, 10
|
|
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
|
|
|
|
curve = cltCrankingCurve, "Cranking Idle Air multiplier"
|
|
columnLabel = "Coolant", "Multiplier"
|
|
xAxis = -40, 120, 9
|
|
yAxis = 0, 3, 10
|
|
xBins = cltCrankingCorrBins, coolant
|
|
yBins = cltCrankingCorr
|
|
gauge = CLTGauge
|
|
|
|
curve = cltIdleRPMCurve, "Idle Target RPM"
|
|
columnLabel = "Coolant", "RPM"
|
|
xAxis = -40, 120, 9
|
|
yAxis = 0, 2400, 13
|
|
xBins = cltIdleRpmBins, coolant
|
|
yBins = cltIdleRpm, RPMValue
|
|
gauge = CLTGauge
|
|
|
|
curve = idleAdvanceCurve, "Idle Advance Angle"
|
|
columnLabel = "RPM", "degrees"
|
|
xAxis = 0, 2400, 13
|
|
yAxis = -100, 100, 11
|
|
xBins = idleAdvanceBins, RPMValue
|
|
yBins = idleAdvance
|
|
gauge = RPMGauge
|
|
|
|
curve = crankingAdvanceCurve, "Cranking Advance Angle"
|
|
columnLabel = "RPM", "degrees"
|
|
xAxis = 0, 1200, 13
|
|
yAxis = -30, 30, 11
|
|
xBins = crankingAdvanceBins, RPMValue
|
|
yBins = crankingAdvance
|
|
gauge = RPMGauge
|
|
|
|
curve = fuelLevelCurve, "Fuel Level"
|
|
columnLabel = "Voltage", "%"
|
|
xAxis = 0, 5, 6
|
|
yAxis = 0, 100, 11
|
|
xBins = fuelLevelBins
|
|
yBins = fuelLevelValues
|
|
gauge = fuelTankLevelGauge
|
|
|
|
curve = wueAfrTargetOffsetCurve, "AFR Target Temperature Adjustment"
|
|
columnLabel = "Coolant", "AFR Offset"
|
|
xAxis = -40, 200, 9
|
|
yAxis = -3, 1, 5
|
|
xBins = cltFuelCorrBins, coolant
|
|
yBins = wueAfrTargetOffset
|
|
gauge = cltGauge
|
|
|
|
curve = wueAnalyzer_warmup_curve, "Warmup Enrichment"
|
|
columnLabel = "Coolant", "Current WUE", "Coolant", "Corrected"
|
|
xAxis = -40, 200, 9
|
|
yAxis = 90, 500, 6
|
|
xBins = cltFuelCorrBins, coolant
|
|
yBins = cltFuelCorr
|
|
yBins = wueAnalRecommend
|
|
;gauge = cltGauge
|
|
|
|
lineLabel = "Warmup Correction"
|
|
lineLabel = "Recommended WUE"
|
|
|
|
curve = hpfpLobeProfileCurve, "HPFP Lobe Profile"
|
|
columnLabel = "% pump volume", "angle"
|
|
xAxis = 0, 100, 11
|
|
yAxis = 0, 240, 13
|
|
xBins = hpfpLobeProfileQuantityBins
|
|
yBins = hpfpLobeProfileAngle
|
|
|
|
curve = hpfpDeadtimeCurve, "HPFP Valve Deadtime"
|
|
columnLabel = "volts", "ms"
|
|
xAxis = 5, 15, 11
|
|
yAxis = 0, 5, 6
|
|
xBins = hpfpDeadtimeVoltsBins
|
|
yBins = hpfpDeadtimeMS
|
|
|
|
curve = wwTauCltCurve, "Evap time vs. CLT"
|
|
columnLabel = "coolant", "seconds"
|
|
xAxis = -40, 120, 9
|
|
yAxis = 0, 2, 9
|
|
xBins = wwCltBins, coolant
|
|
yBins = wwTauCltValues
|
|
gauge = CLTGauge
|
|
|
|
curve = wwTauMapCurve, "Evap time vs. MAP"
|
|
columnLabel = "MAP", "mult"
|
|
xAxis = 0, 100, 5
|
|
yAxis = 0, 2, 9
|
|
xBins = wwMapBins, MAPValue
|
|
yBins = wwTauMapValues
|
|
gauge = MAPGauge
|
|
|
|
curve = wwBetaCltCurve, "Impact fraction vs. CLT"
|
|
columnLabel = "coolant", "fraction"
|
|
xAxis = -40, 120, 9
|
|
yAxis = 0, 2, 9
|
|
xBins = wwCltBins, coolant
|
|
yBins = wwBetaCltValues
|
|
gauge = CLTGauge
|
|
|
|
curve = wwBetaMapCurve, "Impact fraction vs. MAP"
|
|
columnLabel = "MAP", "mult"
|
|
xAxis = 0, 100, 5
|
|
yAxis = 0, 2, 9
|
|
xBins = wwMapBins, MAPValue
|
|
yBins = wwBetaMapValues
|
|
gauge = MAPGauge
|
|
|
|
curve = tchargeCurve, "Charge temperature estimation coefficient"
|
|
columnLabel = "flow", "coefficient"
|
|
xAxis = 0, 500, 6
|
|
yAxis = 0, 100, 5
|
|
xBins = tchargeBins, mafEstimate
|
|
yBins = tchargeValues
|
|
gauge = tChargeGauge
|
|
|
|
curve = tccLockCurve, "TCC Lock Curve"
|
|
columnLabel = "TPS", "Lock Speed", "Unlock Speed"
|
|
xAxis = 0, 100, 10
|
|
yAxis = 0, 100, 10
|
|
xBins = tcu_tccTpsBins, TPSValue
|
|
yBins = tcu_tccLockSpeed
|
|
yBins = tcu_tccUnlockSpeed
|
|
gauge = TPSGauge
|
|
|
|
curve = pcPerGearCurve, "Transmission Line Pressure Control"
|
|
columnLabel = "Airmass", ""
|
|
xAxis = 0, 5, 10
|
|
yAxis = 0, 100, 10
|
|
xBins = tcu_pcAirmassBins, chargeAirMass
|
|
yBins = tcu_pcValsR
|
|
yBins = tcu_pcValsN
|
|
yBins = tcu_pcVals1
|
|
yBins = tcu_pcVals2
|
|
yBins = tcu_pcVals3
|
|
yBins = tcu_pcVals4
|
|
lineLabel = "R%"
|
|
lineLabel = "N%"
|
|
lineLabel = "1%"
|
|
lineLabel = "2%"
|
|
lineLabel = "3%"
|
|
lineLabel = "4%"
|
|
|
|
curve = pcPerShiftCurve, "Transmission Line Pressure Control - Shift"
|
|
columnLabel = "Airmass", ""
|
|
xAxis = 0, 5, 10
|
|
yAxis = 0, 100, 10
|
|
xBins = tcu_pcAirmassBins, chargeAirMass
|
|
yBins = tcu_pcVals12
|
|
yBins = tcu_pcVals23
|
|
yBins = tcu_pcVals34
|
|
yBins = tcu_pcVals21
|
|
yBins = tcu_pcVals32
|
|
yBins = tcu_pcVals43
|
|
lineLabel = "1->2%"
|
|
lineLabel = "2->3%"
|
|
lineLabel = "3->4%"
|
|
lineLabel = "2->1%"
|
|
lineLabel = "3->2%"
|
|
lineLabel = "4->3%"
|
|
|
|
curve = 32Curve, "3-2 Shift Solenoid Percent by Speed"
|
|
columnLabel = "Speed", "%"
|
|
xAxis = 0, 200, 20
|
|
yAxis = 0, 100, 10
|
|
xBins = tcu_32SpeedBins, vehicleSpeedKph
|
|
yBins = tcu_32Vals
|
|
|
|
[TableEditor]
|
|
; table_id, map3d_id, "title", page
|
|
|
|
; 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"
|
|
xBins = tpsTpsAccelFromRpmBins, TPSValue
|
|
yBins = tpsTpsAccelToRpmBins, TPSValue
|
|
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
|
|
|
|
table = vvtTable1Tbl, vvtTable1Map, "Intake VVT closed loop Target", 1
|
|
xBins = vvtTable1RpmBins, RPMValue
|
|
yBins = vvtTable1LoadBins, fuelingLoad
|
|
zBins = vvtTable1
|
|
|
|
table = vvtTable2Tbl, vvtTable2Map, "Exhaust VVT closed loop Target", 1
|
|
xBins = vvtTable2RpmBins, RPMValue
|
|
yBins = vvtTable2LoadBins, fuelingLoad
|
|
zBins = vvtTable2
|
|
|
|
|
|
table = scriptTable1Tbl, scriptTable1Map, "Script Table #1", 1
|
|
xBins = scriptTable1RpmBins, RPMValue
|
|
yBins = scriptTable1LoadBins, fuelingLoad
|
|
zBins = scriptTable1
|
|
|
|
table = scriptTable2Tbl, scriptTable2Map, "Script Table #2", 1
|
|
xBins = scriptTable2RpmBins, RPMValue
|
|
yBins = scriptTable2LoadBins, fuelingLoad
|
|
zBins = scriptTable2
|
|
|
|
table = scriptTable3Tbl, scriptTable3Map, "Script Table #3", 1
|
|
xBins = scriptTable3RpmBins, RPMValue
|
|
yBins = scriptTable3LoadBins, fuelingLoad
|
|
zBins = scriptTable3
|
|
|
|
table = scriptTable4Tbl, scriptTable4Map, "Script Table #4", 1
|
|
xBins = scriptTable4RpmBins, RPMValue
|
|
yBins = scriptTable4LoadBins, fuelingLoad
|
|
zBins = scriptTable4
|
|
|
|
table = baroCorrTbl, baroCorrMap, "Baro Correction", 1
|
|
; constant, variable
|
|
xBins = baroCorrRpmBins, RPMValue
|
|
yBins = baroCorrPressureBins, baroPressure
|
|
zBins = baroCorrTable
|
|
; gridHeight = 2.0
|
|
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = ignitionTableTbl, ignitionTableMap, "Ignition Table", 1
|
|
; constant, variable
|
|
xBins = ignitionRpmBins, RPMValue
|
|
yBins = ignitionLoadBins, ignitionLoad
|
|
zBins = ignitionTable
|
|
; gridHeight = 2.0
|
|
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = ignitionIatCorrTableTbl, ignitionIatCorrTableMap, "Ignition Intake Air Temp correction", 1
|
|
; constant, variable
|
|
xBins = ignitionIatCorrRpmBins, RPMValue
|
|
yBins = ignitionIatCorrLoadBins, intake
|
|
zBins = ignitionIatCorrTable
|
|
; gridHeight = 2.0
|
|
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = torqueTableTbl, torqueTableMap, "Engine Torque", 1
|
|
xBins = torqueRpmBins, RPMValue
|
|
yBins = torqueLoadBins, veTableYAxis
|
|
zBins = torqueTable
|
|
|
|
table = veTableTbl, veTableMap, "VE Table", 1
|
|
; constant, variable
|
|
xBins = veRpmBins, RPMValue
|
|
yBins = veLoadBins, veTableYAxis
|
|
zBins = veTable
|
|
; gridHeight = 2.0
|
|
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = idleVeTableTbl, idleVeTable, "Idle VE"
|
|
xBins = idleVeRpmBins, RPMValue
|
|
yBins = idleVeLoadBins, veTableYAxis
|
|
zBins = idleVeTable
|
|
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = fuelTrimTbl1, fuelTrimMap1, "Fuel trim cyl 1", 1
|
|
xBins = fuelTrimRpmBins, RPMValue
|
|
yBins = fuelTrimLoadBins, veTableYAxis
|
|
zBins = fuelTrims1_table
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = fuelTrimTbl2, fuelTrimMap2, "Fuel trim cyl 2", 1
|
|
xBins = fuelTrimRpmBins, RPMValue
|
|
yBins = fuelTrimLoadBins, veTableYAxis
|
|
zBins = fuelTrims2_table
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = fuelTrimTbl3, fuelTrimMap3, "Fuel trim cyl 3", 1
|
|
xBins = fuelTrimRpmBins, RPMValue
|
|
yBins = fuelTrimLoadBins, veTableYAxis
|
|
zBins = fuelTrims3_table
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = fuelTrimTbl4, fuelTrimMap4, "Fuel trim cyl 4", 1
|
|
xBins = fuelTrimRpmBins, RPMValue
|
|
yBins = fuelTrimLoadBins, veTableYAxis
|
|
zBins = fuelTrims4_table
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = fuelTrimTbl5, fuelTrimMap5, "Fuel trim cyl 5", 1
|
|
xBins = fuelTrimRpmBins, RPMValue
|
|
yBins = fuelTrimLoadBins, veTableYAxis
|
|
zBins = fuelTrims5_table
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = fuelTrimTbl6, fuelTrimMap6, "Fuel trim cyl 6", 1
|
|
xBins = fuelTrimRpmBins, RPMValue
|
|
yBins = fuelTrimLoadBins, veTableYAxis
|
|
zBins = fuelTrims6_table
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = fuelTrimTbl7, fuelTrimMap7, "Fuel trim cyl 7", 1
|
|
xBins = fuelTrimRpmBins, RPMValue
|
|
yBins = fuelTrimLoadBins, veTableYAxis
|
|
zBins = fuelTrims7_table
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = fuelTrimTbl8, fuelTrimMap8, "Fuel trim cyl 8", 1
|
|
xBins = fuelTrimRpmBins, RPMValue
|
|
yBins = fuelTrimLoadBins, veTableYAxis
|
|
zBins = fuelTrims8_table
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = fuelTrimTbl9, fuelTrimMap9, "Fuel trim cyl 9", 1
|
|
xBins = fuelTrimRpmBins, RPMValue
|
|
yBins = fuelTrimLoadBins, veTableYAxis
|
|
zBins = fuelTrims9_table
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = fuelTrimTbl10, fuelTrimMap10, "Fuel trim cyl 10", 1
|
|
xBins = fuelTrimRpmBins, RPMValue
|
|
yBins = fuelTrimLoadBins, veTableYAxis
|
|
zBins = fuelTrims10_table
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = fuelTrimTbl11, fuelTrimMap11, "Fuel trim cyl 11", 1
|
|
xBins = fuelTrimRpmBins, RPMValue
|
|
yBins = fuelTrimLoadBins, veTableYAxis
|
|
zBins = fuelTrims11_table
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = fuelTrimTbl12, fuelTrimMap12, "Fuel trim cyl 12", 1
|
|
xBins = fuelTrimRpmBins, RPMValue
|
|
yBins = fuelTrimLoadBins, veTableYAxis
|
|
zBins = fuelTrims12_table
|
|
upDownLabel = "(RICHER)", "(LEANER)"
|
|
|
|
table = ignTrimTbl1, ignTrimMap1, "Ign trim cyl 1", 1
|
|
xBins =ignTrimRpmBins, RPMValue
|
|
yBins =ignTrimLoadBins, ignitionLoad
|
|
zBins =ignTrims1_table
|
|
|
|
table = ignTrimTbl2, ignTrimMap2, "Ign trim cyl 2", 1
|
|
xBins =ignTrimRpmBins, RPMValue
|
|
yBins =ignTrimLoadBins, ignitionLoad
|
|
zBins =ignTrims2_table
|
|
|
|
table = ignTrimTbl3, ignTrimMap3, "Ign trim cyl 3", 1
|
|
xBins =ignTrimRpmBins, RPMValue
|
|
yBins =ignTrimLoadBins, ignitionLoad
|
|
zBins =ignTrims3_table
|
|
|
|
table = ignTrimTbl4, ignTrimMap4, "Ign trim cyl 4", 1
|
|
xBins =ignTrimRpmBins, RPMValue
|
|
yBins =ignTrimLoadBins, ignitionLoad
|
|
zBins =ignTrims4_table
|
|
|
|
table = ignTrimTbl5, ignTrimMap5, "Ign trim cyl 5", 1
|
|
xBins =ignTrimRpmBins, RPMValue
|
|
yBins =ignTrimLoadBins, ignitionLoad
|
|
zBins =ignTrims5_table
|
|
|
|
table = ignTrimTbl6, ignTrimMap6, "Ign trim cyl 6", 1
|
|
xBins =ignTrimRpmBins, RPMValue
|
|
yBins =ignTrimLoadBins, ignitionLoad
|
|
zBins =ignTrims6_table
|
|
|
|
table = ignTrimTbl7, ignTrimMap7, "Ign trim cyl 7", 1
|
|
xBins =ignTrimRpmBins, RPMValue
|
|
yBins =ignTrimLoadBins, ignitionLoad
|
|
zBins =ignTrims7_table
|
|
|
|
table = ignTrimTbl8, ignTrimMap8, "Ign trim cyl 8", 1
|
|
xBins =ignTrimRpmBins, RPMValue
|
|
yBins =ignTrimLoadBins, ignitionLoad
|
|
zBins =ignTrims8_table
|
|
|
|
table = ignTrimTbl9, ignTrimMap9, "Ign trim cyl 9", 1
|
|
xBins =ignTrimRpmBins, RPMValue
|
|
yBins =ignTrimLoadBins, ignitionLoad
|
|
zBins =ignTrims9_table
|
|
|
|
table = ignTrimTbl10, ignTrimMap10, "Ign trim cyl 10", 1
|
|
xBins = ignTrimRpmBins, RPMValue
|
|
yBins = ignTrimLoadBins, ignitionLoad
|
|
zBins = ignTrims10_table
|
|
|
|
table = ignTrimTbl11, ignTrimMap11, "Ign trim cyl 11", 1
|
|
xBins = ignTrimRpmBins, RPMValue
|
|
yBins = ignTrimLoadBins, ignitionLoad
|
|
zBins = ignTrims11_table
|
|
|
|
table = ignTrimTbl12, ignTrimMap12, "Ign trim cyl 12", 1
|
|
xBins = ignTrimRpmBins, RPMValue
|
|
yBins = ignTrimLoadBins, ignitionLoad
|
|
zBins = ignTrims12_table
|
|
|
|
table = mapEstimateTableTbl, mapEstimateTableMap, "MAP Estimate", 1
|
|
xBins = mapEstimateRpmBins, RPMValue
|
|
yBins = mapEstimateTpsBins, TPSValue
|
|
zBins = mapEstimateTable
|
|
|
|
table = injPhaseTableTbl, injPhaseTableMap, "Injection Phase", 1
|
|
topicHelp = "fuelHelp"
|
|
; constant, variable
|
|
xBins = injPhaseRpmBins, RPMValue
|
|
yBins = injPhaseLoadBins, fuelingLoad
|
|
zBins = injectionPhase
|
|
; gridHeight = 2.0
|
|
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
|
upDownLabel = "(Later)", "(Sooner)"
|
|
|
|
table = pedalToTpsTbl, pedalToTpsMap, "ETB Pedal to TPS", 1
|
|
; constant, variable
|
|
xBins = pedalToTpsRpmBins, RPMValue
|
|
yBins = pedalToTpsPedalBins, throttlePedalPosition
|
|
zBins = pedalToTpsTable
|
|
; gridHeight = 2.0
|
|
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
|
upDownLabel = "(Later)", "(Sooner)"
|
|
|
|
|
|
#if LAMBDA
|
|
table = lambdaTableTbl, lambdaTableMap, "Target Lambda Table", 1
|
|
#else
|
|
table = afrTableTbl, afrTableMap, "Target AFR Table", 1
|
|
#endif
|
|
; constant, variable
|
|
xBins = lambdaRpmBins, RPMValue
|
|
yBins = lambdaLoadBins, afrTableYAxis
|
|
zBins = lambdaTable
|
|
; 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
|
|
xBins = solenoidCountArray, tcuCurrentGear
|
|
yBins = gearCountArray, tcuCurrentGear
|
|
zBins = tcuSolenoidTable
|
|
xyLabels = "Solenoid", "Gear"
|
|
|
|
table = hpfpTargetTable, hpfpTargetTableId, "HPFP Target Fuel Pressure", 1
|
|
xBins = hpfpTargetRpmBins, RPMValue
|
|
yBins = hpfpTargetLoadBins, veTableYAxis
|
|
zBins = hpfpTarget
|
|
|
|
table = hpfpCompensationTable, hpfpCompensationTableId, "HPFP Pump Compensation Factor", 1
|
|
xBins = hpfpCompensationRpmBins, RPMValue
|
|
yBins = hpfpCompensationLoadBins, fuelRunning
|
|
zBins = hpfpCompensation
|
|
|
|
|
|
[GaugeConfigurations]
|
|
|
|
gaugeCategory = Trigger
|
|
triggerSyncGapRatioGauge = triggerSyncGapRatio,"triggerSyncGapRatio", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
triggerStateIndexGauge = triggerStateIndex,"triggerStateIndex", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
vvtSyncGapRatioGauge = vvtSyncGapRatio,"vvtSyncGapRatio", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
vvtStateIndexGauge = vvtStateIndex,"vvtStateIndex", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
triggerPrimaryFallGauge = triggerPrimaryFall,"triggerPrimaryFall", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
triggerPrimaryRiseGauge = triggerPrimaryRise,"triggerPrimaryRise", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
triggerSecondaryFallGauge = triggerSecondaryFall,"triggerSecondaryFall", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
triggerSecondaryRiseGauge = triggerSecondaryRise,"triggerSecondaryRise", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
triggerVvtFallGauge = triggerVvtFall,"triggerVvtFall", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
triggerVvtRiseGauge = triggerVvtRise,"triggerVvtRise", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
luaInvocationCounterGauge = luaInvocationCounter,"luaInvocationCounter", "count", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0
|
|
luaLastCycleDurationGauge = luaLastCycleDuration,"luaLastCycleDuration", "nt", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0
|
|
testBenchIterGauge = testBenchIter, "Test Bench Iterations", "count", -10, {benchTestCount + 10}, -5, 0, {benchTestCount}, {benchTestCount + 5}, 1, 1
|
|
|
|
gaugeCategory = PIDs
|
|
alternatorStatus_iTermGauge = alternatorStatus_iTerm,"alternatorStatus_ iTerm", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
alternatorStatus_dTermGauge = alternatorStatus_dTerm,"alternatorStatus_ dTerm", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
alternatorStatus_outputGauge = alternatorStatus_output,"alternatorStatus_ output", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
alternatorStatus_errorGauge = alternatorStatus_error,"alternatorStatus_ error", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
alternatorStatus_resetCounterGauge = alternatorStatus_resetCounter,"alternatorStatus_ resetCounter", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 0,0
|
|
idleStatus_iTermGauge = idleStatus_iTerm,"idleStatus_ iTerm", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
idleStatus_dTermGauge = idleStatus_dTerm,"idleStatus_ dTerm", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
idleStatus_outputGauge = idleStatus_output,"idleStatus_ output", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
idleStatus_errorGauge = idleStatus_error,"idleStatus_ error", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
idleStatus_resetCounterGauge = idleStatus_resetCounter,"idleStatus_ resetCounter", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 0,0
|
|
etbStatus_iTermGauge = etbStatus_iTerm,"etbStatus_ iTerm", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
etbStatus_dTermGauge = etbStatus_dTerm,"etbStatus_ dTerm", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
etbStatus_outputGauge = etbStatus_output,"etbStatus_ output", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
etbStatus_errorGauge = etbStatus_error,"etbStatus_ error", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
etbStatus_resetCounterGauge = etbStatus_resetCounter,"etbStatus_ resetCounter", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 0,0
|
|
canReadCounterGauge = canReadCounter,"canReadCounter", "", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0
|
|
canWriteOkGauge = canWriteOk,"canWriteOk", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
canWriteNotOkGauge = canWriteNotOk,"canWriteNotOk", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
|
|
;gaugeCategory = MAP Cam
|
|
;TEMPLOG_map_peakGauge = TEMPLOG_map_peak,"TEMPLOG_map_peak", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
;TEMPLOG_MAP_AT_SPECIAL_POINTGauge = TEMPLOG_MAP_AT_SPECIAL_POINT,"TEMPLOG_MAP_AT_SPECIAL_POINT", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
;TEMPLOG_MAP_AT_DIFFGauge = TEMPLOG_MAP_AT_DIFF,"TEMPLOG_MAP_AT_DIFF", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
;TEMPLOG_MAP_AT_CYCLE_COUNTGauge = TEMPLOG_MAP_AT_CYCLE_COUNT,"TEMPLOG_MAP_AT_CYCLE_COUNT", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3
|
|
|
|
gaugeCategory = GDI
|
|
systemEventReuseGauge = systemEventReuse,"systemEventReuse", "counter", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0
|
|
di_nextStartGauge = di_nextStart,"DI: next start", "v", 0.0,100.0, 0.0,100.0, 0.0,100.0, 0,0
|
|
m_requested_pumpGauge = m_requested_pump,"DI: Pump Angle", "deg", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0
|
|
fuel_requested_percentGauge = fuel_requested_percent,"DI: fuel_requested_percent", "v", 0.0,100.0, 0.0,100.0, 0.0,100.0, 0,0
|
|
fuel_requested_percent_piGauge = fuel_requested_percent_pi,"DI: fuel_requested_percent_pi", "v", 0.0,100.0, 0.0,100.0, 0.0,100.0, 0,0
|
|
m_I_sum_percentGauge = m_I_sum_percent,"DI: m_I_sum_percent", "v", 0.0,100.0, 0.0,100.0, 0.0,100.0, 0,0
|
|
m_pressureTarget_kPaGauge = m_pressureTarget_kPa,"DI: m_pressureTarget_kPa", "v", 0.0,100.0, 0.0,100.0, 0.0,100.0, 0,0
|
|
highFuelPressureGauge = highFuelPressure, @@GAUGE_NAME_FUEL_PRESSURE_HIGH@@, @@GAUGE_NAME_FUEL_PRESSURE_HIGH_UNITS@@, 0, 200, 0, 0, 200, 200, 1, 0
|
|
|
|
gaugeCategory = Sensors - Extra 2
|
|
egt1Gauge = egt1, "EGT#1", "C", 0, 2000
|
|
egt2Gauge = egt2, "EGT#2", "C", 0, 2000
|
|
egt3Gauge = egt3, "EGT#3", "C", 0, 2000
|
|
egt4Gauge = egt4, "EGT#4", "C", 0, 2000
|
|
egt5Gauge = egt5, "EGT#5", "C", 0, 2000
|
|
egt6Gauge = egt6, "EGT#6", "C", 0, 2000
|
|
egt7Gauge = egt7, "EGT#7", "C", 0, 2000
|
|
egt8Gauge = egt8, "EGT#8", "C", 0, 2000
|
|
rpmAccelerationGa = rpmAcceleration, "rpm delta", "RPM/s", -2000, 2000, -2000, 2000, -2000, 2000, 0, 0
|
|
fuelTankLevelGauge = fuelTankLevel,"Fuel level", "%", 0, 100, 10, 20, 100, 100, 1, 1
|
|
wastegatePosGauge = wastegatePositionSensor, @@GAUGE_NAME_WG_POSITION@@, "%", 0, 100, 0, 0, 100, 100, 1, 1
|
|
idlePosSensGauge = idlePositionSensor, @@GAUGE_NAME_IDLE_POSITION@@, "%", 0, 100, 0, 0, 100, 100, 1, 1
|
|
currentEnginePhaseGauge = currentEnginePhase, "Engine Phase", "deg", 0, 720, 0, 0, 720, 720, 0, 0
|
|
|
|
gaugeCategory = ECU Status
|
|
warningCounterGauge = warningCounter, @@GAUGE_NAME_WARNING_COUNT@@, "", 0, 100, 0, 0, 100, 100, 0, 0
|
|
lastErrorCodeGauge = lastErrorCode, @@GAUGE_NAME_LAST_ERROR@@, "", 0, 18000, 0, 0, 18000, 18000, 0, 0
|
|
triggerErrorsCounterGauge = totalTriggerErrorCounter, "Trigger error count", "count", 0, 15000, 0, 0, 6000, 6000, 0, 0
|
|
recentErrorCode1Gauge = recentErrorCode1, "Error#1", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
|
|
recentErrorCode2Gauge = recentErrorCode2, "Error#2", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
|
|
recentErrorCode3Gauge = recentErrorCode3, "Error#3", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
|
|
recentErrorCode4Gauge = recentErrorCode4, "Error#4", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
|
|
recentErrorCode5Gauge = recentErrorCode5, "Error#5", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
|
|
recentErrorCode6Gauge = recentErrorCode6, "Error#6", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
|
|
recentErrorCode7Gauge = recentErrorCode7, "Error#7", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
|
|
recentErrorCode8Gauge = recentErrorCode8, "Error#8", "", 0, 18000, 0, 0, 18000, 18000, 0, 0
|
|
firmwareVersionGauge = firmwareVersion , @@GAUGE_NAME_FW_VERSION@@, "%", 0, 100, 0, 0, 100, 100, 0, 0
|
|
timeSecondsGauge = seconds, @@GAUGE_NAME_UPTIME@@, "sec", 0, 100, 0, 0, 100, 100, 0, 0
|
|
tuneCrc16Gauge = tuneCrc16, @@GAUGE_NAME_TUNE_CRC16@@, "", 0, 64000, 0, 0, 64000, 64000, 0, 0
|
|
|
|
|
|
gaugeCategory = Debug
|
|
debugF1Gauge = debugFloatField1, {bitStringValue( debugFieldF1List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 4, 4
|
|
debugF2Gauge = debugFloatField2, {bitStringValue( debugFieldF2List, debugMode )}, "", -100, 100, 0, 0, 100, 100, 4, 4
|
|
debugF3Gauge = debugFloatField3, {bitStringValue( debugFieldF3List, debugMode )}, "", -100, 100, 0, 0, 100, 100, 4, 4
|
|
debugF4Gauge = debugFloatField4, {bitStringValue( debugFieldF4List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 4, 4
|
|
debugF5Gauge = debugFloatField5, {bitStringValue( debugFieldF5List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 4, 4
|
|
debugF6Gauge = debugFloatField6, {bitStringValue( debugFieldF6List, debugMode )}, "", -100, 100, 0, 0, 100, 100, 4, 4
|
|
debugF7Gauge = debugFloatField7, {bitStringValue( debugFieldF7List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 4, 4
|
|
debugI1Gauge = debugIntField1, {bitStringValue( debugFieldI1List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 0, 0
|
|
debugI2Gauge = debugIntField2, {bitStringValue( debugFieldI2List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 0, 0
|
|
debugI3Gauge = debugIntField3, {bitStringValue( debugFieldI3List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 0, 0
|
|
debugI4Gauge = debugIntField4, {bitStringValue( debugFieldI4List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 0, 0
|
|
debugI5Gauge = debugIntField5, {bitStringValue( debugFieldI5List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 0, 0
|
|
|
|
|
|
gaugeCategory = Sensors - Basic
|
|
RPMGauge = RPMValue, "RPM - engine speed", "RPM", 0, {rpmHardLimit + 2000}, 200, {cranking_rpm}, {rpmHardLimit - 500}, {rpmHardLimit}, 0, 0
|
|
CLTGauge = coolant, "Coolant temp", "C", -40, 140, -15, 1, 95, 110, 1, 1
|
|
IATGauge = intake, "Intake air temp", "C", -40, 140, -15, 1, 95, 110, 1, 1
|
|
afr1Gauge = AFRValue, @@GAUGE_NAME_AFR@@, "", 10, 19.4, 12, 13, 15, 16, 2, 2
|
|
afr2Gauge = AFRValue2, @@GAUGE_NAME_AFR2@@, "", 10, 19.4, 12, 13, 15, 16, 2, 2
|
|
lambda1Gauge = lambdaValue, @@GAUGE_NAME_LAMBDA@@, "", 0.65, 1.2, 0.7, 0.75, 1.1, 1.15, 3, 2
|
|
lambda2Gauge = lambdaValue2, @@GAUGE_NAME_LAMBDA2@@, "", 0.65, 1.2, 0.7, 0.75, 1.1, 1.15, 3, 2
|
|
VBattGauge = VBatt, "Battery", "V", 8, 21, 9, 10, 17, 19, 1, 1
|
|
MAPGauge = MAPValue, "MAP", "kPa", 0, 300, 10, 10, 200, 200, 0, 0
|
|
massAirFlowValueGa = mafMeasured, @@GAUGE_NAME_AIR_FLOW_MEASURED@@, "kg/h", 0, 50, -999, -999, 999, 999, 1, 1
|
|
|
|
|
|
gaugeCategory = Sensors - Extra 1
|
|
VSSGauge = vehicleSpeedKph, @@GAUGE_NAME_VVS@@, "kmh", 0, 200, 0, 1, 3, 4, 1, 1
|
|
turboSpeedGauge = turboSpeed, @@GAUGE_NAME_TURBO_SPEED@@, "hz", 0, 200, 0, 1, 3, 4, 1, 1
|
|
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
|
|
accelerationZGauge = accelerationZ, @@GAUGE_NAME_ACCEL_Z@@, "acc", -11, 11, 1.0, 1.2, 100, 100, 3, 1
|
|
accelerationRollGauge=accelerationRoll, @@GAUGE_NAME_ACCEL_ROLL@@, "acc", -11, 11, 1.0, 1.2, 100, 100, 3, 1
|
|
accelerationYawGauge=accelerationYaw, @@GAUGE_NAME_ACCEL_YAW@@, "acc", -11, 11, 1.0, 1.2, 100, 100, 3, 1
|
|
atmPresCGauge = baroPressure, @@GAUGE_NAME_BARO_PRESSURE@@, "kPa", 0, 1024, 0, 0, 0, 0, 0, 0
|
|
internalMcuTemperatureGauge = internalMcuTemperature, @@GAUGE_NAME_ECU_TEMPERATURE@@, "C", 0, 100, 0, 0, 75, 100, 0, 0
|
|
OilPressGauge = oilPressure, @@GAUGE_NAME_OIL_PRESSURE@@, @@GAUGE_NAME_OIL_PRESSURE_UNITS@@, 0, 750, 35, 75, 550, 700, 0, 0
|
|
idleAirValvePositionGauge = idleAirValvePosition, "Idle position", "%", 0, 100, 0, 0, 100, 100, 1, 1
|
|
AuxT1Gauge = auxTemp1, @@GAUGE_NAME_AUX_TEMP1@@, "C", -40, 140, -15, 1, 95, 110, 1, 1
|
|
AuxT2Gauge = auxTemp2, @@GAUGE_NAME_AUX_TEMP2@@, "C", -40, 140, -15, 1, 95, 110, 1, 1
|
|
lowFuelPressureGauge = lowFuelPressure, @@GAUGE_NAME_FUEL_PRESSURE_LOW@@, @@GAUGE_NAME_FUEL_PRESSURE_LOW_UNITS@@, 0, 700, 0, 0, 700, 700, 1, 0
|
|
flexPercentGauge = flexPercent, @@GAUGE_NAME_FLEX@@, "%", 0, 100, 0, 0, 100, 100, 0, 0
|
|
AuxL1Gauge = auxLinear1, @@GAUGE_NAME_AUX_LINEAR_1@@, "", -100, 100, -100, -100, 100, 100, 2, 2
|
|
AuxL2Gauge = auxLinear2, @@GAUGE_NAME_AUX_LINEAR_2@@, "", -100, 100, -100, -100, 100, 100, 2, 2
|
|
|
|
gaugeCategory = VVT
|
|
vvtPositionB1IGauge = vvtPositionB1I, @@GAUGE_NAME_VVT_B1I@@, "deg", -60, 60, -60, -60, 60, 60, 1, 1
|
|
vvtPositionB1EGauge = vvtPositionB1E, @@GAUGE_NAME_VVT_B1E@@, "deg", -60, 60, -60, -60, 60, 60, 1, 1
|
|
vvtPositionB2IGauge = vvtPositionB2I, @@GAUGE_NAME_VVT_B2I@@, "deg", -60, 60, -60, -60, 60, 60, 1, 1
|
|
vvtPositionB2EGauge = vvtPositionB2E, @@GAUGE_NAME_VVT_B2E@@, "deg", -60, 60, -60, -60, 60, 60, 1, 1
|
|
vvtTargets1Gauge = vvtTargets1, @@GAUGE_NAME_VVT_TARGET_B1I@@, "deg", -60, 60, -60, -60, 60, 60, 0, 0
|
|
vvtTargets2Gauge = vvtTargets2, @@GAUGE_NAME_VVT_TARGET_B1E@@, "deg", -60, 60, -60, -60, 60, 60, 0, 0
|
|
vvtTargets3Gauge = vvtTargets3, @@GAUGE_NAME_VVT_TARGET_B2I@@, "deg", -60, 60, -60, -60, 60, 60, 0, 0
|
|
vvtTargets4Gauge = vvtTargets4, @@GAUGE_NAME_VVT_TARGET_B2E@@, "deg", -60, 60, -60, -60, 60, 60, 0, 0
|
|
|
|
gaugeCategory = Ignition
|
|
sparkCutReasonGauge = sparkCutReason,"Spark Cut Code", "code", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0
|
|
ignadvGauge = ignitionAdvance, "Ignition timing", "degrees", -100, 100, -999, -999, 999, 999, 1, 1
|
|
dwellGauge = sparkDwellValue, "Dwell", "mSec", 0, 10, 0.5, 1.0, 6.0, 8.0, 1, 1
|
|
coilDutyCycleGauge = coilDutyCycle, @@GAUGE_NAME_DWELL_DUTY@@, "%", 0, 110, 0, 0, 90, 100, 1, 1
|
|
ignitionLoadGauge = ignitionLoad, @@GAUGE_NAME_IGNITION_LOAD@@, "%", 0, 300, 0, 0, 300, 300, 1, 1
|
|
|
|
gaugeCategory = Acceleration Enrichment
|
|
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", "mg", 0, 100, 0, 0, 100, 100, 0, 0
|
|
wallFuelCorrectionGauge = wallFuelCorrection, "AE: wall correction extra", "mg", -20, 20, -100, -100, 100, 100, 1, 1
|
|
|
|
gaugeCategory = Fueling
|
|
;Name Var Title Units Lo Hi LoD LoW HiW HiD vd ld
|
|
fuelCutReasonGauge = fuelCutReason,"Fuel Cut Code", "code", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0
|
|
tChargeGauge = tCharge, @@GAUGE_NAME_FUEL_CHARGE_TEMP@@, "C", -40, 140, -15, 1, 95, 110, 1, 1
|
|
baroCorrectionGauge = baroCorrection,@@GAUGE_NAME_FUEL_BARO_CORR@@, "ratio", 0.5, 1.5, 0.6, 0.7, 1.3, 1.4, 1, 1
|
|
crankingFuelGauge = crankingFuelMs, @@GAUGE_NAME_FUEL_CRANKING@@, "mg", 0, 100, 0, 0, 100, 100, 3, 1
|
|
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
|
|
veValueGauge = veValue, "fuel: VE", "", 0, 120, 10, 10, 100, 100, 1, 1
|
|
|
|
injectorLagMsGauge = injectorLagMs, @@GAUGE_NAME_INJECTOR_LAG@@, "mSec", 0, 10, 0, 0, 10, 10, 3, 1
|
|
fuelRunningGauge = fuelRunning, @@GAUGE_NAME_FUEL_RUNNING@@, "mg", 0, 100, 0, 0, 100, 100, 3, 1
|
|
baseFuelGauge = baseFuel, @@GAUGE_NAME_FUEL_BASE@@, "mg", 0, 100, 0, 0, 100, 100, 2, 0
|
|
fuelPidCorrectionGauge = fuelPidCorrection1, @@GAUGE_NAME_FUEL_TRIM@@, "%", -10, 10, -8, -5, 5, 8, 3, 1
|
|
fuelPidCorrectionGauge2= fuelPidCorrection2, @@GAUGE_NAME_FUEL_TRIM_2@@, "%", -10, 10, -8, -5, 5, 8, 3, 1
|
|
fuelingLoadGauge = fuelingLoad, @@GAUGE_NAME_FUEL_LOAD@@, "%", 0, 300, 0, 0, 300, 300, 1, 1
|
|
totalFuelConsumptionGauge = totalFuelConsumption, @@GAUGE_NAME_FUEL_CONSUMPTION@@, "g", 0, 10000, 0, 0, 10000, 10000, 0, 0
|
|
fuelFlowRateGauge = fuelFlowRate, @@GAUGE_NAME_FUEL_FLOW@@, "g/s", 0, 50, 0, 0, 50, 50, 2, 0
|
|
targetLambdaGauge = targetLambda,"fuel: target lambda", "", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0
|
|
currentTargetAfrGauge = currentTargetAfr,"fuel: target AFR", "ratio", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0
|
|
|
|
gaugeCategory = Throttle Body (incl. ETB)
|
|
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
|
|
TPS2Gauge = TPS2Value, "Throttle position #2", "%", 0, 100, 0, 0, 100, 100, 1, 1
|
|
|
|
etbTargetGauge = etbTarget, @@GAUGE_NAME_ETB_TARGET@@, "%", 0, 100, 0, 0, 100, 100, 1, 1
|
|
etbErrorGauge = etb1Error, @@GAUGE_NAME_ETB_ERROR@@, "%", -20, 20, -10, -5, 5, 10, 2, 0
|
|
etbDutyCycleGauge = etb1DutyCycle, @@GAUGE_NAME_ETB_DUTY@@, "%", -100, 100, -75, -50, 50, 75, 0, 0
|
|
|
|
gaugeCategory = Sensors - Raw
|
|
rawTps1PrimaryGauge = rawTps1Primary, "Raw TPS 1 Primary", "V", 0, 5, 0, 0, 5, 5, 3, 0
|
|
rawTps1SecondaryGauge = rawTps1Secondary, "Raw TPS 1 Secondary", "V", 0, 5, 0, 0, 5, 5, 3, 0
|
|
rawTps2PrimaryGauge = rawTps2Primary, "Raw TPS 2 Primary", "V", 0, 5, 0, 0, 5, 5, 3, 0
|
|
rawTps2SecondaryGauge = rawTps2Secondary, "Raw TPS 2 Secondary", "V", 0, 5, 0, 0, 5, 5, 3, 0
|
|
rawPpsPrimaryGauge = rawPpsPrimary , "Raw Pedal Primary", "V", 0, 5, 0, 0, 5, 5, 3, 0
|
|
rawPpsSecondaryGauge = rawPpsSecondary,"Raw Pedal Secondary","V",0, 5, 0, 0, 5, 5, 3, 0
|
|
rawCltGauge = rawClt , "Raw CLT", "V", 0, 5, 0, 0, 5, 5, 3, 0
|
|
rawIatGauge = rawIat , "Raw IAT", "V", 0, 5, 0, 0, 5, 5, 3, 0
|
|
rawOilPressureGauge = rawOilPressure, "Raw Oil Pressure", "V", 0, 5, 0, 0, 5, 5, 3, 0
|
|
rawIdlePositionSensorGauge = rawIdlePositionSensor, "Raw Idle Position", "V", 0, 5, 0, 0, 5, 5, 3, 0
|
|
rawWastegatePositionGauge = rawWastegatePosition,"Raw Wastegate Position","V", 0, 5, 0, 0, 5, 5, 3, 0
|
|
rawLowFuelPressureGauge = rawLowFuelPressure,"Raw fuel pressure (low) voltage","V", 0, 5, 0, 0, 5, 5, 3, 0
|
|
rawHighFuelPressureGauge = rawHighFuelPressure,"Raw fuel pressure (high) voltage","V", 0, 5, 0, 0, 5, 5, 3, 0
|
|
rawMafGauge = rawMaf , "Raw MAF", "V", 0, 5, 0, 0, 5, 5, 3, 0
|
|
rawMapGauge = rawMap , "Raw MAP", "V", 0, 5, 0, 0, 5, 5, 3, 0
|
|
rawAfrGauge = rawAfr , "Raw EGO", "V", 0, 5, 0, 0, 5, 5, 3, 0
|
|
vssEdgeCounterGauge = vssEdgeCounter, "Raw VSS", "counter", 0, 5, 0, 0, 5, 5, 3, 0
|
|
issEdgeCounterGauge = issEdgeCounter, "Raw ISS", "counter", 0, 5, 0, 0, 5, 5, 3, 0
|
|
|
|
gaugeCategory = Transmission
|
|
desiredGearGauge = tcuDesiredGear, @@GAUGE_NAME_DESIRED_GEAR@@, "gear", -1, 10, -1, -1, 10, 10, 0, 0
|
|
currentGearGauge = tcuCurrentGear, @@GAUGE_NAME_CURRENT_GEAR@@, "gear", -1, 10, -1, -1, 10, 10, 0, 0
|
|
detectedGearGauge = detectedGear, @@GAUGE_NAME_DETECTED_GEAR@@, "gear", 0, @@GEARS_COUNT@@, 0, 0, @@GEARS_COUNT@@, @@GEARS_COUNT@@, 0, 0
|
|
speedToRpmRatioGauge = speedToRpmRatio, @@GAUGE_NAME_GEAR_RATIO@@, "", 0, 100, 0, 0, 100, 100, 4, 4
|
|
ISSGauge = ISSValue, @@GAUGE_NAME_ISS@@, "RPM", 0, {rpmHardLimit + 2000}, 200, {cranking_rpm}, {rpmHardLimit - 500}, {rpmHardLimit}, 0, 0
|
|
tcRatioGauge = tcRatio, @@GAUGE_NAME_TC_RATIO@@, "", 0, 100, 0, 0, 100, 100, 4, 4
|
|
shiftTimeGauge = lastShiftTime, "Last Shift Time", "S", 0, 2, 0, 0, 2, 2, 4, 4
|
|
|
|
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
|
|
knock9Gauge = knock9, "Knock Cyl 9", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
|
|
knock10Gauge = knock10, "Knock Cyl 10", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
|
|
knock11Gauge = knock11, "Knock Cyl 11", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
|
|
knock12Gauge = knock12, "Knock Cyl 12", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
|
|
knockLevelGauge = knockLevel,"Knock level", "dBv", -60, 10, -60, -60, 10, 10, 0, 0
|
|
knockRetardGauge = knockRetard, "Knock retard", "deg", 0, 10, 0, 0, 10, 10, 1, 1
|
|
knockCountGauge = knockCount, "Knock count", "count", 0, 10000, 0, 0, 10000, 10000, 0, 0
|
|
|
|
gaugeCategory = DynoView
|
|
accelGauge = VssAcceleration, "Vehicle acceleration", "m/s2", -10, 10, -6, -4, 4, 6, 2, 2
|
|
|
|
[WueAnalyze]
|
|
|
|
; wueCurveName, afrTempCompensationCurve, lambdaTargetTableName, lambdaChannel, coolantTempChannel, egoCorrectionChannel, wueChannel, activeCondition
|
|
#if LAMBDA
|
|
wueAnalyzeMap = wueAnalyzer_warmup_curve, wueAfrTargetOffsetCurve, lambdaTableTbl, lambdaValue, coolant, cltCorrection, egoCorrectionForVeAnalyze
|
|
lambdaTargetTables = lambdaTableTbl, afrTSCustom
|
|
#else
|
|
wueAnalyzeMap = wueAnalyzer_warmup_curve, wueAfrTargetOffsetCurve, afrTableTbl, AFRValue, coolant, cltCorrection, egoCorrectionForVeAnalyze
|
|
lambdaTargetTables = afrTableTbl, afrTSCustom
|
|
#endif
|
|
|
|
wuePercentOffset = 0 ; for working with 0 based enrichment set to 100
|
|
option = disableLiveUpdates
|
|
option = burnOnSend
|
|
|
|
; filter = std_DeadLambda ; Auto build
|
|
|
|
filter = decelFilterMap,"After Start Enrich", engine, & , 4 , , false
|
|
filter = accelFilterTp, "TP Accel Enrich" , engine, & , 16, , false
|
|
filter = decelFilterTp, "TP Decel Enrich" , engine, & , 32, , false
|
|
filter = accelFilterMap,"MAP Accel Enrich" , engine, & , 64, , false
|
|
filter = decelFilterMap,"MAP Decel Enrich" , engine, & , 128, , false
|
|
; this works, just another way to skin a cat
|
|
;filter = decelFilter, "Decel Flag" , tpsaccden, > , 0, , false
|
|
filter = overrunFilter, "Overrun" , pulseWidth1, = , 0, , false
|
|
filter = highThrottle, "High Throttle" , throttle, > , 15, , true
|
|
filter = lowRpm, "Low RPM" , rpm, < , 300, , false
|
|
filter = std_Custom ; Standard Custom Expression Filter.
|
|
|
|
|
|
[FrontPage]
|
|
; Gauges are numbered left to right, top to bottom.
|
|
;
|
|
; 1 2 3 4
|
|
; 5 6 7 8
|
|
|
|
gauge1 = RPMGauge
|
|
gauge2 = CLTGauge
|
|
gauge3 = TPSGauge
|
|
gauge4 = MAPGauge
|
|
#if LAMBDA
|
|
gauge5 = lambda1Gauge
|
|
#else
|
|
gauge5 = afr1Gauge
|
|
#endif
|
|
gauge6 = VBattGauge
|
|
gauge7 = dwellGauge
|
|
gauge8 = ignadvGauge
|
|
|
|
|
|
|
|
; = expression, off-label, on-label, off-bg, off-fg, on-bg, on-fg
|
|
; important status
|
|
; todo: do we want to drop this line since we have "config error" feature thing below?
|
|
indicator = { hasCriticalError }, "", "CRITICAL ERROR", white, black, red, black
|
|
|
|
indicator = { needBurn }, "", "unsaved changes", white, black, yellow, black
|
|
indicator = { isWarnNow }, "", "WARNING", white, black, yellow, black
|
|
indicator = { checkEngine }, "", "Check Engine", white, black, red, black
|
|
indicator = { isTriggerError}, "Trigger OK", "Trigger ERR", white, black, red, black
|
|
indicator = { isIgnitionEnabledIndicator}, "no ignition", "ignition", yellow, black, white, black
|
|
indicator = { isInjectionEnabledIndicator}, "no injection", "injection", yellow, black, white, black
|
|
|
|
|
|
; 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 = { hasCriticalError }, "Config Error", "Config Error", white, black, red, black
|
|
|
|
; minor info
|
|
indicator = { isFanOn }, "fan off", "fan on", white, black, green, black
|
|
indicator = { isFan2On }, "fan 2 off", "fan 2 on", white, black, green, black
|
|
indicator = { isMainRelayOn }, "main relay off", "main relay on", white, black, green, black
|
|
indicator = { fuelCutReason == 11 }, "no cyl cleanup", "cyl cleanup", white, black, yellow, black
|
|
indicator = { isFuelPumpOn}, "pump off", "pump on", white, black, green, black
|
|
indicator = { clutchUpState }, "Clutch Up", "clutch Up", white, black, red, black
|
|
indicator = { clutchDownState }, "Clutch Down", "Clutch Down", white, black, yellow, black
|
|
indicator = { brakePedalState }, "brake", "brake down", white, black, red, black
|
|
indicator = { acButtonState }, "AC switch off", "AC switch on", white, black, blue, white
|
|
indicator = { m_acEnabled }, "AC off", "AC on", white, black, blue, white
|
|
indicator = { isIdleClosedLoop }, "not idling", "idling", white, black, green, black
|
|
indicator = { isIdleCoasting }, "not coasting", "coasting", white, black, green, black
|
|
indicator = { dfcoActive }, "no decel cut", "decel cut", white, black, yellow, black
|
|
indicator = { tpsAccelActive }, "no TPS accel", "TPS accel active", white, black, yellow, black
|
|
|
|
; error codes
|
|
indicator = { isTpsError}, "tps", "tps error", white, black, red, black
|
|
indicator = { isTps2Error}, "tps 2", "tps 2 error", white, black, red, black
|
|
indicator = { isPedalError}, "pedal", "pedal error", white, black, red, black
|
|
indicator = { isCltError}, "clt", "clt error", white, black, red, black
|
|
indicator = { isIatError}, "iat", "iat error", white, black, red, black
|
|
|
|
; not implemented
|
|
; indicator = { ind_map_error}, "map", "map error", white, black, red, black
|
|
|
|
indicator = { sd_present }, "no SD card", "SD card OK", white, black, green, black
|
|
indicator = { sd_logging_internal }, "SD logging", "SD logging", white, black, green, black
|
|
indicator = { sd_msd }, "SD USB", "SD USB", white, black, green, black
|
|
|
|
; looks like TS would append four system indicators below: Data Logging, ???, Not Connected, Protocol Error
|
|
|
|
|
|
[KeyActions]
|
|
showPanel = spi, spiFunction
|
|
showPanel = con, connection
|
|
|
|
;
|
|
; this section defines how we log output channels
|
|
; see [OutputChannels]
|
|
;
|
|
[Datalog]
|
|
; Channel Label Type Format
|
|
entry = time, @@GAUGE_NAME_TIME@@, float, "%.3f"
|
|
@@DATALOG_SECTION_FROM_FILE@@
|
|
|
|
[Menu]
|
|
|
|
menuDialog = main
|
|
; see #1653
|
|
; menu = "Data Logging"
|
|
; subMenu = std_ms3SdConsole, "Browse / Import SD Card"
|
|
|
|
menu = "&Base &Engine"
|
|
subMenu = engineChars, "Base engine"
|
|
subMenu = limitsAndFallback, "Limits and fallbacks"
|
|
subMenu = triggerConfiguration, "Trigger"
|
|
subMenu = triggerConfiguration_IO, "Advanced Trigger"
|
|
subMenu = triggerConfiguration_gap, "Trigger Gap Override"
|
|
subMenu = std_separator
|
|
subMenu = energySystems, "Battery and alternator"
|
|
subMenu = std_separator
|
|
|
|
# Digital outputs
|
|
subMenu = mainRelayDialog, "Main relay"
|
|
subMenu = starterRelay, "Starter Disable relay"
|
|
subMenu = fuelPump, "Fuel pump"
|
|
subMenu = fanSetting, "Fan"
|
|
subMenu = acSettings, "Air Conditioning"
|
|
subMenu = tachSettings, "Tachometer"
|
|
subMenu = malfunction, "Check engine light"
|
|
subMenu = statusLeds, "Status LEDs"
|
|
|
|
menu = "Fuel"
|
|
# basic
|
|
subMenu = injectorConfig, "Injection configuration"
|
|
subMenu = injectionSettings, "Injection hardware", 0, {isInjectionEnabled == 1}
|
|
subMenu = cylinderBankSelect, "Cylinder bank selection", 0, {isInjectionEnabled == 1}
|
|
subMenu = injectorNonlinear, "Injector small-pulse correction", 0, {isInjectionEnabled == 1}
|
|
|
|
groupMenu = "Cylinder fuel trims"
|
|
groupChildMenu = fuelTrimTbl1, "Fuel trim cyl 1"
|
|
groupChildMenu = fuelTrimTbl2, "Fuel trim cyl 2"
|
|
groupChildMenu = fuelTrimTbl3, "Fuel trim cyl 3"
|
|
groupChildMenu = fuelTrimTbl4, "Fuel trim cyl 4"
|
|
groupChildMenu = fuelTrimTbl5, "Fuel trim cyl 5"
|
|
groupChildMenu = fuelTrimTbl6, "Fuel trim cyl 6"
|
|
groupChildMenu = fuelTrimTbl7, "Fuel trim cyl 7"
|
|
groupChildMenu = fuelTrimTbl8, "Fuel trim cyl 8"
|
|
groupChildMenu = fuelTrimTbl9, "Fuel trim cyl 9"
|
|
groupChildMenu = fuelTrimTbl10, "Fuel trim cyl 10"
|
|
groupChildMenu = fuelTrimTbl11, "Fuel trim cyl 11"
|
|
groupChildMenu = fuelTrimTbl12, "Fuel trim cyl 12"
|
|
|
|
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 == @@engine_load_mode_e_LM_SPEED_DENSITY@@}
|
|
subMenu = mapEstimateTableTbl, "MAP estimate table", 0, { enableMapEstimationTableFallback }
|
|
subMenu = std_separator
|
|
|
|
# Fuel model
|
|
#if LAMBDA
|
|
subMenu = lambdaTableTbl, "Target lambda", 0, {isInjectionEnabled == 1}
|
|
#else
|
|
subMenu = afrTableTbl, "Target AFR", 0, {isInjectionEnabled == 1}
|
|
#endif
|
|
subMenu = cltFuelCorrCurve, "CLT multiplier", 0, {isInjectionEnabled == 1}
|
|
subMenu = iatFuelCorrCurve, "IAT multiplier", 0, {isInjectionEnabled == 1}
|
|
subMenu = fuelClosedLoopDialog, "Closed loop fuel correction", 0, {isInjectionEnabled == 1}
|
|
subMenu = coastingFuelCutControl, "Deceleration fuel cutoff (DFCO)", 0, {isInjectionEnabled == 1}
|
|
subMenu = std_separator
|
|
|
|
# Injector model
|
|
subMenu = injPhaseTableTbl, "Injection phase", 0, {isInjectionEnabled == 1}
|
|
subMenu = std_separator
|
|
|
|
# Accel enrichment
|
|
subMenu = AccelEnrich, "Acceleration enrichment", 0, {isInjectionEnabled == 1}
|
|
subMenu = tpsTpsAccelTbl, "TPS/TPS acceleration extra fuel", 0, {isInjectionEnabled == 1}
|
|
|
|
groupMenu = "Wall wetting AE"
|
|
groupChildMenu = wwTauCurves, "Evap time", 0, { complexWallModel != 0 }
|
|
groupChildMenu = wwBetaCurves, "Impact fraction", 0, { complexWallModel != 0 }
|
|
|
|
menu = "Ignition"
|
|
subMenu = ignitionSettings, "Ignition settings"
|
|
subMenu = std_separator
|
|
|
|
subMenu = dwellSettings, "Dwell", 0, {isIgnitionEnabled == 1}
|
|
subMenu = multisparkSettings, "Multispark", 0, {isIgnitionEnabled == 1}
|
|
subMenu = std_separator
|
|
|
|
subMenu = ignitionTableTbl, "Ignition advance", 0, {isIgnitionEnabled}
|
|
|
|
groupMenu = "Cylinder ign trims"
|
|
groupChildMenu = ignTrimTbl1, "Ignition trim cyl 1"
|
|
groupChildMenu = ignTrimTbl2, "Ignition trim cyl 2"
|
|
groupChildMenu = ignTrimTbl3, "Ignition trim cyl 3"
|
|
groupChildMenu = ignTrimTbl4, "Ignition trim cyl 4"
|
|
groupChildMenu = ignTrimTbl5, "Ignition trim cyl 5"
|
|
groupChildMenu = ignTrimTbl6, "Ignition trim cyl 6"
|
|
groupChildMenu = ignTrimTbl7, "Ignition trim cyl 7"
|
|
groupChildMenu = ignTrimTbl8, "Ignition trim cyl 8"
|
|
groupChildMenu = ignTrimTbl9, "Ignition trim cyl 9"
|
|
groupChildMenu = ignTrimTbl10, "Ignition trim cyl 10"
|
|
groupChildMenu = ignTrimTbl11, "Ignition trim cyl 11"
|
|
groupChildMenu = ignTrimTbl12, "Ignition trim cyl 12"
|
|
|
|
subMenu = std_separator
|
|
|
|
# corrections
|
|
subMenu = cltTimingCorrCurve, "CLT correction", 0, {isIgnitionEnabled == 1}
|
|
subMenu = ignitionIatCorrTableTbl, "IAT correction", 0, {isIgnitionEnabled == 1}
|
|
|
|
menu = "&Cranking"
|
|
subMenu = crankingDialog, "Cranking settings"
|
|
subMenu = postCrankingEnrichment, "After-start enrichment"
|
|
subMenu = primingFuelPulsePanel, "Priming pulse"
|
|
subMenu = std_separator
|
|
|
|
subMenu = crankingCltCurve, "Fuel CLT multiplier"
|
|
subMenu = crankingCltCurveE100, "Fuel CLT multiplier (Flex Fuel E85)", 0, { flexSensorPin != @@ADC_CHANNEL_NONE@@ && flexCranking }
|
|
subMenu = crankingDurationCurve, "Fuel duration multiplier"
|
|
subMenu = crankingTpsCurve, "Fuel TPS multiplier"
|
|
subMenu = std_separator
|
|
|
|
subMenu = crankingAdvanceCurve, "Cranking ignition advance", 0, {useSeparateAdvanceForCranking == 1}
|
|
subMenu = std_separator
|
|
|
|
subMenu = cltCrankingCurve, "Cranking IAC CLT multiplier", 0, {overrideCrankingIacSetting == 1}
|
|
|
|
menu = "&Idle"
|
|
subMenu = idleSettings, "Idle settings"
|
|
subMenu = idlehw, "Idle hardware"
|
|
subMenu = std_separator
|
|
subMenu = cltIdleRPMCurve, "Target RPM"
|
|
subMenu = cltIdleCurve, "CLT multiplier"
|
|
subMenu = std_separator
|
|
subMenu = idleTimingPidCorrDialog, "Closed-loop idle timing"
|
|
subMenu = iacPidMultTbl, "IAC PID Multiplier", 0, {idleMode == 0 && useIacPidMultTable == 1}
|
|
subMenu = iacCoastingCurve, "Coasting IAC Position for Auto-Idle", 0, {useIacTableForCoasting == 1}
|
|
subMenu = std_separator
|
|
subMenu = idleVeTableTbl, "Idle VE", 0, {useSeparateVeForIdle == 1}
|
|
subMenu = idleAdvanceCurve, "Ignition advance", 0, {useSeparateAdvanceForIdle == 1}
|
|
|
|
menu = "&View"
|
|
@@LIVE_DATA_MENU_FROM_FILE@@
|
|
|
|
menu = "&Advanced"
|
|
subMenu = ignitionCylExtra, "Cylinder offsets", 0
|
|
subMenu = gearDetection, "Gear detection", 0
|
|
|
|
subMenu = std_separator
|
|
subMenu = boostDialog, "Boost control"
|
|
subMenu = boostOpenLoopDialog, "Boost control open loop", { isBoostControlEnabled }
|
|
subMenu = boostPidDialog, "Boost control PID", { isBoostControlEnabled && boostType == 1 }
|
|
subMenu = boostTargetDialog, "Boost control target", { isBoostControlEnabled && boostType == 1 }
|
|
subMenu = boostEtbPid, "ETB-style Wastegate Actuator", { etbFunctions1 == @@etb_function_e_ETB_Wastegate@@ || etbFunctions2 == @@etb_function_e_ETB_Wastegate@@ }
|
|
|
|
subMenu = std_separator
|
|
subMenu = gppwm1, "General Purpose PWM 1"
|
|
subMenu = gppwm2, "General Purpose PWM 2"
|
|
subMenu = gppwm3, "General Purpose PWM 3"
|
|
subMenu = gppwm4, "General Purpose PWM 4"
|
|
|
|
subMenu = std_separator @@if_ts_show_etb
|
|
subMenu = etbDialog, "Electronic throttle body" @@if_ts_show_etb
|
|
subMenu = etbTpsBiasCurve, "ETB bias curve (feed forward)" @@if_ts_show_etb
|
|
subMenu = pedalToTpsTbl, "ETB pedal target" @@if_ts_show_etb
|
|
|
|
subMenu = std_separator
|
|
subMenu = vvtPidDialog, "VVT outputs and PID", { vvtMode1 != @@vvt_mode_e_VVT_INACTIVE@@ }
|
|
subMenu = vvtTable1Tbl, "VVT intake target", { vvtMode1 != @@vvt_mode_e_VVT_INACTIVE@@ }
|
|
subMenu = vvtTable2Tbl, "VVT exhaust target", { vvtMode2 != @@vvt_mode_e_VVT_INACTIVE@@ }
|
|
|
|
subMenu = std_separator
|
|
subMenu = auxInputsDialog, "Aux inputs"
|
|
subMenu = luaOutputs, "Lua Script PWM Outputs"
|
|
subMenu = scriptSetting, "Lua Script Settings"
|
|
|
|
subMenu = std_separator
|
|
subMenu = scriptTable1TblSettings, "Script Table #1"
|
|
subMenu = scriptTable2TblSettings, "Script Table #2"
|
|
subMenu = scriptTable3TblSettings, "Script Table #3"
|
|
subMenu = scriptTable4TblSettings, "Script Table #4"
|
|
subMenu = scriptCurve1Settings, "Script Curve #1"
|
|
subMenu = scriptCurve2Settings, "Script Curve #2"
|
|
subMenu = scriptCurve3Settings, "Script Curve #3"
|
|
subMenu = scriptCurve4Settings, "Script Curve #4"
|
|
subMenu = scriptCurve5Settings, "Script Curve #5"
|
|
subMenu = scriptCurve6Settings, "Script Curve #6"
|
|
|
|
subMenu = std_separator
|
|
subMenu = tcuControls, "Transmission Settings"
|
|
subMenu = gearControls, "Gear Selection Settings"
|
|
subMenu = inputSpeedSensor, "Input Speed Sensor"
|
|
subMenu = tcuSolenoidTableTbl, "Shift Solenoids"
|
|
subMenu = tccCurves, "TCC Lock/Unlock Speed"
|
|
subMenu = pcPerGearDialog, "Line Pressure Per Gear"
|
|
subMenu = pcPerShiftDialog, "Line Pressure Per Shift"
|
|
subMenu = 32Dialog, "3-2 Shift Solenoid Percent by Speed"
|
|
|
|
menu = "&Sensors"
|
|
# Base analog input settings
|
|
subMenu = otherSensorInputs, "Misc sensors"
|
|
subMenu = analogInputSettings, "Analog input settings"
|
|
subMenu = std_separator
|
|
|
|
# Thermistors
|
|
subMenu = cltSensor, "CLT sensor"
|
|
subMenu = iatSensor, "IAT sensor"
|
|
subMenu = auxTempSensor1Sensor, "AuxTemp1 sensor"
|
|
subMenu = auxTempSensor2Sensor, "AuxTemp2 sensor"
|
|
subMenu = std_separator
|
|
|
|
# TPS/pedal
|
|
subMenu = tpsSensor, "TPS"
|
|
subMenu = pedalSensor, "Accelerator pedal"
|
|
subMenu = std_separator
|
|
|
|
# MAP/Baro
|
|
subMenu = mapSettings, "MAP sensor"
|
|
subMenu = mapCurves, "MAP sampling"
|
|
subMenu = baroSettings, "Baro sensor"
|
|
subMenu = std_separator
|
|
|
|
# MAF
|
|
subMenu = mafSettings, "MAF sensor"
|
|
subMenu = mafDecodingCurve, "MAF transfer function", 0, {mafAdcChannel != @@ADC_CHANNEL_NONE@@ }
|
|
subMenu = std_separator
|
|
|
|
# O2 sensor(s)
|
|
subMenu = egoSettings, "EGO sensor"
|
|
subMenu = widebandConfig, "rusEFI Wideband Controller", 0, { canReadEnabled && canWriteEnabled }
|
|
subMenu = narrowToWideOxygenCurve, "Narrow to Wideband approximation"
|
|
subMenu = cj125Function, "CJ125 settings (wbo decoder)" @@if_ts_show_cj125
|
|
subMenu = std_separator
|
|
|
|
# Misc sensors
|
|
subMenu = speedSensor, "Vehicle speed sensor"
|
|
subMenu = oilPressureSensor, "Oil pressure"
|
|
subMenu = fuelPressureSensor, "Fuel pressure"
|
|
subMenu = fuelLevelDialog, "Fuel level sensor"
|
|
subMenu = egtInputs, "EGT" @@if_ts_show_egt
|
|
subMenu = wastegateIdlePos, "Wastegate and idle position sensors"
|
|
subMenu = std_separator
|
|
|
|
subMenu = auxLinearSensors, "Aux Linear Sensors"
|
|
|
|
menu = "&Controller"
|
|
subMenu = ecuStimulator, "ECU stimulator"
|
|
subMenu = datalogSettings, "Datalogging"
|
|
subMenu = ioTest, "Bench test"
|
|
subMenu = injTest, "Injector test"
|
|
subMenu = engineTypeDialog, "Popular vehicles"
|
|
subMenu = std_separator
|
|
|
|
subMenu = lcdScreen, "LCD" @@if_ts_show_lcd
|
|
subMenu = joystickPanel, "Joystick" @@if_ts_show_joystick
|
|
subMenu = spiFunction, "SPI"@@if_ts_show_spi
|
|
subMenu = monitoringSettings, "rusEFI console"
|
|
subMenu = std_separator
|
|
|
|
subMenu = canBusMain, "CAN Bus Communication"
|
|
subMenu = sdCard, "SD Card Logger" @@if_ts_show_sd_card
|
|
subMenu = connection, "Connection"
|
|
subMenu = tle8888, "TLE8888"
|
|
|
|
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 = mc33Dialog, "GDI Dreams"
|
|
subMenu = hpfpCamDialog, "HPFP Cam Configuration"
|
|
subMenu = hpfpPumpDialog, "HPFP Pump Configuration", {hpfpCamLobes != 0}
|
|
subMenu = hpfpTargetTable, "HPFP Target Pressure", {hpfpCamLobes != 0}
|
|
subMenu = hpfpCompensationTable, "HPFP Pump Compensation", {hpfpCamLobes != 0}
|
|
subMenu = std_separator
|
|
subMenu = vrThreshold, "VR Sensor Threshold"
|
|
subMenu = fancyHardwareDialog, "Fancy Hardware"
|
|
subMenu = parkingLot, "Experimental/Broken"
|
|
subMenu = rotaryDialog, "Rotary"
|
|
subMenu = std_separator
|
|
|
|
subMenu = hipFunction, "HIP9011 settings (knock sensor) (alpha version)" @@if_ts_show_hip9011
|
|
subMenu = softwareKnock, "Software Knock" @@if_ts_show_software_knock
|
|
subMenu = std_separator
|
|
|
|
subMenu = smLaunchControl, "Launch Control"
|
|
subMenu = std_separator
|
|
# subMenu = smRollingLaunch, "Rolling Launch"
|
|
# subMenu = std_separator
|
|
# subMenu = antiLag, "Antilag Setup"
|
|
# subMenu = std_separator
|
|
|
|
menu = "Help"
|
|
subMenu = helpGeneral, "rusEFI Info"
|
|
|
|
|
|
[ControllerCommands]
|
|
; commandName = command1, command2, commandn...
|
|
; command in standard ini format, a command name can be assigned to 1 to n commands that will be executed in order.
|
|
; This does not include any resultant protocol envelope data, only the response data itself.
|
|
|
|
; WARNING!! These commands bypass TunerStudio's normal memory synchronization. If these commands
|
|
; alter mapped settings (Constant) memory in the controller, TunerStudio will have an out of sync condition
|
|
; and may create error messages.
|
|
; It is expected that these commands would not typically alter any ram mapped to a Constant.
|
|
|
|
;
|
|
; see TS_IO_TEST_COMMAND in firmware code
|
|
;
|
|
|
|
cmd_test_spk1 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_IGNITION_CATEGORY_16_hex@@\x00\x01"
|
|
cmd_test_spk2 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_IGNITION_CATEGORY_16_hex@@\x00\x02"
|
|
cmd_test_spk3 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_IGNITION_CATEGORY_16_hex@@\x00\x03"
|
|
cmd_test_spk4 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_IGNITION_CATEGORY_16_hex@@\x00\x04"
|
|
cmd_test_spk5 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_IGNITION_CATEGORY_16_hex@@\x00\x05"
|
|
cmd_test_spk6 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_IGNITION_CATEGORY_16_hex@@\x00\x06"
|
|
cmd_test_spk7 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_IGNITION_CATEGORY_16_hex@@\x00\x07"
|
|
cmd_test_spk8 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_IGNITION_CATEGORY_16_hex@@\x00\x08"
|
|
cmd_test_spk9 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_IGNITION_CATEGORY_16_hex@@\x00\x09"
|
|
cmd_test_spk10 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_IGNITION_CATEGORY_16_hex@@\x00\x0a"
|
|
cmd_test_spk11 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_IGNITION_CATEGORY_16_hex@@\x00\x0b"
|
|
cmd_test_spk12 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_IGNITION_CATEGORY_16_hex@@\x00\x0c"
|
|
|
|
cmd_test_lua1 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_LUA_OUTPUT_CATEGORY_16_hex@@\x00\x01"
|
|
cmd_test_lua2 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_LUA_OUTPUT_CATEGORY_16_hex@@\x00\x02"
|
|
cmd_test_lua3 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_LUA_OUTPUT_CATEGORY_16_hex@@\x00\x03"
|
|
cmd_test_lua4 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_LUA_OUTPUT_CATEGORY_16_hex@@\x00\x04"
|
|
cmd_test_lua5 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_LUA_OUTPUT_CATEGORY_16_hex@@\x00\x05"
|
|
cmd_test_lua6 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_LUA_OUTPUT_CATEGORY_16_hex@@\x00\x06"
|
|
cmd_test_lua7 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_LUA_OUTPUT_CATEGORY_16_hex@@\x00\x07"
|
|
cmd_test_lua8 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_LUA_OUTPUT_CATEGORY_16_hex@@\x00\x08"
|
|
|
|
cmd_test_debug_mode_vvt = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_DEBUG_MODE_16_hex@@@@debug_mode_e_DBG_VVT_1_PID_16_hex@@"
|
|
|
|
cmd_test_inj1 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_INJECTOR_CATEGORY_16_hex@@\x00\x01"
|
|
cmd_test_inj2 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_INJECTOR_CATEGORY_16_hex@@\x00\x02"
|
|
cmd_test_inj3 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_INJECTOR_CATEGORY_16_hex@@\x00\x03"
|
|
cmd_test_inj4 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_INJECTOR_CATEGORY_16_hex@@\x00\x04"
|
|
cmd_test_inj5 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_INJECTOR_CATEGORY_16_hex@@\x00\x05"
|
|
cmd_test_inj6 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_INJECTOR_CATEGORY_16_hex@@\x00\x06"
|
|
cmd_test_inj7 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_INJECTOR_CATEGORY_16_hex@@\x00\x07"
|
|
cmd_test_inj8 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_INJECTOR_CATEGORY_16_hex@@\x00\x08"
|
|
cmd_test_inj9 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_INJECTOR_CATEGORY_16_hex@@\x00\x09"
|
|
cmd_test_inj10 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_INJECTOR_CATEGORY_16_hex@@\x00\x0a"
|
|
cmd_test_inj11 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_INJECTOR_CATEGORY_16_hex@@\x00\x0b"
|
|
cmd_test_inj12 = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_INJECTOR_CATEGORY_16_hex@@\x00\x0c"
|
|
|
|
cmd_test_sol1 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_SOLENOID_CATEGORY_16_hex@@\x00\x01"
|
|
cmd_test_sol2 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_SOLENOID_CATEGORY_16_hex@@\x00\x02"
|
|
cmd_test_sol3 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_SOLENOID_CATEGORY_16_hex@@\x00\x03"
|
|
cmd_test_sol4 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_SOLENOID_CATEGORY_16_hex@@\x00\x04"
|
|
cmd_test_sol5 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_SOLENOID_CATEGORY_16_hex@@\x00\x05"
|
|
cmd_test_sol6 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_SOLENOID_CATEGORY_16_hex@@\x00\x06"
|
|
|
|
cmd_test_main_relay = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@bench_mode_e_BENCH_MAIN_RELAY_16_hex@@"
|
|
cmd_test_fuel_pump = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@bench_mode_e_BENCH_FUEL_PUMP_16_hex@@"
|
|
cmd_test_starter_relay = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@bench_mode_e_BENCH_STARTER_ENABLE_RELAY_16_hex@@"
|
|
cmd_test_starter_disable_relay = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@bench_mode_e_BENCH_STARTER_DISABLE_RELAY_16_hex@@"
|
|
cmd_test_ac_relay = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@bench_mode_e_BENCH_AC_COMPRESSOR_RELAY_16_hex@@"
|
|
cmd_test_fan_1 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@bench_mode_e_BENCH_FAN_RELAY_16_hex@@"
|
|
cmd_test_fan_2 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@bench_mode_e_BENCH_FAN_RELAY_2_16_hex@@"
|
|
cmd_test_check_engine_light = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@bench_mode_e_BENCH_CHECK_ENGINE_LIGHT_16_hex@@"
|
|
cmd_test_idle_valve = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@bench_mode_e_BENCH_IDLE_VALVE_16_hex@@"
|
|
cmd_test_second_idle_valve = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@bench_mode_e_BENCH_SECOND_IDLE_VALVE_16_hex@@"
|
|
cmd_test_hpfp_valve = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_BENCH_CATEGORY_16_hex@@@@bench_mode_e_BENCH_HPFP_VALVE_16_hex@@"
|
|
|
|
cmd_calibrate_tps_1_closed = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x02"
|
|
cmd_calibrate_tps_1_wot = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x03"
|
|
cmd_calibrate_tps_2_closed = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x04"
|
|
cmd_calibrate_tps_2_wot = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x05"
|
|
cmd_calibrate_pedal_up = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x06"
|
|
cmd_calibrate_pedal_down = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x07"
|
|
cmd_tle8888_init = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x08"
|
|
cmd_write_config = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x0A"
|
|
cmd_etb_autotune = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x0C"
|
|
cmd_enable_self_stim = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x0D"
|
|
cmb_etb_auto_calibrate = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x0E"
|
|
cmd_disable_self_stim = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x0F"
|
|
cmd_etb_autotune_stop = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x10"
|
|
cmb_etb_auto_calibrate_2 = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x11"
|
|
cmd_wideband_firmare_update = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x12"
|
|
cmd_enable_ext_stim = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x13"
|
|
cmd_nDBANK = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x14"@@if_ts_show_f7_presets
|
|
cmd_burn_without_flash = "@@TS_IO_TEST_COMMAND_char@@@@CMD_TS_X14_16_hex@@\x00\x15"
|
|
|
|
cmd_set_wideband_idx_0 = "@@TS_IO_TEST_COMMAND_char@@\x00\x15\x00\x00"
|
|
cmd_set_wideband_idx_1 = "@@TS_IO_TEST_COMMAND_char@@\x00\x15\x00\x01"
|
|
|
|
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
|
|
cmd_reset_controller = "@@TS_IO_TEST_COMMAND_char@@\x00\xbb\x00\x00"
|
|
; jump to DFU mode
|
|
cmd_dfu = "@@TS_IO_TEST_COMMAND_char@@\x00\xba\x00\x00"
|
|
|
|
; See 'executeTSCommand' in firmware source code
|
|
|
|
|
|
; MRE_MIATA_NB2_MAP = 11
|
|
cmd_set_engine_type_microRusEFI_Miata_NB2_MAP = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_MRE_MIATA_NB2_MAP_16_hex@@"
|
|
|
|
cmd_set_engine_type_microRusEFI_VW_B6 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_VW_B6_16_hex@@"
|
|
cmd_set_engine_type_microRusEFI_MRE_BODY_CONTROL = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_MRE_BODY_CONTROL_16_hex@@"
|
|
cmd_set_engine_type_MRE_SECONDARY_CAN = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_MRE_SECONDARY_CAN_16_hex@@"
|
|
|
|
|
|
; MRE_MIATA_NA6 12
|
|
cmd_set_engine_type_microRusEFI_Miata_NA6_VAF = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_MRE_MIATA_NA6_VAF_16_hex@@"
|
|
|
|
cmd_set_engine_type_microRusEFI_Miata_NA6_MAP = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_MRE_MIATA_NA6_MAP_16_hex@@"
|
|
|
|
cmd_set_engine_type_microRusEFI_Miata_94_MAP = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_MRE_MIATA_94_MAP_16_hex@@"
|
|
|
|
|
|
; MRE_MIATA_NB2_MAF = 15
|
|
cmd_set_engine_type_microRusEFI_Miata_NB2_MAF = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_MRE_MIATA_NB2_MAF_16_hex@@"
|
|
|
|
cmd_set_engine_type_MRE_SUBARU_EJ18 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_MRE_SUBARU_EJ18_16_hex@@"
|
|
|
|
cmd_set_engine_type_MRE_M111 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_MRE_M111_16_hex@@"
|
|
|
|
cmd_set_engine_type_hellen_NA6 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_NA6_16_hex@@"
|
|
cmd_set_engine_type_hellen_NA94 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_NA94_16_hex@@"
|
|
|
|
cmd_set_engine_type_hellen_NB1_36 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_NB1_36_16_hex@@"
|
|
cmd_set_engine_type_hellen_NB2_36 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_NB2_36_16_hex@@"
|
|
|
|
cmd_set_engine_type_hellen_nissan_121_4 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_121_NISSAN_4_CYL_16_hex@@"
|
|
cmd_set_engine_type_hellen_nissan_121_6 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_121_NISSAN_6_CYL_16_hex@@"
|
|
cmd_set_engine_type_hellen_nissan_121_8 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_121_NISSAN_8_CYL_16_hex@@"
|
|
|
|
cmd_set_engine_type_hellen_121_vag_4 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_121_VAG_4_CYL_16_hex@@"
|
|
cmd_set_engine_type_hellen_121_vag_5 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_121_VAG_5_CYL_16_hex@@"
|
|
cmd_set_engine_type_hellen_121_vag_v6 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_121_VAG_V6_CYL_16_hex@@"
|
|
cmd_set_engine_type_hellen_121_vag_vr6 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_121_VAG_VR6_CYL_16_hex@@"
|
|
cmd_set_engine_type_hellen_121_vag_8 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_121_VAG_8_CYL_16_hex@@"
|
|
|
|
cmd_set_engine_type_hellen_128_merc_4 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_128_MERCEDES_4_CYL_16_hex@@"
|
|
cmd_set_engine_type_hellen_128_merc_6 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_128_MERCEDES_6_CYL_16_hex@@"
|
|
cmd_set_engine_type_hellen_128_merc_8 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_128_MERCEDES_8_CYL_16_hex@@"
|
|
|
|
cmd_set_engine_type_hellen_couple_bk1 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_154_HYUNDAI_COUPE_BK1_16_hex@@"
|
|
cmd_set_engine_type_hellen_couple_bk2 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_HELLEN_154_HYUNDAI_COUPE_BK2_16_hex@@"
|
|
|
|
; MIATA_NA6_MAP = 41
|
|
cmd_set_engine_type_Frankenso_Miata_NA6_MAP = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_FRANKENSO_MIATA_NA6_MAP_16_hex@@"
|
|
; MIATA_NA6_VAF = 57
|
|
cmd_set_engine_type_Frankenso_Miata_NA6_VAF = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_FRANKENSO_MIATA_NA6_VAF_16_hex@@"
|
|
; MAZDA_MIATA_2003 = 47
|
|
cmd_set_engine_type_Frankenso_Miata_NB2 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_FRANKENSO_MAZDA_MIATA_2003_16_hex@@"
|
|
|
|
cmd_set_engine_type_Proteus_M73 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_PROTEUS_BMW_M73_16_hex@@"
|
|
cmd_set_engine_type_PROTEUS_HONDA_ELEMENT_2003 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_PROTEUS_HONDA_ELEMENT_2003_16_hex@@"
|
|
cmd_set_engine_type_PROTEUS_HONDA_OBD2A = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_PROTEUS_HONDA_OBD2A_16_hex@@"
|
|
cmd_set_engine_type_PROTEUS_MIATA_NB2 = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_PROTEUS_MIATA_NB2_16_hex@@"
|
|
cmd_set_engine_type_Proteus_Miata_TCU = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_MIATA_PROTEUS_TCU_16_hex@@"
|
|
cmd_set_engine_type_PROTEUS_LUA_DEMO = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_PROTEUS_LUA_DEMO_16_hex@@"
|
|
cmd_set_engine_type_PROTEUS_HARLEY = "@@TS_IO_TEST_COMMAND_char@@\x00\x30@@engine_type_e_PROTEUS_HARLEY_16_hex@@"
|
|
|
|
|
|
; ETB_BENCH_ENGINE = 58
|
|
cmd_set_engine_type_etb_test = "@@TS_IO_TEST_COMMAND_char@@\x00\x30\x00\x3A"
|
|
; ETB_BENCH_ENGINE = 59
|
|
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"
|
|
|
|
[UserDefined]
|
|
@@LIVE_DATA_PANELS_FROM_FILE@@
|
|
|
|
dialog = scriptTable1TblSettings, "", yAxis
|
|
field = "Name", scriptTableName1
|
|
panel = scriptTable1Tbl
|
|
|
|
dialog = scriptTable2TblSettings, "", yAxis
|
|
field = "Name", scriptTableName2
|
|
panel = scriptTable2Tbl
|
|
|
|
dialog = scriptTable3TblSettings, "", yAxis
|
|
field = "Name", scriptTableName3
|
|
panel = scriptTable3Tbl
|
|
|
|
dialog = scriptTable4TblSettings, "", yAxis
|
|
field = "Name", scriptTableName4
|
|
panel = scriptTable4Tbl
|
|
|
|
dialog = scriptCurve1Settings, "", yAxis
|
|
field = "Name", scriptCurveName1
|
|
panel = scriptCurve1
|
|
|
|
dialog = scriptCurve2Settings, "", yAxis
|
|
field = "Name", scriptCurveName2
|
|
panel = scriptCurve2
|
|
|
|
dialog = scriptCurve3Settings, "", yAxis
|
|
field = "Name", scriptCurveName3
|
|
panel = scriptCurve3
|
|
|
|
dialog = scriptCurve4Settings, "", yAxis
|
|
field = "Name", scriptCurveName4
|
|
panel = scriptCurve4
|
|
|
|
dialog = scriptCurve5Settings, "", yAxis
|
|
field = "Name", scriptCurveName5
|
|
panel = scriptCurve5
|
|
|
|
dialog = scriptCurve6Settings, "", yAxis
|
|
field = "Name", scriptCurveName6
|
|
panel = scriptCurve6
|
|
|
|
dialog = tChargeRpmTpsSettings, "RPM+TPS mode"
|
|
field = "We use these coefficients to approximate air/fuel charge"
|
|
field = "temperature based on CLT and IAT, depending on RPM and TPM"
|
|
field = "Low RPM/Low TPS", tChargeMinRpmMinTps
|
|
field = "Low RPM/High TPS", tChargeMinRpmMaxTps
|
|
field = "High RPM/Low TPS", tChargeMaxRpmMinTps
|
|
field = "High RPM/High TPS", tChargeMaxRpmMaxTps
|
|
|
|
dialog = tChargeGeneralSettings, ""
|
|
field = "Mode", tChargeMode
|
|
field = "#These two parameters limit the estimate's rate of change"
|
|
field = "Increase rate limit", tChargeAirIncrLimit
|
|
field = "Decrease rate limit", tChargeAirDecrLimit
|
|
field = ""
|
|
|
|
dialog = tChargeAirInterpSettings, "Airflow interpolation mode"
|
|
field = "Low flow coefficient", tChargeAirCoefMin
|
|
field = "High flow coefficient", tChargeAirCoefMax
|
|
field = "Max air flow", tChargeAirFlowMax
|
|
|
|
dialog = tChargeSettings, "Charge temperature estimation"
|
|
panel = tChargeGeneralSettings
|
|
panel = tChargeRpmTpsSettings, { tChargeMode == 0}
|
|
panel = tChargeAirInterpSettings, { tChargeMode == 1}
|
|
panel = tchargeCurve, { tChargeMode == 2 }
|
|
|
|
dialog = baseInjection, "General"
|
|
field = "Enabled", isInjectionEnabled
|
|
field = "Mode", injectionMode, {isInjectionEnabled == 1}
|
|
field = "#Batch injection with individual wiring"
|
|
field = "Individually wired Batch Fuel", twoWireBatchInjection, {isInjectionEnabled == 1 && injectionMode == @@injection_mode_e_IM_BATCH@@ }
|
|
field = "Override VE table load axis", veOverrideMode, { isInjectionEnabled }
|
|
field = "Override AFR table load axis", afrOverrideMode, { isInjectionEnabled }
|
|
field = "Injection phase control mode", injectionTimingMode, { isInjectionEnabled }
|
|
|
|
dialog = ignitionOutputs, "Ignition Outputs"
|
|
field = "Ignition Pin Mode", ignitionPinMode, {isIgnitionEnabled == 1}@@if_ts_show_ignitionPinMode
|
|
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
|
|
@@FIRINGORDER@@
|
|
|
|
dialog = ignitionBasic, ""
|
|
field = "Enabled", isIgnitionEnabled
|
|
field = "Mode", ignitionMode, {isIgnitionEnabled == 1}
|
|
field = "Individually wired Wasted Spark", twoWireBatchIgnition, {isIgnitionEnabled == 1 && ignitionMode == @@ignition_mode_e_IM_WASTED_SPARK@@ }
|
|
field = "Override ignition table load axis", ignOverrideMode, {isIgnitionEnabled}
|
|
field = "#Use fixed timing while validating with a timing gun"
|
|
field = "Timing Mode", timingMode, {isIgnitionEnabled == 1}
|
|
field = "Fixed Timing", fixedTiming, {isIgnitionEnabled == 1 && timingMode == 1}
|
|
|
|
dialog = ignitionSettings, "", xAxis
|
|
panel = ignitionBasic
|
|
panel = ignitionOutputs
|
|
|
|
dialog = baseEngineConfig, "Engine Configuration"
|
|
; field = "Engine preset", engineType
|
|
field = "Number of cylinders", cylindersCount
|
|
field = "Displacement", displacement
|
|
field = "Firing order", firingOrder
|
|
field = "Vehicle weight", vehicleWeight
|
|
|
|
dialog = engineMetadata, "Engine Metadata"
|
|
field = "#These metadata are used by rusEFI Online"
|
|
field = "Engine Make", engineMake
|
|
field = "Manufacturer Engine Code", engineCode
|
|
field = "Vehicle Name", vehicleName
|
|
field = "Compression Ratio", compressionRatio
|
|
field = "Forced Induction?", isForcedInduction
|
|
|
|
; Engine->Trigger configuration
|
|
dialog = triggerConfiguration_settings, "Trigger Pattern"
|
|
topicHelp = "triggerHelp"
|
|
field = "Trigger type", trigger_type
|
|
field = "Total tooth count", trigger_customTotalToothCount, {trigger_type == @@trigger_type_e_TT_TOOTHED_WHEEL@@}, {trigger_type == @@trigger_type_e_TT_TOOTHED_WHEEL@@}
|
|
field = "Missing/skipped tooth count", trigger_customSkippedToothCount, {trigger_type == @@trigger_type_e_TT_TOOTHED_WHEEL@@}, {trigger_type == @@trigger_type_e_TT_TOOTHED_WHEEL@@}
|
|
|
|
; see also in firmware '[doesTriggerImplyOperationMode]' tag
|
|
field = "What kind of engine", twoStroke
|
|
field = "Skipped wheel location", skippedWheelOnCam, { twoStroke == 0 && (@@TRIGGER_TYPE_WITHOUT_KNOWN_LOCATION@@) }
|
|
field = "With VR sensors only rising edge has reliable position"
|
|
field = "use only rising edge", useOnlyRisingEdgeForTrigger
|
|
field = "!Reminder that 4-stroke cycle is 720 degrees"
|
|
field = "!For well-known trigger types use '0' trigger angle offset"
|
|
field = "Trigger Angle Advance", globalTriggerAngleOffset
|
|
|
|
dialog = triggerConfiguration_gap, "Trigger Gap Override"
|
|
field = "!This is a pretty advanced feature for when you are debugging trigger synchronization"
|
|
field = "Override well known trigger gaps", overrideTriggerGaps
|
|
field = gapTrackingLengthOverride, gapTrackingLengthOverride, { overrideTriggerGaps == 1 }
|
|
field = "First gap from", triggerGapOverrideFrom1, { overrideTriggerGaps == 1 }
|
|
field = "First gap to", triggerGapOverrideTo1 , { overrideTriggerGaps == 1 }
|
|
|
|
field = "Second gap from", triggerGapOverrideFrom2, { overrideTriggerGaps == 1 }
|
|
field = "Second gap to", triggerGapOverrideTo2, { overrideTriggerGaps == 1 }
|
|
|
|
field = "Third gap from", triggerGapOverrideFrom3, { overrideTriggerGaps == 1 }
|
|
field = "Third gap to", triggerGapOverrideTo3, { overrideTriggerGaps == 1 }
|
|
|
|
field = "Gap #4 from", triggerGapOverrideFrom4, { overrideTriggerGaps == 1 }
|
|
field = "Gap #4 to", triggerGapOverrideTo4, { overrideTriggerGaps == 1 }
|
|
field = "Gap #5 from", triggerGapOverrideFrom5, { overrideTriggerGaps == 1 }
|
|
field = "Gap #5 to", triggerGapOverrideTo5, { overrideTriggerGaps == 1 }
|
|
|
|
dialog = triggerConfiguration_IO, "Advanced Trigger"
|
|
field = "!https://rusefi.com/s/vvt"
|
|
; todo: code generator to hard-code all triggers not requiring VVT?
|
|
; todo: https://github.com/rusefi/rusefi/issues/2077
|
|
|
|
field = "Cam mode (intake cams)", vvtMode1, {trigger_type != @@trigger_type_e_TT_MAZDA_MIATA_NA@@}
|
|
field = "Cam mode (exhaust cams)", vvtMode2, {trigger_type != @@trigger_type_e_TT_MAZDA_MIATA_NA@@}
|
|
field = "VVT sync edge", vvtCamSensorUseRise, {trigger_type != @@trigger_type_e_TT_MAZDA_MIATA_NA@@}
|
|
field = "#Set offset so VVT indicates 0 degrees in default position"
|
|
field = "VVT offset bank 1 intake", vvtOffsets1, { camInputs1 != 0 }
|
|
field = "VVT offset bank 1 exhaust", vvtOffsets2, { camInputs2 != 0 }
|
|
field = "VVT offset bank 2 intake", vvtOffsets3, { camInputs3 != 0 }
|
|
field = "VVT offset bank 2 exhaust", vvtOffsets4, { camInputs4 != 0 }
|
|
field = "Require CAM/VVT sync for ignition", isPhaseSyncRequiredForIgnition
|
|
field = "Maximum cam/VVT sync RPM", maxCamPhaseResolveRpm
|
|
field = "Print verbose VVT sync details to console",verboseVVTDecoding
|
|
field = "Print verbose trigger sync to console", verboseTriggerSynchDetails
|
|
field = "Do not print messages in case of sync error", silentTriggerError
|
|
field = "Enable noise filtering", useNoiselessTriggerDecoder, {trigger_type == @@trigger_type_e_TT_TOOTHED_WHEEL_60_2@@ || trigger_type == @@trigger_type_e_TT_TOOTHED_WHEEL_36_1@@}
|
|
|
|
dialog = triggerInputs, "Trigger Inputs"
|
|
field = "#Cam is primary if you have cam sensor as part of trigger shape"
|
|
; cam if
|
|
; two-stroke, or
|
|
; not crank trigger and ((vague trigger and cam choice) or not vague trigger)
|
|
field = "Cam Sensor (Primary channel)", triggerInputPins1, 1, { twoStroke == 1 || ( !(@@TRIGGER_CRANK_BASED@@) && ( ( (@@TRIGGER_TYPE_WITHOUT_KNOWN_LOCATION@@) && skippedWheelOnCam) || !(@@TRIGGER_TYPE_WITHOUT_KNOWN_LOCATION@@) ) ) }
|
|
field = "Crank Sensor (Primary channel)", triggerInputPins1, 1, { !(twoStroke == 1 || ( !(@@TRIGGER_CRANK_BASED@@) && ( ( (@@TRIGGER_TYPE_WITHOUT_KNOWN_LOCATION@@) && skippedWheelOnCam) || !(@@TRIGGER_TYPE_WITHOUT_KNOWN_LOCATION@@) ) )) }
|
|
|
|
field = "Invert Primary", invertPrimaryTriggerSignal
|
|
field = "Secondary channel", triggerInputPins2, { triggerInputPins1 != 0 && (@@TRIGGER_TYPE_WITH_SECOND_WHEEL@@) }
|
|
field = "Invert Secondary", invertSecondaryTriggerSignal, { triggerInputPins2 != 0 && (@@TRIGGER_TYPE_WITH_SECOND_WHEEL@@) }
|
|
field = "#VVT or Cam for 60/2 goes below"
|
|
field = "#If your engine has no exhaust cam sensor, use intake cam inputs"
|
|
field = "Cam sensor bank 1 intake", camInputs1, { vvtMode1 != @@vvt_mode_e_VVT_INACTIVE@@ }
|
|
field = "Cam sensor bank 1 exhaust", camInputs2, { vvtMode2 != @@vvt_mode_e_VVT_INACTIVE@@ && camInputs1 != 0 }
|
|
field = "Cam sensor bank 2 intake", camInputs3, { vvtMode1 != @@vvt_mode_e_VVT_INACTIVE@@ && camInputs1 != 0 }
|
|
field = "Cam sensor bank 2 exhaust", camInputs4, { vvtMode2 != @@vvt_mode_e_VVT_INACTIVE@@ && camInputs2 != 0 }
|
|
field = "Invert cam inputs", invertCamVVTSignal, { camInputs1 != 0 }
|
|
panel = triggerInputComparator @@if_ts_show_trigger_comparator
|
|
|
|
|
|
dialog = triggerConfiguration
|
|
panel = triggerConfiguration_settings, {1}, { consumeObdSensors == 0 }
|
|
panel = triggerInputs, {1}, { consumeObdSensors == 0 }
|
|
field = "Display logic signals", displayLogicLevelsInEngineSniffer
|
|
|
|
; Engine->Injection Settings
|
|
dialog = injChars, "Injector Settings", yAxis
|
|
field = "Injector Flow", injector_flow, {isInjectionEnabled == 1}
|
|
field = "Fuel rail pressure sensor", injectorPressureType, { isInjectionEnabled && (highPressureFuel_hwChannel || lowPressureFuel_hwChannel) }
|
|
field = "Injector flow compensation mode", injectorCompensationMode, { isInjectionEnabled }
|
|
field = "Injector reference pressure", fuelReferencePressure, { isInjectionEnabled && injectorCompensationMode != 0 }
|
|
|
|
dialog = fuelParams, "Fuel characteristics", yAxis
|
|
field = "Stoichiometric ratio", stoichRatioPrimary, {isInjectionEnabled == 1}
|
|
field = "E100 stoichiometric ratio", stoichRatioSecondary, {isInjectionEnabled == 1 && flexSensorPin != 0 }
|
|
|
|
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 != @@injection_mode_e_IM_SINGLE_POINT@@ && cylindersCount > 2}
|
|
field = "Injection Pin 4", injectionPins4, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 3}
|
|
field = "Injection Pin 5 ", injectionPins5, {isInjectionEnabled == 1 && injectionMode != @@injection_mode_e_IM_SINGLE_POINT@@ && cylindersCount > 4}
|
|
field = "Injection Pin 6 ", injectionPins6, {isInjectionEnabled == 1 && injectionMode != @@injection_mode_e_IM_SINGLE_POINT@@ && cylindersCount > 5}
|
|
field = "Injection Pin 7 ", injectionPins7, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 6}
|
|
field = "Injection Pin 8 ", injectionPins8, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 7}
|
|
field = "Injection Pin 9 ", injectionPins9, {isInjectionEnabled == 1 && cylindersCount > 8}
|
|
field = "Injection Pin 10 ", injectionPins10, {isInjectionEnabled == 1 && cylindersCount > 9}
|
|
field = "Injection Pin 11 ", injectionPins11, {isInjectionEnabled == 1 && cylindersCount > 10}
|
|
field = "Injection Pin 12 ", injectionPins12, {isInjectionEnabled == 1 && cylindersCount > 11}
|
|
field = ""@@if_ts_show_injectionPinMode
|
|
field = "injection Pin Mode", injectionPinMode, {isInjectionEnabled == 1}@@if_ts_show_injectionPinMode
|
|
|
|
dialog = cylinderBankSelect, "Cylinder Banks", yAxis
|
|
field = "Cylinder 1", cylinderBankSelect1, {isInjectionEnabled == 1}
|
|
field = "Cylinder 2", cylinderBankSelect2, {isInjectionEnabled == 1 && injectionMode != @@injection_mode_e_IM_SINGLE_POINT@@ && cylindersCount > 1}
|
|
field = "Cylinder 3", cylinderBankSelect3, {isInjectionEnabled == 1 && injectionMode != @@injection_mode_e_IM_SINGLE_POINT@@ && cylindersCount > 2}
|
|
field = "Cylinder 4", cylinderBankSelect4, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 3}
|
|
field = "Cylinder 5 ", cylinderBankSelect5, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 4}
|
|
field = "Cylinder 6 ", cylinderBankSelect6, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 5}
|
|
field = "Cylinder 7 ", cylinderBankSelect7, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 6}
|
|
field = "Cylinder 8 ", cylinderBankSelect8, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 7}
|
|
field = "Cylinder 9 ", cylinderBankSelect9, {isInjectionEnabled == 1 && cylindersCount > 8}
|
|
field = "Cylinder 10 ", cylinderBankSelect10, {isInjectionEnabled == 1 && cylindersCount > 9}
|
|
field = "Cylinder 11 ", cylinderBankSelect11, {isInjectionEnabled == 1 && cylindersCount > 10}
|
|
field = "Cylinder 12 ", cylinderBankSelect12, {isInjectionEnabled == 1 && cylindersCount > 11}
|
|
|
|
dialog = injectorNonlinearPolynomial, "Polynomial Adder", yAxis
|
|
field = "Add nonlinearity below pulse", applyNonlinearBelowPulse
|
|
field = "constant", injectorCorrectionPolynomial1
|
|
field = "x^1", injectorCorrectionPolynomial2
|
|
field = "x^2", injectorCorrectionPolynomial3
|
|
field = "x^3", injectorCorrectionPolynomial4
|
|
field = "x^4", injectorCorrectionPolynomial5
|
|
field = "x^5", injectorCorrectionPolynomial6
|
|
field = "x^6", injectorCorrectionPolynomial7
|
|
field = "x^7", injectorCorrectionPolynomial8
|
|
|
|
dialog = injectorNonlinear
|
|
field = "Small pulse correction mode", injectorNonlinearMode
|
|
panel = injectorNonlinearPolynomial, {1}, { injectorNonlinearMode != 0 }
|
|
|
|
dialog = testLuaOut, "Lua Out Test"
|
|
commandButton = "Lua Out #1", cmd_test_lua1
|
|
commandButton = "Lua Out #2", cmd_test_lua2
|
|
commandButton = "Lua Out #3", cmd_test_lua3
|
|
commandButton = "Lua Out #4", cmd_test_lua4
|
|
commandButton = "Lua Out #5", cmd_test_lua5
|
|
commandButton = "Lua Out #6", cmd_test_lua6
|
|
commandButton = "Lua Out #7", cmd_test_lua7
|
|
commandButton = "Lua Out #8", cmd_test_lua8
|
|
|
|
dialog = testInjectors, "Injector Test"
|
|
commandButton = "Injector #1", cmd_test_inj1
|
|
commandButton = "Injector #2", cmd_test_inj2, { cylindersCount >= 2 }
|
|
commandButton = "Injector #3", cmd_test_inj3, { cylindersCount >= 3 }
|
|
commandButton = "Injector #4", cmd_test_inj4, { cylindersCount >= 4 }
|
|
commandButton = "Injector #5", cmd_test_inj5, { cylindersCount >= 5 }
|
|
commandButton = "Injector #6", cmd_test_inj6, { cylindersCount >= 6 }
|
|
commandButton = "Injector #7", cmd_test_inj7, { cylindersCount >= 7 }
|
|
commandButton = "Injector #8", cmd_test_inj8, { cylindersCount >= 8 }
|
|
commandButton = "Injector #9", cmd_test_inj9, { cylindersCount >= 9 }
|
|
commandButton = "Injector #10", cmd_test_inj10, { cylindersCount >= 10 }
|
|
commandButton = "Injector #11", cmd_test_inj11, { cylindersCount >= 11 }
|
|
commandButton = "Injector #12", cmd_test_inj12, { cylindersCount >= 12 }
|
|
|
|
dialog = testSolenoids, "TCU Solenoid Test"
|
|
commandButton = "Solenoid #1", cmd_test_sol1
|
|
commandButton = "Solenoid #2", cmd_test_sol2
|
|
commandButton = "Solenoid #3", cmd_test_sol3
|
|
commandButton = "Solenoid #4", cmd_test_sol4
|
|
commandButton = "Solenoid #5", cmd_test_sol5
|
|
commandButton = "Solenoid #6", cmd_test_sol6
|
|
|
|
dialog = injectionSettingsEast, "", yAxis
|
|
panel = testInjectors
|
|
field = ""
|
|
|
|
dialog = injectionSettingsWest, "", yAxis
|
|
panel = injectorOutputSettings
|
|
field = ""
|
|
|
|
dialog = injectionSettings, "", xAxis
|
|
panel = injectionSettingsWest
|
|
panel = injectionSettingsEast
|
|
|
|
dialog = injectorConfig, "", yAxis
|
|
topicHelp = "fuelHelp"
|
|
panel = baseInjection
|
|
panel = injChars
|
|
panel = fuelParams
|
|
panel = injectorsDeadTime
|
|
|
|
dialog = ignitionCylExtra, "Cylinder offsets"
|
|
field = "Offset angle for each cylinder if you have an odd fire"
|
|
field = "engine, like a v-twin or some V6/V10 engines"
|
|
field = "#Positive numbers retard, negative numbers advance"
|
|
field = "Offset cyl 1", timing_offset_cylinder1
|
|
field = "Offset cyl 2", timing_offset_cylinder2, {cylindersCount > 1}
|
|
field = "Offset cyl 3", timing_offset_cylinder3, {cylindersCount > 2}
|
|
field = "Offset cyl 4", timing_offset_cylinder4, {cylindersCount > 3}
|
|
field = "Offset cyl 5", timing_offset_cylinder5, {cylindersCount > 4}
|
|
field = "Offset cyl 6", timing_offset_cylinder6, {cylindersCount > 5}
|
|
field = "Offset cyl 7", timing_offset_cylinder7, {cylindersCount > 6}
|
|
field = "Offset cyl 8", timing_offset_cylinder8, {cylindersCount > 7}
|
|
field = "Offset cyl 9", timing_offset_cylinder9, {cylindersCount > 8}
|
|
field = "Offset cyl 10", timing_offset_cylinder10, {cylindersCount > 9}
|
|
field = "Offset cyl 11", timing_offset_cylinder11, {cylindersCount > 10}
|
|
field = "Offset cyl 12", timing_offset_cylinder12, {cylindersCount > 11}
|
|
|
|
dialog = multisparkDwellParams, "Delay & Dwell"
|
|
field = "Spark duration", multisparkSparkDuration, {multisparkEnable}
|
|
field = "Subsequent spark dwell", multisparkDwell, {multisparkEnable}
|
|
|
|
dialog = multisparkMain, "Configuration"
|
|
field = "Maximum engine speed", multisparkMaxRpm, {multisparkEnable}
|
|
field = "Fire sparks for this angle duration" multisparkMaxSparkingAngle, {multisparkEnable}
|
|
field = "Maximum extra spark count" multisparkMaxExtraSparkCount, {multisparkEnable}
|
|
|
|
dialog = multisparkSettings, "Multispark"
|
|
field = "#WARNING! These settings have the potential to overheat ignition components"
|
|
field = "#and cause other nasty misbehavior. Use with care, at your own risk!"
|
|
field = "#Not recommended for use on distributor or wasted spark ignition systems."
|
|
field = "Enable multiple sparks", multisparkEnable
|
|
panel = multisparkMain
|
|
panel = multisparkDwellParams
|
|
|
|
dialog = dwellSettings, "", yAxis
|
|
panel = dwellCorrection
|
|
panel = dwellVoltageCorrection
|
|
|
|
; 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"
|
|
field = ""
|
|
field = "Lowest temperature", auxTempSensor1_tempC_1, {auxTempSensor1_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Resistance @ LT", auxTempSensor1_resistance_1, {auxTempSensor1_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = ""
|
|
field = "Middle temperature", auxTempSensor1_tempC_2, {auxTempSensor1_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Resistance @ MT", auxTempSensor1_resistance_2, {auxTempSensor1_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = ""
|
|
field = "Highest temperature", auxTempSensor1_tempC_3, {auxTempSensor1_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Resistance @ HT", auxTempSensor1_resistance_3, {auxTempSensor1_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
|
|
; 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"
|
|
field = ""
|
|
field = "Lowest temperature", auxTempSensor2_tempC_1, {auxTempSensor2_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Resistance @ LT", auxTempSensor2_resistance_1, {auxTempSensor2_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = ""
|
|
field = "Middle temperature", auxTempSensor2_tempC_2, {auxTempSensor2_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Resistance @ MT", auxTempSensor2_resistance_2, {auxTempSensor2_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
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 Body #1"
|
|
field = "Primary sensor", tps1_1AdcChannel
|
|
field = "Primary min", tpsMin, {tps1_1AdcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Primary max", tpsMax, {tps1_1AdcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Secondary sensor", tps1_2AdcChannel, {tps1_1AdcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Secondary min", tps1SecondaryMin, {tps1_2AdcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Secondary max", tps1SecondaryMax, {tps1_2AdcChannel != @@ADC_CHANNEL_NONE@@}
|
|
commandButton = "Auto Calibrate ETB 1", cmb_etb_auto_calibrate, {tps1_2AdcChannel != @@ADC_CHANNEL_NONE@@ && throttlePedalPositionAdcChannel != @@ADC_CHANNEL_NONE@@}
|
|
|
|
dialog = tpsNum2, "Throttle Body #2"
|
|
field = "Primary sensor", tps2_1AdcChannel
|
|
field = "Primary min", tps2Min, {tps2_1AdcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Primary max", tps2Max, {tps2_1AdcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Secondary sensor", tps2_2AdcChannel, {tps2_1AdcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Secondary min", tps2SecondaryMin, {tps2_2AdcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Secondary max", tps2SecondaryMax, {tps2_2AdcChannel != @@ADC_CHANNEL_NONE@@}
|
|
commandButton = "Auto Calibrate ETB 2", cmb_etb_auto_calibrate_2, {tps2_1AdcChannel != @@ADC_CHANNEL_NONE@@ && tps2_2AdcChannel != @@ADC_CHANNEL_NONE@@ && throttlePedalPositionAdcChannel != @@ADC_CHANNEL_NONE@@}
|
|
|
|
dialog = tpsLimits, "TPS Limits"
|
|
field = "TPS minimum valid value", tpsErrorDetectionTooLow, {tps1_1AdcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "TPS maximum valid value", tpsErrorDetectionTooHigh, {tps1_1AdcChannel != @@ADC_CHANNEL_NONE@@}
|
|
|
|
dialog = tpsSensorLeft, "TPS"
|
|
panel = tpsLimits
|
|
panel = tpsNum1
|
|
panel = tpsNum2
|
|
|
|
dialog = pedalSensorLeft, "Accelerator pedal"
|
|
field = "Accelerator position sensor", throttlePedalPositionAdcChannel
|
|
field = "Up voltage", throttlePedalUpVoltage
|
|
commandButton = "Grab Up", cmd_calibrate_pedal_up
|
|
field = "Down (WOT) voltage", throttlePedalWOTVoltage
|
|
commandButton = "Grab Down", cmd_calibrate_pedal_down
|
|
field = "Accelerator position 2nd sensor", throttlePedalPositionSecondAdcChannel
|
|
field = "Up voltage", throttlePedalSecondaryUpVoltage
|
|
field = "Down (WOT) voltage", throttlePedalSecondaryWOTVoltage
|
|
|
|
dialog = pedalGauges
|
|
gauge = pedalPositionGauge
|
|
gauge = rawPpsPrimaryGauge
|
|
gauge = rawPpsSecondaryGauge
|
|
|
|
dialog = tpsGauges
|
|
gauge = rawTps1PrimaryGauge
|
|
gauge = rawTps1SecondaryGauge
|
|
gauge = rawTps2PrimaryGauge
|
|
gauge = rawTps2SecondaryGauge
|
|
|
|
dialog = pedalSensor, "Accelerator pedal", border
|
|
panel = pedalSensorLeft, West
|
|
panel = pedalGauges, East
|
|
|
|
dialog = tpsSensor, "TPS", border
|
|
panel = tpsSensorLeft, West
|
|
panel = tpsGauges, East
|
|
|
|
dialog = wastegatePosConfig, "Wastegate position sensor"
|
|
field = "Input pin", wastegatePositionSensor
|
|
field = "Min (fully closed, most boost)", wastegatePositionMin
|
|
field = "Max (fully open, least boost)", wastegatePositionMax
|
|
|
|
dialog = idlePosConfig, "Idle position sensor"
|
|
field = "Input pin", idlePositionSensor
|
|
field = "Min (valve closed, low idle)", idlePositionMin
|
|
field = "Max (valve open, high idle)", idlePositionMax
|
|
|
|
dialog = wastegateIdlePosLeft, ""
|
|
panel = wastegatePosConfig
|
|
panel = idlePosConfig
|
|
|
|
dialog = wastegateIdlePosGauges, ""
|
|
gauge = rawWastegatePositionGauge, West
|
|
gauge = wastegatePosGauge, East
|
|
gauge = rawIdlePositionSensorGauge
|
|
gauge = idlePosSensGauge
|
|
|
|
dialog = wastegateIdlePos, "", border
|
|
panel = wastegateIdlePosLeft, West
|
|
panel = wastegateIdlePosGauges, East
|
|
|
|
dialog = mc33Dialog, "Low-Z injector control (MC33816)"
|
|
field = "SPI Chip Select", mc33816_cs
|
|
field = "SPI Device", mc33816spiDevice
|
|
field = "MC33816 rstb", mc33816_rstb
|
|
field = "MC33816 flag0", mc33816_flag0
|
|
|
|
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 = "Hold off time", mc33_t_hold_off
|
|
field = "Maximum injection duration", mc33_t_hold_tot
|
|
|
|
|
|
; Sensor Inputs
|
|
dialog = otherSensorInputs, "Other Sensor Inputs"
|
|
field = "Clutch Down", clutchDownPin
|
|
field = "Clutch Down inverted", clutchDownPinInverted
|
|
field = "Clutch Down mode", clutchDownPinMode
|
|
|
|
field = "Clutch Up", clutchUpPin
|
|
field = "Clutch Up inverted", clutchUpPinInverted
|
|
field = "Clutch Up mode", clutchUpPinMode
|
|
field = "Throttle Up switch", throttlePedalUpPin
|
|
field = "Brake pedal switch", brakePedalPin
|
|
field = "Flex fuel sensor", flexSensorPin
|
|
field = "Turbo Speed Sensor", turboSpeedSensorInputPin
|
|
field = "Turbo Speed Multiplier", turboSpeedSensorMultiplier
|
|
|
|
dialog = fuelLevelDialog, "Fuel Level Sensor"
|
|
field = "Input channel", fuelLevelSensor
|
|
panel = fuelLevelCurve
|
|
|
|
dialog = triggerInputComparator, "Built-in Comparator Settings (Kinetis-only)"
|
|
field = "Comparator Center Point Voltage", triggerCompCenterVolt
|
|
field = "Comparator hysteresis voltage (Min)", triggerCompHystMin
|
|
field = "Comparator hysteresis voltage (Max)", triggerCompHystMax
|
|
field = "VR-sensor saturation RPM", triggerCompSensorSatRpm
|
|
|
|
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
|
|
|
|
;
|
|
; 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"
|
|
field = "Throttle pedal Position Channel", throttlePedalPositionAdcChannel
|
|
field = "Throttle pedal Position #2", throttlePedalPositionSecondAdcChannel
|
|
field = "Primary input channel", triggerInputPins1
|
|
field = "Secondary channel", triggerInputPins2
|
|
field = "Cam Sync/VVT input", camInputs1
|
|
field = "CLT ADC input", clt_adcChannel
|
|
field = "IAT ADC input", iat_adcChannel
|
|
field = "vBatt ADC input", vbattAdcChannel
|
|
field = "TPS1 ADC input", tps1_1AdcChannel
|
|
field = "TPS2 ADC input", tps2_1AdcChannel
|
|
field = "MAF ADC input", mafAdcChannel
|
|
field = "AFR ADC input", afr_hwChannel
|
|
field = "Baro ADC input", baroSensor_hwChannel
|
|
field = "MAP ADC input", map_sensor_hwChannel
|
|
field = "FuelLevelSensor", fuelLevelSensor
|
|
field = "Vehicle Speed Input pin", vehicleSpeedSensorInputPin
|
|
field = "clutchDownPin", clutchDownPin
|
|
field = "clutchUpPin", clutchUpPin
|
|
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 = allTriggerDebug, "Trigger Debug"
|
|
field = "trigger 1 debug", triggerInputDebugPins1
|
|
field = "trigger 2 debug", triggerInputDebugPins2
|
|
field = "trigger 3 debug", triggerInputDebugPins3
|
|
field = "cam 1 debug", camInputsDebug1
|
|
field = "cam 2 debug", camInputsDebug2
|
|
field = "cam 3 debug", camInputsDebug3
|
|
field = "cam 4 debug", camInputsDebug4
|
|
|
|
dialog = allPinsMC33, "MC33816"
|
|
field = "Chip Select", mc33816_cs
|
|
field = rstb, mc33816_rstb
|
|
field = flag0, mc33816_flag0
|
|
field = mc33816_driven, mc33816_driven
|
|
field = mc33816spiDevice, mc33816spiDevice
|
|
field = hpfpValcePin, hpfpValvePin
|
|
|
|
dialog = allPins1_1
|
|
field = "trigger stimulator pin #1", triggerSimulatorPins1
|
|
field = "trigger stimulator pin #2", triggerSimulatorPins2
|
|
field = "trigger stimulator pin #2", triggerSimulatorPins3
|
|
field = "Warning Led", warningLedPin
|
|
field = "tle6240_cs", tle6240_cs
|
|
field = "tle6240 SPI", tle6240spiDevice
|
|
panel = joystickPanel
|
|
|
|
dialog = allPins1_2
|
|
field = "Tachometer output Pin", tachOutputPin
|
|
field = "O2 heater pin", o2heaterPin
|
|
field = "Idle Solenoid Pin", idle_solenoidPin
|
|
field = "Second Idle Solenoid Pin", secondSolenoidPin
|
|
field = "Idle Stepper Dir", idle_stepperDirectionPin
|
|
field = "Idle Stepper Step", idle_stepperStepPin
|
|
field = "Idle Stepper Enable", stepperEnablePin
|
|
field = "Fuel Pump Pin", fuelPumpPin
|
|
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", etbIo1_controlPin @@if_ts_show_etb_pins
|
|
field = "ETB#1 Disable", etbIo1_disablePin @@if_ts_show_etb_pins
|
|
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", etbIo2_controlPin @@if_ts_show_etb_pins
|
|
field = "ETB#2 Disable", etbIo2_disablePin @@if_ts_show_etb_pins
|
|
field = "SD CS Pin", sdCardCsPin @@if_ts_show_sd_card
|
|
field = "MIL / Check Engine Pin", malfunctionIndicatorPin
|
|
field = "test557pin", test557pin
|
|
field = "Fan Pin", fanPin
|
|
field = "A/C Relay", acRelayPin
|
|
field = "Main Relay Pin", mainRelayPin
|
|
field = "Starter Relay Pin", starterRelayDisablePin
|
|
|
|
dialog = allPins2_1
|
|
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 = auxSpeedSensorInputPin1, auxSpeedSensorInputPin1
|
|
field = auxSpeedSensorInputPin2, auxSpeedSensorInputPin2
|
|
|
|
|
|
dialog = allPins2_2
|
|
field = "Ignition Pin 1", ignitionPins1
|
|
field = "Ignition Pin 2", ignitionPins2
|
|
field = "Ignition Pin 3", ignitionPins3
|
|
field = "Ignition Pin 4", ignitionPins4
|
|
field = "Ignition Pin 5", ignitionPins5
|
|
field = "Ignition Pin 6", ignitionPins6
|
|
field = "Ignition Pin 7", ignitionPins7
|
|
field = "Ignition Pin 8", ignitionPins8
|
|
field = "Ignition Pin 9", ignitionPins9
|
|
field = "Ignition Pin 10", ignitionPins10
|
|
field = "Ignition Pin 11", ignitionPins11
|
|
field = "Ignition Pin 12", ignitionPins12
|
|
|
|
dialog = allPins2_3
|
|
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 = allTriggerDebug
|
|
panel = allPinsMC33
|
|
|
|
dialog = allPins1_3
|
|
field = "Aux ADC #1", auxAnalogInputs1
|
|
field = "Aux ADC #2", auxAnalogInputs2
|
|
field = "Aux ADC #3", auxAnalogInputs3
|
|
field = "Aux ADC #4", auxAnalogInputs4
|
|
field = "Aux ADC #5", auxAnalogInputs5
|
|
field = "Aux ADC #6", auxAnalogInputs6
|
|
field = "Aux ADC #7", auxAnalogInputs7
|
|
field = "Aux ADC #8", auxAnalogInputs8
|
|
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
|
|
field = "hip9011CsPin", hip9011CsPin
|
|
field = "LIS302DLCsPin", LIS302DLCsPin
|
|
field = "MIL / Check Engine", malfunctionIndicatorPin
|
|
field = "Saab CDM knock", cdmInputPin
|
|
field = "DRV8860 CS", drv8860_cs
|
|
field = "DRV8860 CS Mode", drv8860_csPinMode
|
|
field = "DRV8860 MISO pin", drv8860_miso
|
|
field = "DRV8860 SPI", drv8860spiDevice
|
|
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 = "VVT Pin #1", vvtPins1
|
|
field = "VVT Pin #2", vvtPins2
|
|
field = "VVT Pin #3", vvtPins3
|
|
field = "VVT Pin #4", vvtPins4
|
|
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
|
|
field = "L9779 Chip Select", l9779_cs @@if_ts_show_spi
|
|
field = "AUX Serial TX", auxSerialTxPin
|
|
field = "AUX Serial RX", auxSerialRxPin
|
|
field = "Start/Stop Button", startStopButtonPin
|
|
field = "Upshift Pin", tcuUpshiftButtonPin
|
|
field = "Downshift Pin", tcuDownshiftButtonPin
|
|
|
|
dialog = allPins3_1_and_2, "All Pins 3/3", xAxis
|
|
panel = allPins3_1
|
|
panel = allPins3_2
|
|
|
|
dialog = allPins1_1_and_2, "", xAxis
|
|
panel = allPins1_1
|
|
panel = allPins1_2
|
|
|
|
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
|
|
|
|
|
|
; Sensors->CLT sensor
|
|
dialog = clt_thermistor, "CLT sensor"
|
|
field = "Input channel", clt_adcChannel
|
|
field = "Bias resistor", clt_bias_resistor, {clt_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
|
|
settingSelector = "Common CLT Sensors"
|
|
settingOption = "GM CLT", clt_tempC_1=0,clt_resistance_1=9240,clt_tempC_2=40,clt_resistance_2=1459,clt_tempC_3=100,clt_resistance_3=177,useLinearCltSensor=0
|
|
settingOption = "Miata NA", clt_tempC_1=-20,clt_resistance_1=16150,clt_tempC_2=40,clt_resistance_2=1150,clt_tempC_3=80,clt_resistance_3=330,useLinearCltSensor=0
|
|
settingOption = "Miata NB", clt_tempC_1=-10,clt_resistance_1=9000,clt_tempC_2=20,clt_resistance_2=2500,clt_tempC_3=80,clt_resistance_3=320,useLinearCltSensor=0
|
|
settingOption = "Bosch Various", clt_tempC_1=0,clt_resistance_1=5896,clt_tempC_2=50,clt_resistance_2=834,clt_tempC_3=100,clt_resistance_3=187,useLinearCltSensor=0
|
|
|
|
field = "#Input three pairs of thermistor temperature and resistance."
|
|
field = "#Typical temperatures are -40 deg C, 0 deg C and 100 deg C"
|
|
field = ""
|
|
field = "Lowest temperature", clt_tempC_1, {clt_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Resistance @ LT", clt_resistance_1, {clt_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = ""
|
|
field = "Middle temperature", clt_tempC_2, {clt_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Resistance @ MT", clt_resistance_2, {clt_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
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@@}
|
|
|
|
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@@}
|
|
|
|
settingSelector = "Common IAT Sensors", {iat_adcChannel != 0}
|
|
settingOption = "GM IAT", iat_tempC_1=8.9,iat_resistance_1=7000,iat_tempC_2=30.6,iat_resistance_2=1930,iat_tempC_3=63.3,iat_resistance_3=560,useLinearIatSensor=0
|
|
settingOption = "Miata NA/NB", iat_tempC_1=-20,iat_resistance_1=16150,iat_tempC_2=40,iat_resistance_2=1150,iat_tempC_3=80,iat_resistance_3=330,useLinearIatSensor=0
|
|
settingOption = "Bosch Various", iat_tempC_1=-10,iat_resistance_1=9397,iat_tempC_2=30,iat_resistance_2=1707,iat_tempC_3=70,iat_resistance_3=436,useLinearIatSensor=0
|
|
|
|
field = "#Input three pairs of thermistor temperature and resistance."
|
|
field = "#Typical temperatures are -40 deg C, 0 deg C and 100 deg C"
|
|
field = ""
|
|
field = "Lowest temperature", iat_tempC_1, {iat_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Resistance @ LT", iat_resistance_1, {iat_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = ""
|
|
field = "Middle temperature", iat_tempC_2, {iat_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Resistance @ MT", iat_resistance_2, {iat_adcChannel != @@ADC_CHANNEL_NONE@@}
|
|
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@@}
|
|
|
|
dialog = iatGauges
|
|
gauge = IATGauge
|
|
gauge = rawIatGauge
|
|
|
|
dialog = iatSensor, "IAT Sensor", border
|
|
panel = iat_thermistor, West
|
|
panel = iatGauges, East
|
|
|
|
; Sensors->Oil pressure sensor
|
|
dialog = oilp_settings, "Oil Pressure Sensor"
|
|
field = "Oil Pressure ADC input", oilPressure_hwChannel
|
|
field = "low voltage", oilPressure_v1, {oilPressure_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "low pressure", oilPressure_value1, {oilPressure_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "high voltage", oilPressure_v2, {oilPressure_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "high pressure", oilPressure_value2, {oilPressure_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
|
|
dialog = oilPressureGauges
|
|
gauge = OilPressGauge
|
|
gauge = rawOilPressureGauge
|
|
|
|
dialog = oilPressureSensor, "", border
|
|
panel = oilp_settings, West
|
|
panel = oilPressureGauges, East
|
|
|
|
dialog = fuelp_settings, "Fuel Pressure Sensor"
|
|
field = "Fuel low pressure ADC input", lowPressureFuel_hwChannel
|
|
field = "low voltage", lowPressureFuel_v1, {lowPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "low pressure", lowPressureFuel_value1, {lowPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "high voltage", lowPressureFuel_v2, {lowPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "high pressure", lowPressureFuel_value2, {lowPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
|
|
field = "Fuel high pressure ADC input", highPressureFuel_hwChannel
|
|
field = "low voltage", highPressureFuel_v1, {highPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "low pressure", highPressureFuel_value1, {highPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "high voltage", highPressureFuel_v2, {highPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "high pressure", highPressureFuel_value2, {highPressureFuel_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
|
|
dialog = fuelPressureGauges
|
|
gauge = lowFuelPressureGauge
|
|
gauge = rawLowFuelPressureGauge
|
|
gauge = highFuelPressureGauge
|
|
gauge = rawHighFuelPressureGauge
|
|
|
|
dialog = fuelPressureSensor, "", border
|
|
panel = fuelp_settings, West
|
|
panel = fuelPressureGauges, East
|
|
|
|
dialog = auxLinearSensor1, "Aux Linear Sensor #1"
|
|
field = "ADC input", auxLinear1_hwChannel
|
|
field = "Low voltage", auxLinear1_v1, {auxLinear1_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Low value", auxLinear1_value1, {auxLinear1_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "High voltage", auxLinear1_v2, {auxLinear1_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "High value", auxLinear1_value2, {auxLinear1_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
|
|
dialog = auxLinearSensor2, "Aux Linear Sensor #2"
|
|
field = "ADC input", auxLinear2_hwChannel
|
|
field = "Low voltage", auxLinear2_v1, {auxLinear2_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "Low value", auxLinear2_value1, {auxLinear2_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "High voltage", auxLinear2_v2, {auxLinear2_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
field = "High value", auxLinear2_value2, {auxLinear2_hwChannel != @@ADC_CHANNEL_NONE@@}
|
|
|
|
dialog = auxLinearSensors
|
|
panel = auxLinearSensor1
|
|
panel = auxLinearSensor2
|
|
|
|
; Sensors->MAP sensor
|
|
dialog = mapSensorAnalog, "MAP sensor", yAxis
|
|
field = "MAP ADC input", map_sensor_hwChannel
|
|
field = "MAP type", map_sensor_type, { map_sensor_hwChannel != @@ADC_CHANNEL_NONE@@ }
|
|
field = "MAP value low point", map_sensor_lowValue, { map_sensor_hwChannel != @@ADC_CHANNEL_NONE@@ && map_sensor_type == 0 }
|
|
field = "MAP voltage low point", mapLowValueVoltage, { map_sensor_hwChannel != @@ADC_CHANNEL_NONE@@ && map_sensor_type == 0 }
|
|
field = "MAP value high point", map_sensor_highValue,{ map_sensor_hwChannel != @@ADC_CHANNEL_NONE@@ && map_sensor_type == 0 }
|
|
field = "MAP voltage high value", mapHighValueVoltage, { map_sensor_hwChannel != @@ADC_CHANNEL_NONE@@ && map_sensor_type == 0 }
|
|
|
|
dialog = mapCommon, "MAP common settings"
|
|
field = "Low value threshold", mapErrorDetectionTooLow
|
|
field = "High value threshold", mapErrorDetectionTooHigh
|
|
field = ""
|
|
field = "Measure Map Only In One Cylinder", measureMapOnlyInOneCylinder
|
|
field = "Cylinder count to sample MAP", mapMinBufferLength
|
|
|
|
dialog = mapSettings, "", yAxis
|
|
panel = mapCommon
|
|
panel = mapSensorAnalog
|
|
|
|
dialog = baroSettings, "Baro sensor"
|
|
field = "Baro ADC input", baroSensor_hwChannel
|
|
field = "Low Value", baroSensor_lowValue, {baroSensor_hwChannel != @@ADC_CHANNEL_NONE@@ || lps25BaroSensorScl != 0 }
|
|
field = "High Value", baroSensor_highValue, {baroSensor_hwChannel != @@ADC_CHANNEL_NONE@@ || lps25BaroSensorScl != 0 }
|
|
field = "Type", baroSensor_type, {baroSensor_hwChannel != @@ADC_CHANNEL_NONE@@ || lps25BaroSensorScl != 0 }
|
|
field = "LPS2x Baro SCL", lps25BaroSensorScl, { baroSensor_hwChannel == @@ADC_CHANNEL_NONE@@}
|
|
field = "LPS2x Baro SDA", lps25BaroSensorSda, { 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
|
|
|
|
; Sensors->EGO sensor
|
|
dialog = egoSettings_sensor, "EGO sensor"
|
|
field = "Type", afr_type
|
|
; todo: only use these values for custom!
|
|
field = "low voltage", afr_v1
|
|
field = "low value", afr_value1
|
|
field = "high voltage", afr_v2
|
|
field = "high value", afr_value2
|
|
field = "Correction", egoValueShift
|
|
|
|
dialog = egoSettings_IO, "EGO Sensor I/O"
|
|
field = "Input channel", afr_hwChannel
|
|
field = "Heater pin", o2heaterPin
|
|
|
|
dialog = egoSettings, "", yAxis
|
|
field = "Enable CAN Wideband", enableAemXSeries, { canReadEnabled }
|
|
field = "Enable Innovate LC-2 Serial", enableInnovateLC2, { auxSerialRxPin && auxSerialTxPin }
|
|
panel = egoSettings_IO
|
|
panel = egoSettings_sensor, {afr_hwChannel != @@ADC_CHANNEL_NONE@@ && enableAemXSeries == 0 && !auxSerialRxPin && !auxSerialTxPin}
|
|
|
|
; Engine->EGT inputs
|
|
dialog = egtInputs, "EGT inputs"
|
|
field = "SPI", max31855spiDevice
|
|
field = "CS #1", max31855_cs1
|
|
field = "CS #2", max31855_cs2
|
|
field = "CS #3", max31855_cs3
|
|
field = "CS #4", max31855_cs4
|
|
field = "CS #5", max31855_cs5
|
|
field = "CS #6", max31855_cs6
|
|
field = "CS #7", max31855_cs7
|
|
field = "CS #8", max31855_cs8
|
|
|
|
; Engine->idle Settings
|
|
dialog = idleSolenoid, "Solenoid"
|
|
field = "Idle Solenoid Pin Mode", idle_solenoidPinMode, !useStepperIdle
|
|
field = "Idle Solenoid Pin", idle_solenoidPin, !useStepperIdle
|
|
field = "Second Idle Solenoid Pin", secondSolenoidPin, { !useStepperIdle && isDoubleSolenoidIdle }
|
|
field = "Idle Solenoid Frequency", idle_solenoidFrequency, !useStepperIdle
|
|
|
|
dialog = etbHbridgeHardware, "ETB H-Bridge Hardware"
|
|
field = "Two-wire mode", etb_use_two_wires
|
|
field = "No1 Direction #1", etbIo1_directionPin1
|
|
field = "No1 Direction #2", etbIo1_directionPin2
|
|
field = "No1 Control", etbIo1_controlPin
|
|
field = "No1 Disable", etbIo1_disablePin
|
|
field = "No2 Direction #1", etbIo2_directionPin1
|
|
field = "No2 Direction #2", etbIo2_directionPin2
|
|
field = "No2 Control", etbIo2_controlPin
|
|
field = "No2 Disable", etbIo2_disablePin
|
|
|
|
dialog = stepperHbridgeHardware, "Stepper H-Bridge Hardware"
|
|
topicHelp = "stepperHbridgeHardwareHelp"
|
|
field = "Inverted driver pins", stepperDcInvertedPins
|
|
field = "No1 Direction #1", stepperDcIo1_directionPin1
|
|
field = "No1 Direction #2", stepperDcIo1_directionPin2
|
|
field = "No1 Disable", stepperDcIo1_disablePin
|
|
field = "No2 Direction #1", stepperDcIo2_directionPin1
|
|
field = "No2 Direction #2", stepperDcIo2_directionPin2
|
|
field = "No2 Disable", stepperDcIo2_disablePin
|
|
|
|
dialog = idleStepperHw, "Stepper Controller Hardware"
|
|
topicHelp = "idleStepperHwHelp"
|
|
field = "Idle Stepper Step Pin", idle_stepperStepPin
|
|
field = "Idle Stepper Dir Pin", idle_stepperDirectionPin
|
|
field = "Idle Stepper Dir Pin Mode", stepperDirectionPinMode
|
|
field = "Idle Stepper Enable Pin", stepperEnablePin
|
|
field = "Idle Stepper Enable Pin Mode", stepperEnablePinMode
|
|
|
|
dialog = stepperDirectDriveHardware, "Stepper Direct-Drive Hardware"
|
|
topicHelp = "stepperDirectDriveHardwareHelp"
|
|
field = "Stepper A+", stepper_raw_output1
|
|
field = "Stepper A-", stepper_raw_output2
|
|
field = "Stepper B+", stepper_raw_output3
|
|
field = "Stepper B-", stepper_raw_output4
|
|
|
|
dialog = idleStepperHwType, ""
|
|
panel = idleStepperHw, { useStepperIdle && !useHbridgesToDriveIdleStepper && !useRawOutputToDriveIdleStepper }
|
|
panel = stepperHbridgeHardware, { useStepperIdle && useHbridgesToDriveIdleStepper && !useRawOutputToDriveIdleStepper }
|
|
panel = stepperDirectDriveHardware, { useStepperIdle && !useHbridgesToDriveIdleStepper && useRawOutputToDriveIdleStepper }
|
|
|
|
dialog = idleStepperGeneral, ""
|
|
field = "Drive stepper with dual H bridges", useHbridgesToDriveIdleStepper, useStepperIdle
|
|
field = "Drive stepper with PushPull outputs", useRawOutputToDriveIdleStepper, { useStepperIdle && !useHbridgesToDriveIdleStepper }
|
|
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
|
|
|
|
dialog = idleStepperMicro, "Micro-Stepping"
|
|
field = "Stepping Mode", stepperNumMicroSteps, useHbridgesToDriveIdleStepper
|
|
field = "Min. Duty Cycle", stepperMinDutyCycle, { useHbridgesToDriveIdleStepper && stepperNumMicroSteps > 1 }
|
|
field = "Max. Duty Cycle", stepperMaxDutyCycle, { useHbridgesToDriveIdleStepper && stepperNumMicroSteps > 1 }
|
|
|
|
dialog = idleStepper, "Stepper"
|
|
panel = idleStepperGeneral
|
|
panel = idleStepperHwType
|
|
panel = idleStepperMicro
|
|
|
|
dialog = idleHwType, "Idle Valve Hardware", yAxis
|
|
panel = idleSolenoid
|
|
panel = idleStepper
|
|
|
|
dialog = idlehw, "", yAxis
|
|
field = "!ECU reboot needed to apply these settings"
|
|
field = "Use Stepper", useStepperIdle
|
|
field = "Double Solenoid Mode", isDoubleSolenoidIdle
|
|
field = "Use electronic throttle for idle", useETBforIdleControl, { throttlePedalPositionAdcChannel != @@ADC_CHANNEL_NONE@@ }
|
|
field = "Electronic throttle idle range", etbIdleThrottleRange, { useETBforIdleControl == 1 }
|
|
panel = idleHwType
|
|
|
|
dialog = idlePidSettings, "Closed Loop Idle"
|
|
field = "P-factor", idleRpmPid_pFactor
|
|
field = "I-factor", idleRpmPid_iFactor
|
|
field = "derivativeFilterLoss", idle_derivativeFilterLoss
|
|
field = "antiwindupFreq", idle_antiwindupFreq
|
|
field = "D-factor", idleRpmPid_dFactor
|
|
field = "Offset", idleRpmPid_offset
|
|
field = "Min", idleRpmPid_minValue
|
|
field = "Max", idleRpmPid_maxValue
|
|
field = "iTerm Min", idlerpmpid_iTermMin
|
|
field = "iTerm Max", idlerpmpid_iTermMax
|
|
field = "PID Extra for low RPM", pidExtraForLowRpm
|
|
field = idleIncrementalPidCic, idleIncrementalPidCic
|
|
field = "use Cic Pid", useCicPidForIdle
|
|
field = "Use IAC PID Multiplier Table", useIacPidMultTable
|
|
|
|
dialog = idleOpenLoop, "Open Loop Idle"
|
|
slider = "Open loop base position", manIdlePosition, horizontal
|
|
field = "A/C adder", acIdleExtraOffset
|
|
field = "A/C target adder", acIdleRpmBump
|
|
field = "Fan #1 adder", fan1ExtraIdle
|
|
field = "Fan #2 adder", fan2ExtraIdle
|
|
field = "Extra idle air if throttle pressed", iacByTpsTaper
|
|
|
|
dialog = idleGating, "Idle Detection Thresholds"
|
|
field = "TPS threshold", idlePidDeactivationTpsThreshold
|
|
field = "RPM upper limit", idlePidRpmUpperLimit
|
|
field = "RPM deadzone", idlePidRpmDeadZone
|
|
field = "Max vehicle speed", maxIdleVss
|
|
|
|
dialog = idleExtra, "Extra Idle Features"
|
|
field = "Use idle ignition table", useSeparateAdvanceForIdle
|
|
field = "Use idle VE table", useSeparateVeForIdle
|
|
field = "Use idle tables for cranking taper", useSeparateIdleTablesForCrankingTaper
|
|
field = "Use coasting idle table", useIacTableForCoasting, {idleMode == 0}
|
|
field = useInstantRpmForIdle, useInstantRpmForIdle
|
|
field = "Detailed status in console", isVerboseIAC
|
|
|
|
dialog = idleSettings, "", yAxis
|
|
field = "Idle control mode", idleMode
|
|
|
|
field = "! Solenoid idle control is disabled at zero RPM"
|
|
|
|
; gating applies both to open loop and closed loop!
|
|
panel = idleGating
|
|
; closed loop mode is an addition on top of open loop, so idleOpenLoop stays open even when closed loop is selected
|
|
panel = idleOpenLoop
|
|
panel = idlePidSettings, { idleMode == @@idle_mode_e_IM_AUTO@@ }
|
|
panel = idleExtra
|
|
|
|
dialog = idleTimingPidCorrDialog, "", yAxis
|
|
field = ""
|
|
field = "Enable closed loop idle ignition timing", useIdleTimingPidControl
|
|
field = "RPM deadzone", idleTimingPidDeadZone
|
|
field = ""
|
|
field = "#Gain is in degrees advance per rpm away from target"
|
|
field = "#A good starting point is 0.1 = 10 deg per 100 rpm"
|
|
field = "Proportional gain", idleTimingPid_pFactor, {useIdleTimingPidControl == 1}
|
|
field = "Derivative gain", idleTimingPid_dFactor, {useIdleTimingPidControl == 1}
|
|
field = ""
|
|
field = "Min adjustment (retard)", idleTimingPid_minValue, {useIdleTimingPidControl == 1}
|
|
field = "Max adjustment (advance)", idleTimingPid_maxValue, {useIdleTimingPidControl == 1}
|
|
field = ""
|
|
field = "#Use debug mode 'Timing' to view idle timing adjustment"
|
|
|
|
; Engine->Fan Settings
|
|
dialog = fan1Settings, "Fan 1"
|
|
field = "Pin", fanPin
|
|
field = "Pin mode", fanPinMode
|
|
field = "On temperature", fanOnTemperature
|
|
field = "Off temperature", fanOffTemperature
|
|
field = "Enable with AC", enableFan1WithAc
|
|
field = "Disable when engine stopped", disableFan1WhenStopped
|
|
|
|
dialog = fan2Settings, "Fan 2"
|
|
field = "Pin", fan2Pin
|
|
field = "Pin mode", fan2PinMode
|
|
field = "On temperature", fan2OnTemperature
|
|
field = "Off temperature", fan2OffTemperature
|
|
field = "Enable with AC", enableFan2WithAc
|
|
field = "Disable when engine stopped", disableFan2WhenStopped
|
|
|
|
dialog = fanTest, "", xAxis
|
|
commandButton = "Test Fan 1", cmd_test_fan_1
|
|
commandButton = "Test Fan 2", cmd_test_fan_2
|
|
|
|
indicatorPanel = fanIndicators, 2
|
|
indicator = { isFanOn }, "fan 1 off", "fan 1 on", white, black, green, black
|
|
indicator = { isFan2On }, "fan 2 off", "fan 2 on", white, black, green, black
|
|
|
|
dialog = acSettingsWest, "A/C Settings"
|
|
field = "A/C switch", acSwitch
|
|
field = "A/C switch mode", acSwitchMode
|
|
field = "A/C Relay", acRelayPin
|
|
field = "A/C Relay Mode", acRelayPinMode
|
|
field = "Max RPM", maxAcRpm
|
|
field = "Max CLT", maxAcClt
|
|
field = "Max TPS", maxAcTps
|
|
|
|
dialog = acSettings, "", border
|
|
panel = acSettingsWest, West
|
|
panel = ac_controlIndicatorPanel, East
|
|
|
|
dialog = fanSetting, "Fan Settings"
|
|
panel = fan1Settings
|
|
panel = fan2Settings
|
|
panel = fanTest
|
|
panel = fanIndicators
|
|
|
|
dialog = fuelPump, "Fuel Pump"
|
|
field = "Pin", fuelPumpPin
|
|
field = "Pin mode", fuelPumpPinMode
|
|
field = "Prime duration", startUpFuelPumpDuration
|
|
|
|
; Controller->Actuator Outputs
|
|
dialog = mainRelayDialog, "Main relay output"
|
|
field = "microRusEFI main relay control is hard wired on pin #29"@@if_ts_show_main_relay_microRusEFI_message
|
|
field = "Pin", mainRelayPin@@if_ts_show_main_relay
|
|
field = "Pin mode", mainRelayPinMode@@if_ts_show_main_relay
|
|
|
|
dialog = starterRelay, "Starter relay output"
|
|
field = "Pin", starterRelayDisablePin
|
|
field = "Pin mode", starterRelayDisablePinMode
|
|
|
|
dialog = statusLeds, "Status LEDs"
|
|
field = "Running status LED", runningLedPin
|
|
field = "TS communication status LED", communicationLedPin
|
|
field = "Warning LED", warningLedPin
|
|
field = "Trigger error LED", triggerErrorPin
|
|
field = "Debug Trigger Sync", debugTriggerSync
|
|
|
|
; Engine->MIL Settings
|
|
dialog = malfunction, "Check Engine Settings"
|
|
field = "Pin", malfunctionIndicatorPin
|
|
field = "Pin mode", malfunctionIndicatorPinMode
|
|
field = "Warning Period", warningPeriod
|
|
|
|
dialog = softwareKnockCfg, "Configuration"
|
|
field = "Enable", enableSoftwareKnock
|
|
field = "Cylinder Bore", cylinderBore
|
|
field = "Knock filter frequency", knockBandCustom, {enableSoftwareKnock}
|
|
field = "knockDetectionWindowStart",knockDetectionWindowStart, {enableSoftwareKnock}
|
|
field = "knockSamplingDuration", knockSamplingDuration, {enableSoftwareKnock}
|
|
field = knockRetardAggression, knockRetardAggression
|
|
field = knockRetardReapplyRate, knockRetardReapplyRate
|
|
field = knockRetardMaximum, knockRetardMaximum
|
|
|
|
field = ""
|
|
field = "Select the nearest sensor for each cylinder"
|
|
field = "Cylinder 1", knockBankCyl1, {enableSoftwareKnock}
|
|
field = "Cylinder 2", knockBankCyl2, {enableSoftwareKnock && cylindersCount >= 2}
|
|
field = "Cylinder 3", knockBankCyl3, {enableSoftwareKnock && cylindersCount >= 3}
|
|
field = "Cylinder 4", knockBankCyl4, {enableSoftwareKnock && cylindersCount >= 4}
|
|
field = "Cylinder 5", knockBankCyl5, {enableSoftwareKnock && cylindersCount >= 5}
|
|
field = "Cylinder 6", knockBankCyl6, {enableSoftwareKnock && cylindersCount >= 6}
|
|
field = "Cylinder 7", knockBankCyl7, {enableSoftwareKnock && cylindersCount >= 7}
|
|
field = "Cylinder 8", knockBankCyl8, {enableSoftwareKnock && cylindersCount >= 8}
|
|
field = "Cylinder 9", knockBankCyl9, {enableSoftwareKnock && cylindersCount >= 9}
|
|
field = "Cylinder 10", knockBankCyl10, {enableSoftwareKnock && cylindersCount >= 10}
|
|
field = "Cylinder 11", knockBankCyl11, {enableSoftwareKnock && cylindersCount >= 11}
|
|
field = "Cylinder 12", knockBankCyl12, {enableSoftwareKnock && cylindersCount >= 12}
|
|
|
|
dialog = softwareKnock, "Software Knock", border
|
|
panel = softwareKnockCfg, West
|
|
panel = knockThresholdCurve, Center
|
|
|
|
; Engine->hip9011 Settings
|
|
dialog = hipFunction, "HIP9011 Settings (knock decoder)"
|
|
field = "Enabled", isHip9011Enabled
|
|
field = "!ECU reboot needed to apply these settings"
|
|
field = "IntHold pin (hip9011 input)", hip9011IntHoldPin, {isHip9011Enabled == 1}
|
|
field = "IntHold pin (hip9011 input) mode", hip9011IntHoldPinMode, {isHip9011Enabled == 1}
|
|
field = "ChipSelect pin", hip9011CsPin, {isHip9011Enabled == 1}
|
|
field = "ChipSelect mode", hip9011CsPinMode, {isHip9011Enabled == 1}
|
|
field = "hip Output/stm input", hipOutputChannel, {isHip9011Enabled == 1}
|
|
field = "prescaler & SDO", hip9011PrescalerAndSDO, {isHip9011Enabled == 1}
|
|
field = "knockDetectionWindowStart", knockDetectionWindowStart, {isHip9011Enabled == 1}
|
|
field = "knockDetectionWindowEnd", knockDetectionWindowEnd, {isHip9011Enabled == 1}
|
|
field = "cylinder bore (mm)", cylinderBore, {isHip9011Enabled == 1}
|
|
field = "Band Freq override", knockBandCustom, {isHip9011Enabled == 1}
|
|
field = "SPI device", hip9011SpiDevice, {isHip9011Enabled == 1}
|
|
panel = knockThresholdCurve
|
|
|
|
; Engine->cj125 Settings
|
|
dialog = cj125Function, "CJ125 Settings (wbo decoder)"
|
|
field = "Enabled", isCJ125Enabled
|
|
commandButton = "Calibrate", cmd_cj125_calibrate
|
|
field = "Using 4.9 sensor?", cj125isLsu49
|
|
field = "!ECU reboot needed to apply these settings"
|
|
field = "ChipSelect pin", cj125CsPin, {isCJ125Enabled == 1}
|
|
field = "ChipSelect mode", cj125CsPinMode, {isCJ125Enabled == 1}
|
|
field = "!See also 'Controller-SPI setting'"
|
|
field = "SPI device", cj125SpiDevice
|
|
field = "Heater pin", wboHeaterPin, {isCJ125Enabled == 1}
|
|
field = "UA input", cj125ua, {isCJ125Enabled == 1}
|
|
field = "UR input", cj125ur, {isCJ125Enabled == 1}
|
|
field = "Is UA input divided?" cj125isUaDivided, {isCJ125Enabled == 1}
|
|
field = "Is UR input divided?" cj125isUrDivided, {isCJ125Enabled == 1}
|
|
|
|
dialog = spiFunction, "SPI settings"
|
|
field = "!ECU reboot needed to apply these settings"
|
|
field = "SPI1 enable", is_enabled_spi_1
|
|
field = "SPI1 MOSI", spi1mosiPin, {is_enabled_spi_1 == 1}
|
|
field = "SPI1mosi mode", spi1MosiMode, {is_enabled_spi_1 == 1}
|
|
field = "SPI1 MISO", spi1misoPin, {is_enabled_spi_1 == 1}
|
|
field = "SPI1miso mode", spi1MisoMode, {is_enabled_spi_1 == 1}
|
|
field = "SPI1 SCK", spi1sckPin, {is_enabled_spi_1 == 1}
|
|
field = "SPI1sck mode", spi1SckMode, {is_enabled_spi_1 == 1}
|
|
|
|
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}
|
|
field = "SPI2 MISO", spi2misoPin, {is_enabled_spi_2 == 1}
|
|
field = "SPI2miso mode", spi2MisoMode, {is_enabled_spi_2 == 1}
|
|
field = "SPI2 SCK", spi2sckPin, {is_enabled_spi_2 == 1}
|
|
field = "SPI2sck mode", spi2SckMode, {is_enabled_spi_2 == 1}
|
|
|
|
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}
|
|
field = "SPI3 MISO", spi3misoPin, {is_enabled_spi_3 == 1}
|
|
field = "SPI3miso mode", spi3MisoMode, {is_enabled_spi_3 == 1}
|
|
field = "SPI3 SCK", spi3sckPin, {is_enabled_spi_3 == 1}
|
|
field = "SPI3sck mode", spi3SckMode, {is_enabled_spi_3 == 1}
|
|
field = "LIS302DLCsPin", LIS302DLCsPin
|
|
|
|
dialog = stftPartitioning, "Region Configuration"
|
|
field = "Idle region RPM", stft_maxIdleRegionRpm
|
|
field = "Overrun region load", stft_maxOverrunLoad
|
|
field = "Power region load", stft_minPowerLoad
|
|
|
|
dialog = stftPartitionSettingsMain, "Main Region", xAxis
|
|
field = "Time const", stft_cellCfgs4_timeConstant
|
|
field = "Max add", stft_cellCfgs4_maxAdd
|
|
field = "Max remove", stft_cellCfgs4_maxRemove
|
|
|
|
dialog = stftPartitionSettingsIdle, "Idle Region", xAxis
|
|
field = "Time const", stft_cellCfgs1_timeConstant
|
|
field = "Max add", stft_cellCfgs1_maxAdd
|
|
field = "Max remove", stft_cellCfgs1_maxRemove
|
|
|
|
dialog = stftPartitionSettingsPower, "Power Region", xAxis
|
|
field = "Time const", stft_cellCfgs3_timeConstant
|
|
field = "Max add", stft_cellCfgs3_maxAdd
|
|
field = "Max remove", stft_cellCfgs3_maxRemove
|
|
|
|
dialog = stftPartitionSettingsOverrun, "Overrun Region", xAxis
|
|
field = "Time const", stft_cellCfgs2_timeConstant
|
|
field = "Max add", stft_cellCfgs2_maxAdd
|
|
field = "Max remove", stft_cellCfgs2_maxRemove
|
|
|
|
dialog = fuelClosedLoopDialog, "Closed loop fuel correction"
|
|
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}
|
|
|
|
dialog = vvtPidDialog0, "Configuration"
|
|
field = "Activation Delay", vvtActivationDelayMs
|
|
commandButton = "Enable VVT#1 debug mode", cmd_test_debug_mode_vvt
|
|
field = "VVT solenoid bank 1 intake", vvtPins1
|
|
field = "VVT solenoid bank 1 exhaust", vvtPins2
|
|
field = "VVT solenoid bank 2 intake", vvtPins3
|
|
field = "VVT solenoid bank 2 exhaust", vvtPins4
|
|
field = "PWM frequency", vvtOutputFrequency1, {vvtPins1 != 0 || vvtPins2 != 0}
|
|
field = "Detailed status in console", isVerboseAuxPid1, {vvtPins1 != 0 || vvtPins2 != 0}
|
|
|
|
dialog = vvtPidDialog1, "Intake PID"
|
|
field = "offset", auxPid1_offset, {vvtPins1 != 0}
|
|
field = "P factor", auxPid1_pFactor, {vvtPins1 != 0}
|
|
field = "I factor", auxPid1_iFactor, {vvtPins1 != 0}
|
|
field = "D factor", auxPid1_dFactor, {vvtPins1 != 0}
|
|
field = "Min", auxPid1_minValue, {vvtPins1 != 0}
|
|
field = "Max", auxPid1_maxValue, {vvtPins1 != 0}
|
|
|
|
dialog = vvtPidDialog2, "Exhaust PID"
|
|
field = "offset", auxPid2_offset, {vvtPins2 != 0}
|
|
field = "P factor", auxPid2_pFactor, {vvtPins2 != 0}
|
|
field = "I factor", auxPid2_iFactor, {vvtPins2 != 0}
|
|
field = "D factor", auxPid2_dFactor, {vvtPins2 != 0}
|
|
field = "Min", auxPid2_minValue, {vvtPins2 != 0}
|
|
field = "Max", auxPid2_maxValue, {vvtPins2 != 0}
|
|
|
|
dialog = vvtPidDialog, "VVT Configuration & PID", border
|
|
panel = vvtPidDialog0, West
|
|
panel = vvtPidDialog1, Center
|
|
panel = vvtPidDialog2, East
|
|
|
|
; Engine->Battery & Alternator
|
|
dialog = batteryDialog, "Battery Settings", yAxis
|
|
field = "vBatt ADC input", vbattAdcChannel
|
|
field = "Battery Input Divider Coefficient", vbattDividerCoeff
|
|
dialog = alternator, "Alternator Settings", yAxis
|
|
field = "Enabled", isAlternatorControlEnabled
|
|
field = "simple on/off mode", onOffAlternatorLogic, {isAlternatorControlEnabled == 1}
|
|
field = "Target", targetVBatt, {isAlternatorControlEnabled == 1}
|
|
field = "Pin", alternatorControlPin, {isAlternatorControlEnabled == 1}
|
|
field = "Pin Mode", alternatorControlPinMode, {isAlternatorControlEnabled == 1}
|
|
field = "PWM frequency", alternatorPwmFrequency, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0}
|
|
field = "Off Above TPS", alternatorOffAboveTps, {isAlternatorControlEnabled == 1}
|
|
field = "Detailed status in console", isVerboseAlternator, {isAlternatorControlEnabled == 1}
|
|
field = "#PID control"
|
|
field = "offset", alternatorControl_offset, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0}
|
|
field = "P factor", alternatorControl_pFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0}
|
|
field = "I factor", alternatorControl_iFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0}
|
|
field = "D factor", alternatorControl_dFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0}
|
|
field = "Min", alternatorControl_minValue, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0}
|
|
field = "Max", alternatorControl_maxValue, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0}
|
|
field = "#% duty = Pterm + Iterm + Dterm + offset%"
|
|
|
|
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}
|
|
|
|
dialog = energySystems, "Battery and Alternator Settings", yAxis
|
|
panel = batteryDialog
|
|
panel = alternator
|
|
panel = startStopDialog
|
|
|
|
dialog = speedSensorAnalog, "Speed sensor"
|
|
field = "Input pin", vehicleSpeedSensorInputPin
|
|
field = "Filter parameter", vssFilterReciprocal, { vehicleSpeedSensorInputPin != @@ADC_CHANNEL_NONE@@ }
|
|
|
|
;
|
|
; We prefer quantities that users can actually measure or inspect without math, so we have
|
|
; two separate natural settings here without one 'sensor tooth to wheel revolution' ratio
|
|
;
|
|
field = "Wheel revolutions per kilometer", driveWheelRevPerKm
|
|
field = "Speed sensor gear ratio", vssGearRatio, { vehicleSpeedSensorInputPin != @@ADC_CHANNEL_NONE@@ }
|
|
field = "Speed sensor tooth count", vssToothCount, { vehicleSpeedSensorInputPin != @@ADC_CHANNEL_NONE@@ }
|
|
|
|
dialog = speedSensorCan, "CAN Vehicle Speed"
|
|
field = "Enable CAN VSS", enableCanVss, { canReadEnabled }
|
|
field = "VSS CAN message type", canVssNbcType, { enableCanVss }
|
|
|
|
dialog = speedSensorLeft, "", yAxis
|
|
panel = speedSensorAnalog, { enableCanVss == 0 }
|
|
panel = speedSensorCan
|
|
|
|
dialog = gearDetection, "Gear Detection"
|
|
field = "Wheel revolutions per kilometer", driveWheelRevPerKm
|
|
field = "Final drive ratio", finalGearRatio
|
|
field = ""
|
|
field = "Forward gear count", totalGearsCount
|
|
field = ""
|
|
field = "1st gear", gearRatio1, { totalGearsCount >= 1 }
|
|
field = "2nd gear", gearRatio2, { totalGearsCount >= 2 }
|
|
field = "3rd gear", gearRatio3, { totalGearsCount >= 3 }
|
|
field = "4th gear", gearRatio4, { totalGearsCount >= 4 }
|
|
field = "5th gear", gearRatio5, { totalGearsCount >= 5 }
|
|
field = "6th gear", gearRatio6, { totalGearsCount >= 6 }
|
|
field = "7th gear", gearRatio6, { totalGearsCount >= 7 }
|
|
field = "8th gear", gearRatio6, { totalGearsCount >= 8 }
|
|
|
|
dialog = speedSensor, "Speed sensor", xAxis
|
|
panel = speedSensorLeft
|
|
gauge = VSSGauge
|
|
|
|
; Engine->Other inputs
|
|
dialog = analogInputSettings, "Analog Input Settings"
|
|
field = "!ECU reboot needed to apply these settings"
|
|
field = "Use fixed baro corr from MAP", useFixedBaroCorrFromMap
|
|
field = "Analog divider ratio", analogInputDividerCoefficient@@if_ts_show_analog_divider
|
|
field = "Smoothing factor", slowAdcAlpha
|
|
|
|
dialog = tachSettings, "Tachometer output"
|
|
field = "Pin", tachOutputPin
|
|
field = "Pin mode", tachOutputPinMode
|
|
field = "Pulse Mode", tachPulseDurationAsDutyCycle
|
|
field = "Pulse duration", tachPulseDuractionMs
|
|
field = "Pulse per Rev", tachPulsePerRev
|
|
|
|
|
|
; Board->Connection
|
|
dialog = tsPort, "Calibration Secondary Serial"
|
|
field = "Use UART/TTL calibration serial?", useSerialPort
|
|
field = "tunerStudioSerialSpeed", tunerStudioSerialSpeed, {useSerialPort == 1}
|
|
field = "TX pin", binarySerialTxPin, {useSerialPort == 1}
|
|
field = "RX pin", binarySerialRxPin, {useSerialPort == 1}
|
|
|
|
dialog = canHw1, "Primary CAN"
|
|
field = "Verbose Can", verboseCan
|
|
field = "Bitrate", canBaudRate
|
|
field = "RX pin", canRxPin @@if_ts_show_can_pins
|
|
field = "TX pin", canTxPin @@if_ts_show_can_pins
|
|
|
|
dialog = canHw2, "Secondary CAN"
|
|
field = "Verbose Can2", verboseCan2
|
|
field = "Bitrate", can2BaudRate
|
|
field = "RX pin", can2RxPin @@if_ts_show_can_pins
|
|
field = "TX pin", can2TxPin @@if_ts_show_can_pins
|
|
|
|
dialog = canBus, "CAN Bus"
|
|
field = "CAN read enabled", canReadEnabled
|
|
field = "CAN write enabled", canWriteEnabled
|
|
field = "CAN dash type", canNbcType
|
|
field = "inertia measurement unit", imuType
|
|
field = "Enable rusEFI CAN broadcast", enableVerboseCanTx
|
|
field = "rusEFI CAN data bus", canBroadcastUseChannelTwo
|
|
field = "rusEFI CAN data base address", verboseCanBaseAddress
|
|
field = "rusEFI CAN data address type", rusefiVerbose29b
|
|
field = "rusEFI CAN data period", canSleepPeriodMs
|
|
|
|
dialog = canBus2, "Secondary CAN Bus"
|
|
|
|
dialog = canBusMain, "CAN Bus Communication", yAxis
|
|
panel = canBus
|
|
|
|
panel = canHw1
|
|
panel = canHw2 @@if_ts_show_can2
|
|
|
|
dialog = auxSerial, "AUX Sensor 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
|
|
|
|
dialog = sdCard, "SD Card Logger"
|
|
field = "#rusEFI logs to SD when powered without USB connected"
|
|
field = "#rusEFI connects SD to your PC when powered by USB"
|
|
field = "Enable SD Card", isSdCardEnabled
|
|
field = "CS Pin", sdCardCsPin @@if_ts_show_sd_pins
|
|
field = "SPI", sdCardSpiDevice @@if_ts_show_sd_pins
|
|
field = "Write Period", sdCardPeriodMs
|
|
|
|
dialog = gpsReceiver, "GPS Receiver"
|
|
field = "gps RX", gps_rx_pin
|
|
field = "gps TX", gps_tx_pin
|
|
|
|
dialog = lcdScreen, "LCD screen"
|
|
field = "display Mode", displayMode
|
|
field = "height", HD44780height
|
|
field = "width", HD44780width
|
|
field = "RS pin", HD44780_rs
|
|
field = "E pin", HD44780_e
|
|
field = "D4 pin", HD44780_db4
|
|
field = "D5 pin", HD44780_db5
|
|
field = "D6 pin", HD44780_db6
|
|
field = "D7 pin", HD44780_db7
|
|
|
|
dialog = tle8888, "TLE8888", yAxis
|
|
field = "TLE8888 Chip Select", tle8888_cs @@if_ts_show_spi
|
|
field = "TLE8888 SPI", tle8888spiDevice @@if_ts_show_spi
|
|
field = "Mode", tle8888mode
|
|
field = "useTLE8888 cranking reset hack", useTLE8888_cranking_hack
|
|
field = "useTLE8888 stepper", useTLE8888_stepper
|
|
commandButton = "Reinit", cmd_tle8888_init
|
|
field = "L9779 SPI", tle8888spiDevice @@if_ts_show_spi
|
|
|
|
dialog = connection, "", yAxis
|
|
field = "ADC vRef voltage", adcVcc
|
|
panel = tsPort @@if_ts_show_tunerstudio_port
|
|
field = "uartConsoleSerialSpeed", uartConsoleSerialSpeed
|
|
panel = auxSerial
|
|
panel = gpsReceiver @@if_ts_show_gps
|
|
|
|
|
|
dialog = monitoringSettings, "rusEFI Console Settings"
|
|
field = "Sensor Sniffer", sensorChartMode
|
|
field = " Threshold", sensorSnifferRpmThreshold
|
|
field = "Engine Sniffer", isEngineChartEnabled
|
|
field = " Threshold", engineSnifferRpmThreshold
|
|
|
|
dialog = generalSettings, "General"
|
|
field = "!https://rusefi.com/s/fuel"
|
|
field = "Fuel strategy", fuelAlgorithm
|
|
|
|
dialog = debugging, "Debug"
|
|
field = "!https://rusefi.com/s/debugmode"
|
|
field = "Debug mode", debugMode
|
|
|
|
dialog = limitsSettings, "Limits"
|
|
field = "Cut fuel on RPM limit", cutFuelOnHardLimit
|
|
field = "Cut spark on RPM limit", cutSparkOnHardLimit
|
|
field = "RPM hard limit", rpmHardLimit, { cutFuelOnHardLimit || cutSparkOnHardLimit }
|
|
field = "Boost cut pressure", boostCutPressure
|
|
field = "Minimum oil pressure after start", minOilPressureAfterStart
|
|
|
|
dialog = etbLimits, "Electronic Throttle Limiting"
|
|
field = "Smoothly close the throttle to limit RPM."
|
|
field = "Soft limiter start", etbRevLimitStart
|
|
field = "Soft limiter range", etbRevLimitRange
|
|
|
|
dialog = fallbacks, "Fallbacks"
|
|
field = "Use MAP estimation table as fallback", enableMapEstimationTableFallback
|
|
field = "Failed MAP sensor fallback", failedMapFallback, { !enableMapEstimationTableFallback }
|
|
|
|
dialog = limitsAndFallback, "Limits and fallbacks"
|
|
panel = limitsSettings
|
|
panel = etbLimits
|
|
panel = fallbacks
|
|
|
|
; Engine->Base Engine Settings
|
|
dialog = engineChars, "Base Engine Settings"
|
|
topicHelp = "baseHelp"
|
|
panel = baseEngineConfig
|
|
panel = engineMetadata
|
|
panel = generalSettings
|
|
panel = debugging
|
|
|
|
dialog = crankingFuel, "Fuel"
|
|
field = "Injection mode", crankingInjectionMode
|
|
field = "Fuel Source For Cranking", useRunningMathForCranking
|
|
field = "Base fuel mass", cranking_baseFuel, {useRunningMathForCranking == 0}
|
|
|
|
dialog = crankingIAC, "Idle air valve"
|
|
field = "Cranking base IAC position", crankingIACposition
|
|
field = "After cranking IAC taper duration",afterCrankingIACtaperDuration
|
|
field = "Override cranking IAC CLT multiplier", overrideCrankingIacSetting
|
|
|
|
dialog = crankingIgnition, "Ignition"
|
|
field = "Timing Advance mode", useSeparateAdvanceForCranking
|
|
field = "Fixed cranking advance", crankingTimingAngle, {useSeparateAdvanceForCranking == 0}
|
|
field = "Fixed Cranking Dwell", ignitionDwellForCrankingMs
|
|
|
|
dialog = postCrankingEnrichment, "After start enrichment"
|
|
field = "Post-Cranking factor", postCrankingFactor
|
|
field = "Duration", postCrankingDurationSec
|
|
|
|
dialog = primingFuelPulsePanel, "Priming fuel pulse"
|
|
field = "Priming delay", primingDelay
|
|
panel = primingPulse
|
|
|
|
dialog = crankingAdv, "Advanced"
|
|
field = "Enable flood clear", isCylinderCleanupEnabled
|
|
field = "Enable faster engine spin-up", isFasterEngineSpinUpEnabled
|
|
field = "Use Advance Corrections for cranking", useAdvanceCorrectionsForCranking
|
|
field = "Use Flex Fuel cranking table", flexCranking
|
|
|
|
; Cranking->Cranking Settings
|
|
dialog = crankingDialog, "Cranking Settings"
|
|
field = "Cranking RPM limit", cranking_rpm
|
|
panel = crankingFuel
|
|
panel = crankingIgnition
|
|
panel = crankingIAC
|
|
panel = crankingAdv
|
|
|
|
dialog = TpsAccelPanel, "TPS"
|
|
field = "Set 'Debug Mode' to see detailed 'TPS acceleration enrichment' diagnostics"
|
|
field = "Length", tpsAccelLookback
|
|
field = "Accel Threshold", tpsAccelEnrichmentThreshold
|
|
field = "Decel Threshold", tpsDecelEnleanmentThreshold
|
|
; field = "Decel Multiplier", tpsDecelEnleanmentMultiplier
|
|
field = "#Accelerator Pump model:"
|
|
field = "Fraction Period", tpsAccelFractionPeriod
|
|
field = "Fraction Divisor", tpsAccelFractionDivisor
|
|
|
|
dialog = WallWettingAccelPanel, "Wall Wetting (alpha version)"
|
|
field = "Wall fueling model type", complexWallModel
|
|
field = "evaporation time constant / tau", wwaeTau, { complexWallModel == 0 }
|
|
field = "added to wall coef / beta", wwaeBeta, { complexWallModel == 0 }
|
|
|
|
|
|
; Tuning->AccelEnrichment
|
|
dialog = AccelEnrich, "Accel/Decel Enrichment"
|
|
panel = TpsAccelPanel
|
|
panel = WallWettingAccelPanel
|
|
field = "No accel after RPM hard limit", noAccelAfterHardLimitPeriodSecs
|
|
|
|
|
|
dialog = wwTauCurves, "Wall wetting AE evaporation time"
|
|
field = "#Set a base evaporation time based on coolant temperature, and a multiplier based on MAP."
|
|
panel = wwTauCltCurve
|
|
panel = wwTauMapCurve
|
|
|
|
dialog = wwBetaCurves, "Wall wetting AE impact fraction"
|
|
field = "#Set a base impact fraction based on coolant temperature, and a multiplier based on MAP."
|
|
panel = wwBetaCltCurve
|
|
panel = wwBetaMapCurve
|
|
|
|
dialog = auxValvesIO, "Outputs"
|
|
field = "aux valve #1", auxValves1
|
|
field = "aux valve #2", auxValves2
|
|
|
|
dialog = scriptSetting, "Setting"
|
|
field = "!Use rusEFI console for Lua script editing"
|
|
field = "Set number is not associated with the output number."
|
|
field = "Set number, only the cell number with some numbers."
|
|
field = "Name #1", scriptSettingName1
|
|
field = "Setting #1", scriptSetting1
|
|
field = "Name #2", scriptSettingName2
|
|
field = "Setting #2", scriptSetting2
|
|
field = "Name #3", scriptSettingName3
|
|
field = "Setting #3", scriptSetting3
|
|
field = "Name #4", scriptSettingName4
|
|
field = "Setting #4", scriptSetting4
|
|
field = "Name #5", scriptSettingName5
|
|
field = "Setting #5", scriptSetting5
|
|
field = "Name #6", scriptSettingName6
|
|
field = "Setting #6", scriptSetting6
|
|
|
|
dialog = scriptSettingDialog, "Script Settings", border
|
|
panel = scriptSetting, East
|
|
|
|
dialog = auxInputsDialog, "Aux Analog Inputs"
|
|
field = "ADC #1", auxAnalogInputs1
|
|
field = "ADC #2", auxAnalogInputs2
|
|
field = "ADC #3", auxAnalogInputs3
|
|
field = "ADC #4", auxAnalogInputs4
|
|
field = "ADC #5", auxAnalogInputs5
|
|
field = "ADC #6", auxAnalogInputs6
|
|
field = "ADC #7", auxAnalogInputs7
|
|
field = "ADC #8", auxAnalogInputs8
|
|
|
|
dialog = luaOutputs, "Lua Outputs"
|
|
field = "!Use rusEFI console for Lua script editing"
|
|
field = "#Call startPwm to initialize, then call"
|
|
field = "#setPwmDuty and setPwmFreq to vary duty/freq"
|
|
field = "#See rusefi.com/s/lua for more info"
|
|
field = "output #0", luaOutputPins1
|
|
field = "output #1", luaOutputPins2
|
|
field = "output #2", luaOutputPins3
|
|
field = "output #3", luaOutputPins4
|
|
field = "output #4", luaOutputPins5
|
|
field = "output #5", luaOutputPins6
|
|
field = "output #6", luaOutputPins7
|
|
field = "output #7", luaOutputPins8
|
|
|
|
dialog = transmissionPanel
|
|
field = "TCU Enabled" tcuEnabled
|
|
field = "Gear Controller" gearControllerMode, { tcuEnabled }
|
|
field = "Transmission Controller" transmissionControllerMode, { tcuEnabled }
|
|
|
|
dialog = shiftSolenoidPanel, "Shift Solenoids"
|
|
field = "Solenoid 1 Pin" tcu_solenoid1, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_SimpleTransmissionController@@ || transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "Solenoid 1 Pin Mode" tcu_solenoid_mode1, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_SimpleTransmissionController@@ || transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "Solenoid 2 Pin" tcu_solenoid2, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_SimpleTransmissionController@@ || transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "Solenoid 2 Pin Mode" tcu_solenoid_mode2, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_SimpleTransmissionController@@ || transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "Solenoid 3 Pin" tcu_solenoid3, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_SimpleTransmissionController@@ || transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "Solenoid 3 Pin Mode" tcu_solenoid_mode3, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_SimpleTransmissionController@@ || transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "Solenoid 4 Pin" tcu_solenoid4, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_SimpleTransmissionController@@ || transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "Solenoid 4 Pin Mode" tcu_solenoid_mode4, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_SimpleTransmissionController@@ || transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "Solenoid 5 Pin" tcu_solenoid5, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_SimpleTransmissionController@@ || transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "Solenoid 5 Pin Mode" tcu_solenoid_mode5, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_SimpleTransmissionController@@ || transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "Solenoid 6 Pin" tcu_solenoid6, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_SimpleTransmissionController@@ || transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "Solenoid 6 Pin Mode" tcu_solenoid_mode6, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_SimpleTransmissionController@@ || transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "3-2 Solenoid Pin" tcu_32_solenoid_pin, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "3-2 Solenoid Pin mode" tcu_32_solenoid_pin_mode, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "3-2 Solenoid Frequency" tcu_32_solenoid_freq, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
|
|
dialog = otherSolenoidPanel, "Other Solenoids"
|
|
field = "TCC On/Off Solenoid Pin" tcu_tcc_onoff_solenoid, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "TCC On/Off Solenoid Pin Mode" tcu_tcc_onoff_solenoid_mode, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "TCC PWM Solenoid Pin" tcu_tcc_pwm_solenoid, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "TCC PWM Solenoid Pin Mode" tcu_tcc_pwm_solenoid_mode, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "TCC PWM Solenoid Frequency" tcu_tcc_pwm_solenoid_freq, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "Pressure Control Solenoid Pin" tcu_pc_solenoid_pin, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "Pressure Control Solenoid Pin Mode" tcu_pc_solenoid_pin_mode, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
field = "Pressure Control Solenoid Frequency" tcu_pc_solenoid_freq, { tcuEnabled && (transmissionControllerMode == @@TransmissionControllerMode_Gm4l6x@@) }
|
|
|
|
dialog = buttonShiftInputPanel, "Switch/Button Shift"
|
|
field = "Upshift Pin" tcuUpshiftButtonPin, { tcuEnabled && gearControllerMode == @@GearControllerMode_ButtonShift@@ }
|
|
field = "Upshift Pin Mode" tcuUpshiftButtonPinMode, { tcuEnabled && gearControllerMode == @@GearControllerMode_ButtonShift@@ }
|
|
field = "Downshift Pin" tcuDownshiftButtonPin, { tcuEnabled && gearControllerMode == @@GearControllerMode_ButtonShift@@ }
|
|
field = "Downshift Pin Mode" tcuDownshiftButtonPinMode, { tcuEnabled && gearControllerMode == @@GearControllerMode_ButtonShift@@ }
|
|
|
|
dialog = inputSpeedSensorPanel, "Input Speed Sensor"
|
|
field = "Input Pin", tcuInputSpeedSensorPin
|
|
field = "Filter parameter", issFilterReciprocal, { tcuInputSpeedSensorPin != @@ADC_CHANNEL_NONE@@ }
|
|
field = "Tooth Count", tcuInputSpeedSensorTeeth
|
|
|
|
dialog = tcuControls, "Transmission Settings"
|
|
panel = transmissionPanel
|
|
panel = shiftSolenoidPanel
|
|
panel = otherSolenoidPanel
|
|
|
|
dialog = gearControls, "Gear Selection Settings"
|
|
panel = buttonShiftInputPanel
|
|
|
|
dialog = inputSpeedSensor, "Input Speed Sensor"
|
|
panel = inputSpeedSensorPanel
|
|
|
|
dialog = tccCurves, "TCC Lock/Unlock Speed"
|
|
panel = tccLockCurve
|
|
|
|
dialog = pcPerGearDialog, "Line Pressure Per Gear Steady State"
|
|
panel = pcPerGearCurve
|
|
|
|
dialog = pcPerShiftDialog, "Line Pressure Per Shift"
|
|
panel = pcPerShiftCurve
|
|
|
|
dialog = 32Dialog, "3-2 Shift Solenoid Percent by Speed"
|
|
panel = 32Curve
|
|
|
|
;Boost Open Loop
|
|
|
|
dialog = boostDialog, ""
|
|
field = "Enable", isBoostControlEnabled
|
|
field = "Control Mode", boostType, { isBoostControlEnabled }
|
|
field = "Output", boostControlPin, { isBoostControlEnabled }
|
|
field = "Output Mode", boostControlPinMode, { isBoostControlEnabled }
|
|
field = "Frequency", boostPwmFrequency, { isBoostControlEnabled }
|
|
field = "Safe duty cycle", boostControlSafeDutyCycle, { isBoostControlEnabled }
|
|
|
|
dialog = boostOpenLoopDialog, "", border
|
|
panel = boostTableTbl, Center
|
|
|
|
;Boost Closed Loop
|
|
|
|
dialog = boostPidDialog, ""
|
|
field = "Enable closed loop above", minimumBoostClosedLoopMap, { isBoostControlEnabled && boostType == 1 }
|
|
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 = "Min adjustment", boostPid_minValue, { isBoostControlEnabled && boostType == 1 }
|
|
field = "Max adjustment", boostPid_maxValue, { isBoostControlEnabled && boostType == 1 }
|
|
|
|
dialog = boostTargetDialog, "", card
|
|
panel = boostTable2Tbl
|
|
|
|
dialog = boostEtbPid, ""
|
|
field = "This PID is controlling how DC motor reaches desired position"
|
|
field = ""
|
|
field = "!This section is for advanced users only!"
|
|
field = "H-Bridge #1 function", etbFunctions1
|
|
field = "H-Bridge #2 function", etbFunctions2
|
|
field = "P gain", etbWastegatePid_pFactor, { isBoostControlEnabled }
|
|
field = "I gain", etbWastegatePid_iFactor, { isBoostControlEnabled }
|
|
field = "D gain", etbWastegatePid_dFactor, { isBoostControlEnabled }
|
|
field = "PID min", etbWastegatePid_minValue, { isBoostControlEnabled }
|
|
field = "PID max", etbWastegatePid_maxValue, { isBoostControlEnabled }
|
|
|
|
help = veTableDialogHelp, "Volumetric Efficiency"
|
|
text = "Volumetric Efficiency is used to calculate fuel in Speed Density mode. VE incorporates pressure ratio as measured by MAP sensor in boost (no VE ever above 105%ish)"
|
|
webHelp = "https://rusefi.com/s/fuel"
|
|
|
|
help = stepperHbridgeHardwareHelp, "Stepper driven by Dual H-bridge"
|
|
text = "In case you are using two H-bridges driving 4-wire stepper. H-brigde control signals connected to MCU pins configured here."
|
|
|
|
help = idleStepperHwHelp, "Stepper drivern by step motor driver IC"
|
|
text = "In case you have some special IC that drives your stepper. MCU to IC control signals (DIR/STEP/EN) configured here"
|
|
|
|
help = stepperDirectDriveHardwareHelp, "Stepper driven by 4 Push-Pull/Pull outputs"
|
|
text = "In case you have 4/6-wire stepper driven by 4 ECU outputs in Push-Pull or Pull mode. Set ECU outputs used for each phase here."
|
|
|
|
help = fuelHelp, "Fuel Control"
|
|
text = "More about fuel control on the web"
|
|
webHelp = "https://rusefi.com/s/fuel"
|
|
|
|
help = triggerHelp, "Trigger Settings"
|
|
text = "More about Trigger Settings on the web"
|
|
webHelp = "https://rusefi.com/s/trigger"
|
|
|
|
help = etbHelp, "ETB Control"
|
|
text = "More about electronic throttle body on the web"
|
|
webHelp = "https://rusefi.com/s/etb"
|
|
|
|
help = vrThresholdHelp, "VR Sensor Threshold"
|
|
text = "This is about rusEFI VR Discrete decoder"
|
|
webHelp = "https://rusefi.com/"
|
|
|
|
help = tpsTpsHelp, "Acceleration Enrichment"
|
|
text = "More about Tps To Tps acceleration on the web"
|
|
webHelp = "https://rusefi.com/s/tpstps"
|
|
|
|
help = baseHelp, "Base Settings Control"
|
|
text = "More about rusefi on the web"
|
|
webHelp = "https://rusefi.com/"
|
|
|
|
dialog = veTableDialog
|
|
topicHelp = "veTableDialogHelp"
|
|
panel = veTableTbl, South
|
|
|
|
dialog = veTableDialog3D, "VE Table"
|
|
topicHelp = "veTableDialogHelp"
|
|
panel = veTableMap, South
|
|
|
|
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
|
|
|
|
dialog = etbDialogLeft
|
|
field = "https://rusefi.com/s/etb"
|
|
field = "Disable ETB if engine is stopped", disableEtbWhenEngineStopped
|
|
field = "Disable ETB Motor", pauseEtbControl
|
|
field = "H-Bridge #1 function", etbFunctions1
|
|
field = "H-Bridge #2 function", etbFunctions2
|
|
field = "PWM Frequency", etbFreq
|
|
field = "Minimum ETB position", etbMinimumPosition
|
|
field = "Maximum ETB position", etbMaximumPosition
|
|
; 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
|
|
; todo: report bug to TS?
|
|
; another todo: split panel into two panels so that we can enable/disable h-bridge #1 separately from h-bridge #2
|
|
panel = etbHbridgeHardware, { etbFunctions1 != @@etb_function_e_ETB_None@@ || etbFunctions2 != @@etb_function_e_ETB_None@@ || (useStepperIdle && useHbridgesToDriveIdleStepper) } @@if_ts_show_etb_pins
|
|
|
|
dialog = etbAutotune, "PID Autotune"
|
|
field = "First step: calibrate TPS and hit 'Burn'"
|
|
commandButton = "Auto Calibrate ETB 1", cmb_etb_auto_calibrate
|
|
commandButton = "Auto Calibrate ETB 2", cmb_etb_auto_calibrate_2
|
|
field = "Second step"
|
|
commandButton = "Start ETB PID Autotune", cmd_etb_autotune
|
|
commandButton = "Stop ETB PID Autotune", cmd_etb_autotune_stop
|
|
|
|
field = "!Set debug mode below to 'ETB Autotune' to show more detail"
|
|
field = "Debug mode", debugMode
|
|
|
|
dialog = etbDialogRight
|
|
panel = etbIdleDialog, { throttlePedalPositionAdcChannel != @@ADC_CHANNEL_NONE@@ }
|
|
panel = etbPidDialog, { (throttlePedalPositionAdcChannel != @@ADC_CHANNEL_NONE@@) || (etbFunctions1 == @@etb_function_e_ETB_IdleValve@@) }
|
|
panel = etbAutotune
|
|
|
|
; Neutral position handling not yet implemented!
|
|
;field = "Neutral Position", etbNeutralPosition
|
|
|
|
dialog = etbDialog, "Electronic Throttle Body", border
|
|
topicHelp = "etbHelp"
|
|
panel = etbDialogLeft, West
|
|
panel = etbDialogRight, East
|
|
|
|
|
|
dialog = testSpark, "Spark"
|
|
commandButton = "Spark #1", cmd_test_spk1
|
|
commandButton = "Spark #2", cmd_test_spk2, { cylindersCount >= 2 }
|
|
commandButton = "Spark #3", cmd_test_spk3, { cylindersCount >= 3 }
|
|
commandButton = "Spark #4", cmd_test_spk4, { cylindersCount >= 4 }
|
|
commandButton = "Spark #5", cmd_test_spk5, { cylindersCount >= 5 }
|
|
commandButton = "Spark #6", cmd_test_spk6, { cylindersCount >= 6 }
|
|
commandButton = "Spark #7", cmd_test_spk7, { cylindersCount >= 7 }
|
|
commandButton = "Spark #8", cmd_test_spk8, { cylindersCount >= 8 }
|
|
commandButton = "Spark #9", cmd_test_spk9, { cylindersCount >= 9 }
|
|
commandButton = "Spark #10", cmd_test_spk10, { cylindersCount >= 10 }
|
|
commandButton = "Spark #11", cmd_test_spk11, { cylindersCount >= 11 }
|
|
commandButton = "Spark #12", cmd_test_spk12, { cylindersCount >= 12 }
|
|
|
|
dialog = testMisc, "Misc"
|
|
; commandButton = "Come To Pit", cmd_call_from_pit
|
|
commandButton = "Main Relay", cmd_test_main_relay@@if_ts_show_main_relay
|
|
commandButton = "Fuel Pump", cmd_test_fuel_pump
|
|
commandButton = "Cooling Fan", cmd_test_fan_1
|
|
commandButton = "Cooling Fan 2", cmd_test_fan_2
|
|
commandButton = "A/C Relay", cmd_test_ac_relay
|
|
commandButton = "Check Engine", cmd_test_check_engine_light
|
|
commandButton = "Idle Air Valve", cmd_test_idle_valve
|
|
commandButton = "Idle Second Air Valve", cmd_test_second_idle_valve
|
|
commandButton = "HPFP Valve", cmd_test_hpfp_valve
|
|
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
|
|
commandButton = "F7 nDBANK fix", cmd_nDBANK@@if_ts_show_f7_presets
|
|
commandButton = "No flash Burn mode", cmd_burn_without_flash
|
|
|
|
; bench test
|
|
dialog = ioTest, "Bench Test & Commands", xAxis
|
|
panel = testSpark
|
|
panel = testInjectors
|
|
panel = testSolenoids
|
|
panel = testLuaOut
|
|
panel = testMisc
|
|
|
|
; Injectors test
|
|
dialog = injTest_l, "Output test modes", yAxis
|
|
field = "Iterations", benchTestCount
|
|
field = "ON time", benchTestOffTime
|
|
field = "OFF time", benchTestOnTime
|
|
|
|
dialog = injTest_r, "Reference gauges", yAxis
|
|
gauge = VBattGauge,North
|
|
gauge = testBenchIterGauge,South
|
|
|
|
dialog = injTest, "", xAxis
|
|
panel = injTest_l
|
|
panel = injTest_r
|
|
|
|
dialog = widebandConfig, "rusEFI Wideband Config"
|
|
field = "!Please connect exactly one wideband controller before pressing these buttons!"
|
|
commandButton = "Update Firmware", cmd_wideband_firmare_update
|
|
field = "!These buttons will set ALL connected controllers to the specified index."
|
|
field = "!Disconnect all controllers you don't want to set!"
|
|
commandButton = "Set Index 0", cmd_set_wideband_idx_0
|
|
commandButton = "Set Index 1", cmd_set_wideband_idx_1
|
|
|
|
dialog = engineTypeDialog, "Popular vehicles"
|
|
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"
|
|
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
|
|
|
|
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
|
|
commandButton = "microRusEFI Miata 94/95 MAP", cmd_set_engine_type_microRusEFI_Miata_94_MAP@@if_show_microRusEFI_presets
|
|
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
|
|
commandButton = "microRusEFI GDI VAG 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
|
|
commandButton = "microRusEFI Subaru EJ18", cmd_set_engine_type_MRE_SUBARU_EJ18@@if_show_microRusEFI_presets
|
|
commandButton = "microRusEFI CAN Extender", cmd_set_engine_type_MRE_SECONDARY_CAN@@if_show_microRusEFI_presets
|
|
|
|
commandButton = "Proteus M73 v12", cmd_set_engine_type_Proteus_M73@@if_show_Proteus_presets
|
|
commandButton = "Proteus Miata TCU", cmd_set_engine_type_Proteus_Miata_TCU@@if_show_Proteus_presets
|
|
commandButton = "Proteus Lua Demo", cmd_set_engine_type_PROTEUS_LUA_DEMO@@if_show_Proteus_presets
|
|
commandButton = "Proteus Miata NB2", cmd_set_engine_type_PROTEUS_MIATA_NB2@@if_show_Proteus_presets
|
|
commandButton = "Proteus Honda K", cmd_set_engine_type_PROTEUS_HONDA_ELEMENT_2003@@if_show_Proteus_presets
|
|
commandButton = "Proteus Honda OBD2A", cmd_set_engine_type_PROTEUS_HONDA_OBD2A@@if_show_Proteus_presets
|
|
commandButton = "Proteus Harley", cmd_set_engine_type_PROTEUS_HARLEY@@if_show_Proteus_presets
|
|
|
|
commandButton = "Hellen NA6", cmd_set_engine_type_hellen_NA6@@if_show_HellenNA6_presets
|
|
commandButton = "Hellen NA8 94-95", cmd_set_engine_type_hellen_NA94@@if_show_HellenNA6_presets
|
|
|
|
commandButton = "Hellen NB1 36 wheel", cmd_set_engine_type_hellen_NB2_36@@if_show_HellenNB1_presets
|
|
commandButton = "Hellen NB2 36 wheel", cmd_set_engine_type_hellen_NB2_36@@if_show_HellenNB2_presets
|
|
|
|
commandButton = "Hellen Nissan 4 cylinder", cmd_set_engine_type_hellen_nissan_121_4@@if_show_Hellen121nissan_presets
|
|
commandButton = "Hellen Nissan 6 cylinder", cmd_set_engine_type_hellen_nissan_121_6@@if_show_Hellen121nissan_presets
|
|
commandButton = "Hellen Nissan 8 cylinder", cmd_set_engine_type_hellen_nissan_121_8@@if_show_Hellen121nissan_presets
|
|
|
|
commandButton = "Hellen 121 VAG i4", cmd_set_engine_type_hellen_121_vag_4@@if_show_Hellen121vag_presets
|
|
commandButton = "Hellen 121 VAG i5", cmd_set_engine_type_hellen_121_vag_5@@if_show_Hellen121vag_presets
|
|
commandButton = "Hellen 121 VAG v6", cmd_set_engine_type_hellen_121_vag_v6@@if_show_Hellen121vag_presets
|
|
commandButton = "Hellen 121 VAG vr6", cmd_set_engine_type_hellen_121_vag_vr6@@if_show_Hellen121vag_presets
|
|
commandButton = "Hellen 121 VAG v8", cmd_set_engine_type_hellen_121_vag_8@@if_show_Hellen121vag_presets
|
|
|
|
commandButton = "Hellen 128 Merc 4 cyl", cmd_set_engine_type_hellen_128_merc_4@@if_show_Hellen128merc_presets
|
|
commandButton = "Hellen 128 Merc 6 cyl", cmd_set_engine_type_hellen_128_merc_6@@if_show_Hellen128merc_presets
|
|
commandButton = "Hellen 128 Merc v8", cmd_set_engine_type_hellen_128_merc_8@@if_show_Hellen128merc_presets
|
|
|
|
commandButton = "Hellen Genesis Couple BK1", cmd_set_engine_type_hellen_couple_bk1@@if_show_Hellen_hyundai_154
|
|
commandButton = "Hellen Genesis Couple BK2", cmd_set_engine_type_hellen_couple_bk2@@if_show_Hellen_hyundai_154
|
|
|
|
commandButton = "ETB test bench", cmd_set_engine_type_etb_test@@if_show_test_presets
|
|
commandButton = "TLE8888 test bench", cmd_set_engine_type_8888_test@@if_show_test_presets
|
|
commandButton = "Reset firmware settings", cmd_set_engine_type_default
|
|
|
|
; Board->ECU stimulator
|
|
dialog = ecuStimulator, "ECU stimulator"
|
|
field = "Trigger Simulator", triggerSimulatorFrequency
|
|
commandButton = "Enable internal trigger simulation", cmd_enable_self_stim
|
|
commandButton = "Enable external trigger simulation", cmd_enable_ext_stim @@if_ts_show_hardware_simulator
|
|
commandButton = "Disable trigger simulation", cmd_disable_self_stim
|
|
; field = ""
|
|
; field = "digipot spi", digitalPotentiometerSpiDevice
|
|
; field = "digipot CS #0", digitalPotentiometerChipSelect1
|
|
; field = "digipot CS #1", digitalPotentiometerChipSelect2
|
|
; field = "digipot CS #2", digitalPotentiometerChipSelect3
|
|
; field = "digipot CS #3", digitalPotentiometerChipSelect4
|
|
field = ""@@if_ts_show_hardware_simulator
|
|
field = "trigger stimulator pin #1", triggerSimulatorPins1@@if_ts_show_hardware_simulator
|
|
field = "trigger stimulator pin mode #1", triggerSimulatorPinModes1@@if_ts_show_hardware_simulator
|
|
field = "trigger stimulator pin #2", triggerSimulatorPins2@@if_ts_show_hardware_simulator
|
|
field = "trigger stimulator pin mode #2", triggerSimulatorPinModes2@@if_ts_show_hardware_simulator
|
|
field = "trigger stimulator pin #3", triggerSimulatorPins3@@if_ts_show_hardware_simulator
|
|
field = "trigger stimulator pin mode #3", triggerSimulatorPinModes3@@if_ts_show_hardware_simulator
|
|
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
|
|
|
|
; Racing Features->Launch Control
|
|
dialog = smLaunchControlWest, "Launch Control Settings EXPERIMENTAL"
|
|
field = "Enable Launch Control", launchControlEnabled
|
|
field = "Activation Mode", launchActivationMode
|
|
|
|
field = "Launch Button", launchActivatePin, {launchActivationMode == @@launchActivationMode_e_SWITCH_INPUT_LAUNCH@@ && launchControlEnabled == 1}
|
|
field = "Launch Button inverted", launchActivateInverted
|
|
field = "Launch Button mode", launchActivatePinMode, {launchActivationMode == @@launchActivationMode_e_SWITCH_INPUT_LAUNCH@@ && launchControlEnabled == 1}
|
|
|
|
field = "Clutch Down", clutchDownPin, {launchActivationMode == @@launchActivationMode_e_CLUTCH_INPUT_LAUNCH@@ && launchControlEnabled == 1}
|
|
field = "Clutch Down inverted", clutchDownPinInverted
|
|
field = "Clutch Down mode", clutchDownPinMode, {launchActivationMode == @@launchActivationMode_e_CLUTCH_INPUT_LAUNCH@@ && launchControlEnabled == 1}
|
|
field = ""
|
|
|
|
; dead code field = "Rpm Threshold", launchRpmThreshold, {launchControlEnabled == 1}
|
|
field = "Speed Threshold", launchSpeedThreshold, {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}
|
|
|
|
|
|
dialog = smLaunchControl, "", border
|
|
panel = smLaunchControlWest, West
|
|
panel = launch_control_stateDialog, East
|
|
|
|
|
|
; 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}
|
|
|
|
|
|
dialog = coastingFuelCutControl, "Coasting Fuel Cutoff Settings"
|
|
field = "Enable Coasting Fuel Cutoff", coastingFuelCutEnabled
|
|
field = "No cut below CLT", coastingFuelCutClt, {coastingFuelCutEnabled == 1}
|
|
field = "RPM cut fuel above", coastingFuelCutRpmHigh, {coastingFuelCutEnabled == 1}
|
|
field = "RPM restore fuel below", coastingFuelCutRpmLow, {coastingFuelCutEnabled == 1}
|
|
field = "Vehicle speed cut above", coastingFuelCutVssHigh, {coastingFuelCutEnabled == 1}
|
|
field = "Vehicle speed restore below", coastingFuelCutVssLow, {coastingFuelCutEnabled == 1}
|
|
field = "Cut fuel below TPS", coastingFuelCutTps, {coastingFuelCutEnabled == 1}
|
|
field = "Cut fuel below MAP", coastingFuelCutMap, {coastingFuelCutEnabled == 1}
|
|
field = "Inhibit closed loop fuel after cut", noFuelTrimAfterDfcoTime, {coastingFuelCutEnabled == 1}
|
|
|
|
dialog = rotaryDialog, "Rotary"
|
|
field = "Enable Trailing Sparks", enableTrailingSparks
|
|
field = "Trailing Spark Offset", trailingSparkAngle
|
|
field = "Trailing Pin 1", trailingCoilPins1
|
|
field = "Trailing Pin 2", trailingCoilPins2
|
|
field = "Trailing Pin 3", trailingCoilPins3
|
|
field = "Trailing Pin 4", trailingCoilPins4
|
|
|
|
dialog = mapCamDialog, "Engine Phase by MAP sensor"
|
|
field = "mapCamDetectionAnglePosition", mapCamDetectionAnglePosition
|
|
|
|
dialog = fancyHardwareDialog, "Fancy Boards"
|
|
field = "Tachometer Output", boardUseTachPullUp
|
|
field = "boardUseTempPullUp", boardUseTempPullUp
|
|
field = "boardUseCrankPullUp", boardUseCrankPullUp
|
|
field = "2-step input", boardUse2stepPullDown
|
|
field = "boardUseCamPullDown", boardUseCamPullDown
|
|
field = "boardUseCamVrPullUp", boardUseCamVrPullUp
|
|
|
|
dialog = parkingLot, "Experimental/Broken"
|
|
field = useEeprom, useEeprom
|
|
field = "disablePrimaryUart", disablePrimaryUart
|
|
field = "#System hacks"
|
|
field = "tempBooleanForVerySpecialCases", tempBooleanForVerySpecialCases
|
|
field = "Global fuel correction", globalFuelCorrection
|
|
field = "MAP Averaging Logic @", mapAveragingSchedulingAtIndex
|
|
field = "showHumanReadableWarning (affects Burn)", showHumanReadableWarning
|
|
field = "Warning Message", warning_message
|
|
field = totalGearsCount, totalGearsCount
|
|
field = "Ford redundant TPS mode", useFordRedundantTps
|
|
field = "consumeObdSensors", consumeObdSensors, { canReadEnabled == 1 && canWriteEnabled == 1}
|
|
field = "Artificial Misfire", artificialTestMisfire
|
|
field = "Always use instant RPM", alwaysInstantRpm
|
|
panel = mapCamDialog
|
|
panel = allTriggerDebug
|
|
panel = torqueTableTbl
|
|
|
|
help = helpGeneral, "rusEFI General Help"
|
|
webHelp = @@MAIN_HELP_URL@@
|
|
text = "<img src='https://rusefi.com/style/logo_100.gif'>"
|
|
|
|
dialog = vrThreshold1, "VR 1 Threshold"
|
|
field = "Pin", vrThreshold1_pin
|
|
panel = vrThresholdCurve1
|
|
|
|
dialog = vrThreshold2, "VR 2 Threshold"
|
|
field = "Pin", vrThreshold2_pin
|
|
panel = vrThresholdCurve2
|
|
|
|
dialog = vrThreshold
|
|
topicHelp = "vrThresholdHelp"
|
|
panel = vrThreshold1
|
|
panel = vrThreshold2
|
|
|
|
dialog = gppwm1left, ""
|
|
field = "Pin", gppwm1_pin
|
|
field = ""
|
|
field = "Set frequency to 0hz for on-off mode"
|
|
field = "Frequency", gppwm1_pwmFrequency, {gppwm1_pin != 0}
|
|
field = ""
|
|
field = "On above duty", gppwm1_onAboveDuty, {gppwm1_pin != 0 && gppwm1_pwmFrequency == 0}
|
|
field = "Off below duty", gppwm1_offBelowDuty, {gppwm1_pin != 0 && gppwm1_pwmFrequency == 0}
|
|
field = "Duty if error", gppwm1_dutyIfError, {gppwm1_pin != 0}
|
|
field = ""
|
|
field = "Load Axis", gppwm1_loadAxis, {gppwm1_pin != 0}
|
|
field = "Note", gpPwmNote1
|
|
field = ""
|
|
field = ""
|
|
field = ""
|
|
field = ""
|
|
field = ""
|
|
|
|
dialog = gppwm1, "General Purpose PWM 1", xAxis
|
|
panel = gppwm1left
|
|
panel = gppwm1Tbl, {gppwm1_pin != 0}
|
|
|
|
dialog = gppwm2left, ""
|
|
field = "Pin", gppwm2_pin
|
|
field = ""
|
|
field = "Set frequency to 0hz for on-off mode"
|
|
field = "Frequency", gppwm2_pwmFrequency, {gppwm2_pin != 0}
|
|
field = ""
|
|
field = "On above duty", gppwm2_onAboveDuty, {gppwm2_pin != 0 && gppwm2_pwmFrequency == 0}
|
|
field = "Off below duty", gppwm2_offBelowDuty, {gppwm2_pin != 0 && gppwm2_pwmFrequency == 0}
|
|
field = "Duty if error", gppwm2_dutyIfError, {gppwm2_pin != 0}
|
|
field = ""
|
|
field = "Load Axis", gppwm2_loadAxis, {gppwm2_pin != 0}
|
|
field = "Note", gpPwmNote2
|
|
field = ""
|
|
field = ""
|
|
field = ""
|
|
field = ""
|
|
field = ""
|
|
|
|
dialog = gppwm2, "General Purpose PWM 2", xAxis
|
|
panel = gppwm2left
|
|
panel = gppwm2Tbl, {gppwm2_pin != 0}
|
|
|
|
dialog = gppwm3left, ""
|
|
field = "Pin", gppwm3_pin
|
|
field = ""
|
|
field = "Set frequency to 0hz for on-off mode"
|
|
field = "Frequency", gppwm3_pwmFrequency, {gppwm3_pin != 0}
|
|
field = ""
|
|
field = "On above duty", gppwm3_onAboveDuty, {gppwm3_pin != 0 && gppwm3_pwmFrequency == 0}
|
|
field = "Off below duty", gppwm3_offBelowDuty, {gppwm3_pin != 0 && gppwm3_pwmFrequency == 0}
|
|
field = "Duty if error", gppwm3_dutyIfError, {gppwm3_pin != 0}
|
|
field = ""
|
|
field = "Load Axis", gppwm3_loadAxis, {gppwm3_pin != 0}
|
|
field = "Note", gpPwmNote3
|
|
field = ""
|
|
field = ""
|
|
field = ""
|
|
field = ""
|
|
field = ""
|
|
|
|
dialog = gppwm3, "General Purpose PWM 3", xAxis
|
|
panel = gppwm3left
|
|
panel = gppwm3Tbl, {gppwm3_pin != 0}
|
|
|
|
dialog = gppwm4left, ""
|
|
field = "Pin", gppwm4_pin
|
|
field = ""
|
|
field = "Set frequency to 0hz for on-off mode"
|
|
field = "Frequency", gppwm4_pwmFrequency, {gppwm4_pin != 0}
|
|
field = ""
|
|
field = "On above duty", gppwm4_onAboveDuty, {gppwm4_pin != 0 && gppwm4_pwmFrequency == 0}
|
|
field = "Off below duty", gppwm4_offBelowDuty, {gppwm4_pin != 0 && gppwm4_pwmFrequency == 0}
|
|
field = "Duty if error", gppwm4_dutyIfError, {gppwm4_pin != 0}
|
|
field = ""
|
|
field = "Load Axis", gppwm4_loadAxis, {gppwm4_pin != 0}
|
|
field = "Note", gpPwmNote4
|
|
field = ""
|
|
field = ""
|
|
field = ""
|
|
field = ""
|
|
field = ""
|
|
|
|
dialog = gppwm4, "General Purpose PWM 4", xAxis
|
|
panel = gppwm4left
|
|
panel = gppwm4Tbl, {gppwm4_pin != 0}
|
|
|
|
dialog = hpfpCamDialog, "HPFP Cam Configuration"
|
|
field = "Number of lobes", hpfpCamLobes
|
|
field = "If using VVT, which cam the pump is driven from", hpfpCam, {hpfpCamLobes != 0}
|
|
field = "Angle of first lobe", hpfpPeakPos, {hpfpCamLobes != 0}
|
|
panel = hpfpLobeProfileCurve, {hpfpCamLobes != 0}
|
|
|
|
dialog = hpfpPumpDialog, "HPFP Pump Configuration"
|
|
field = "Valve Pin", hpfpValvePin, {hpfpCamLobes != 0}
|
|
field = "Valve Pin Mode", hpfpValvePinMode, {hpfpCamLobes != 0}
|
|
field = "Valve peak current", mc33_hpfp_i_peak, {hpfpCamLobes != 0}
|
|
field = "Valve hold current", mc33_hpfp_i_hold, {hpfpCamLobes != 0}
|
|
field = "Valve hold off time", mc33_hpfp_i_hold_off, {hpfpCamLobes != 0}
|
|
field = "Valve maximum duration", mc33_hpfp_max_hold, {hpfpCamLobes != 0}
|
|
field = "Pump volume", hpfpPumpVolume, {hpfpCamLobes != 0}
|
|
field = "Minimum angle", hpfpMinAngle, {hpfpCamLobes != 0}
|
|
field = "Activation angle", hpfpActivationAngle, {hpfpCamLobes != 0}
|
|
field = "Target decay rate", hpfpTargetDecay, {hpfpCamLobes != 0}
|
|
field = "Proportional gain", hpfpPidP, {hpfpCamLobes != 0}
|
|
field = "Integral gain", hpfpPidI, {hpfpCamLobes != 0}
|
|
panel = hpfpDeadtimeCurve, {hpfpCamLobes != 0}
|
|
|
|
[Tools]
|
|
;addTool = toolName, PanelName
|
|
addTool = veTableGenerator, "VE Table Generator", veTableTbl
|
|
#if LAMBDA
|
|
#else
|
|
addTool = afrTableGenerator, "AFR Table Generator", afrTableTbl
|
|
#endif
|