Cleanup work in the ini

This commit is contained in:
Josh Stewart 2017-10-23 22:42:09 +11:00
parent d3303e8b3d
commit ac4a36529b
1 changed files with 139 additions and 310 deletions

View File

@ -3,12 +3,11 @@
#unset enablehardware_test
[MegaTune]
MTversion = 2.25 ; MegaTune itself; needs to match exec version.
MTversion = 2.25
queryCommand = "Q"
;signature = 20
signature = "speeduino 201710-dev"
versionInfo = "S" ; Put this in the title bar.
versionInfo = "S" ;This info is what is displayed to user
[TunerStudio]
iniSpecVersion = 3.46
@ -98,7 +97,6 @@
endianness = little
nPages = 10
;pageSize = 288, 64, 288, 64, 288, 64, 64, 160, 192, 128, 192
pageSize = 288, 128, 288, 128, 288, 128, 160, 192, 128, 192
;burnCommand = "B"
@ -157,9 +155,6 @@ page = 1
mapBins = array, U08, 272, [ 16], "kPa", 2.0, 0.0, 0.0, 511.0, 0
#elif ALPHA_N
tpsBins = array, U08, 272, [ 16], "TPS", 2.0, 0.0, 0.0, 100.0, 0
#elif AIR_FLOW_METER
#error "Speeduino does not support MAF"
;#exit
#endif
@ -177,8 +172,8 @@ page = 2
pinLayout = bits, U08, 15, [0:7], "Speeduino v0.1", "Speeduino v0.2", "Speeduino v0.3", "Speeduino v0.4", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NA6 MX5 PNP", "Turtana PCB", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "Plazomat I/O 0.1", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "Daz V6 Shield 0.1", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID"
tachoPin = bits, U08, 16, [0:5], "Board Default", "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", "52", "53", "54", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID"
tachoDiv = bits, U08, 16, [6:7], "Normal", "Half", "INVALID", "INVALID"
tdePct = scalar, U08, 17, "ms", 0.1, 0.0, 0.0, 25.5, 1
taeColdA = scalar, U08, 18, "ms", 0.1, 0.0, 0.0, 25.5, 1
unused2-17 = scalar, U08, 17, "ms", 0.1, 0.0, 0.0, 25.5, 1
unused2-18 = scalar, U08, 18, "ms", 0.1, 0.0, 0.0, 25.5, 1
tpsThresh = scalar, U08, 19, "%/s", 1.0, 0.0, 0.0, 255, 0
taeTime = scalar, U08, 20, "ms", 10, 0.0, 0.0, 2550, 0
@ -217,8 +212,8 @@ page = 2
nCylinders = bits, U08, 36, [4:7], "INVALID","1","2","3","4","5","6","INVALID","8","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
; Config2
cltType = bits, U08, 37, [0:1], "GM", "Unknown1", "Unknown2", "Unknown3"
matType = bits, U08, 37, [2:3], "GM", "Unknown1", "Unknown2", "Unknown3"
unused2-37a= bits, U08, 37, [0:1], "INVALID", "None", "None", "None"
unused2-37b= bits, U08, 37, [2:3], "INVALID", "None", "None", "None"
nInjectors = bits, U08, 37, [4:7], "INVALID","1","2","3","4","5","6","INVALID","8","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
; Config3
@ -269,9 +264,6 @@ page = 3
mapBins2 = array, U08, 272, [ 16], "kPa", 2.0, 0.0, 0.0, 511.0, 0
#elif ALPHA_N
tpsBins2 = array, U08, 272, [ 16], "TPS", 2.0, 0.0, 0.0, 100.0, 0
#elif AIR_FLOW_METER
#error "Speeduino does not support MAF"
#exit
#endif
;--------------------------------------------------
@ -292,30 +284,26 @@ page = 4
fuelPumpPin= bits , U08, 6,[1:6], "Board Default", "INVALID", "INVALID", "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", "52", "53", "54", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "INVALID"
useResync = bits, U08, 6,[7:7], "No", "Yes"
sparkDur = scalar, U08, 7, "ms", 0.1, 0, 0, 25.5, 1 ; Spark duration
IdleAdvRPM = scalar, U08, 8, "RPM", 100, 0, 0, 1200, 0
#if CELSIUS
IdleAdvCLT = scalar, U08, 9, "C", 1, -40, -40, 102, 1
#else
IdleAdvCLT = scalar, U08, 9, "F", 1.8, -22.23, -40, 215, 0
#endif
IdleDelayTime = scalar, U08, 10, "sec", 1, 0, 0, 5, 0
StgCycles = scalar, U08, 11, "cycles", 1, 0, 0, 255, 0
unused4-8 = scalar, U08, 8, "ms", 0.1, 0.0, 0.0, 25.5, 1
unused4-9 = scalar, U08, 9, "ms", 0.1, 0.0, 0.0, 25.5, 1
unused4-10 = scalar, U08, 10, "ms", 0.1, 0.0, 0.0, 25.5, 1
SkipCycles = scalar, U08, 11, "cycles", 1, 0, 0, 255, 0
; name = array, type, offset, shape, units, scale, translate, lo, hi, digits
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
;Dwell control
dwellcont = bits, U08, 12, [0:0], "INVALID", "Dwell control"
useDwellLim= bits, U08, 12, [1:1], "Off", "On"
sparkMode = bits, U08, 12, [2:4], "Wasted Spark", "Single Channel", "Wasted COP", "Sequential", "Rotary", "INVALID", "INVALID", "INVALID"
TrigFilter = bits, U08, 12, [5:6], "Off", "Weak", "Medium", "Aggressive"
ignCranklock=bits, U08, 12, [7:7], "Off", "On"
dwellcrank = scalar, U08, 13, "ms", 0.1, 0, 0, 25, 1
dwellrun = scalar, U08, 14, "ms", 0.1, 0, 0, 8, 1 ;running dwell variable railed to 8 - who needs more than 8ms?
numteeth = scalar, U08, 15, "teeth", 1.0, 0.0, 0.0, 255, 0
onetwo = scalar, U08, 16, "teeth", 1.0, 0.0, 0.0, 255, 0
unused4-12a = bits, U08, 12, [0:0], "INVALID", "NOTHING"
useDwellLim = bits, U08, 12, [1:1], "Off", "On"
sparkMode = bits, U08, 12, [2:4], "Wasted Spark", "Single Channel", "Wasted COP", "Sequential", "Rotary", "INVALID", "INVALID", "INVALID"
TrigFilter = bits, U08, 12, [5:6], "Off", "Weak", "Medium", "Aggressive"
ignCranklock = bits, U08, 12, [7:7], "Off", "On"
dwellcrank = scalar, U08, 13, "ms", 0.1, 0, 0, 25, 1
dwellrun = scalar, U08, 14, "ms", 0.1, 0, 0, 8, 1 ;running dwell variable railed to 8 - who needs more than 8ms?
numTeeth = scalar, U08, 15, "teeth", 1.0, 0.0, 0.0, 255, 0
missingTeeth = scalar, U08, 16, "teeth", 1.0, 0.0, 0.0, 255, 0
crankRPM = scalar, U08, 17, "rpm", 100, 0.0, 100, 1000, 0
tpsflood = scalar, U08, 18, "%", 1.0, 0.0, 0.0, 255.0, 0
crankRPM = scalar, U08, 17, "rpm", 100, 0.0, 100, 1000, 0
tpsflood = scalar, U08, 18, "%", 1.0, 0.0, 0.0, 255.0, 0
;Rev Limits
SoftRevLim = scalar, U08, 19, "rpm", 100, 0.0, 100, 25500, 0
@ -347,7 +335,7 @@ page = 4
dfcoRPM = scalar, U08, 60, "RPM", 10.0, 0.0, 100, 2550, 0
dfcoHyster = scalar, U08, 61, "RPM", 1.0, 0.0, 100, 255.0, 0
dfcoTPSThresh= scalar, U08, 62, "%", 1.0, 0.0, 0, 100.0, 0
;ranking ignition bypass
;Cranking ignition bypass
ignBypassEnable = bits, U08, 63, [0:0], "Off", "On"
ignBypassPin = bits , U08, 63, [1:6], "INVALID", "INVALID", "INVALID", "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", "52", "53", "54", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID"
ignBypassHiLo = bits, U08, 63, [7:7], "LOW", "HIGH"
@ -368,9 +356,6 @@ page = 5
mapBinsAFR = array, U08, 272,[ 16], "kPa", 2.0, 0.0, 0.0, 511.0, 0
#elif ALPHA_N
tpsBinsAFR = array, U08, 272,[ 16], "TPS", 2.0, 0.0, 0.0, 100.0, 0
#elif AIR_FLOW_METER
#error "Speeduino does not support MAF"
#exit
#endif
;--------------------------------------------------
@ -554,96 +539,97 @@ page = 8
;--------------------------------------------------
page = 9
#if CAN_COMMANDS
enable_canbus = bits, U08, 0, [0:1], "Disable", "On Via Secondary Serial", "ON via Internal CAN ", "INVALID"
enable_canbus = bits, U08, 0, [0:1], "Disable", "On Via Secondary Serial", "ON via Internal CAN ", "INVALID"
#else
enable_canbus = bits, U08, 0, [0:1], "Disable", "On Via Secondary Serial", "INVALID", "INVALID"
enable_canbus = bits, U08, 0, [0:1], "Disable", "On Via Secondary Serial", "INVALID", "INVALID"
#endif
enable_candata_in = bits, U08, 0, [2:2], "Off", "On"
caninput_sel0 = bits, U16, 1, [0:0], "Off", "On"
caninput_sel1 = bits, U16, 1, [1:1], "Off", "On"
caninput_sel2 = bits, U16, 1, [2:2], "Off", "On"
caninput_sel3 = bits, U16, 1, [3:3], "Off", "On"
caninput_sel4 = bits, U16, 1, [4:4], "Off", "On"
caninput_sel5 = bits, U16, 1, [5:5], "Off", "On"
caninput_sel6 = bits, U16, 1, [6:6], "Off", "On"
caninput_sel7 = bits, U16, 1, [7:7], "Off", "On"
caninput_sel8 = bits, U16, 1, [8:8], "Off", "On"
caninput_sel3 = bits, U16, 1, [3:3], "Off", "On"
caninput_sel4 = bits, U16, 1, [4:4], "Off", "On"
caninput_sel5 = bits, U16, 1, [5:5], "Off", "On"
caninput_sel6 = bits, U16, 1, [6:6], "Off", "On"
caninput_sel7 = bits, U16, 1, [7:7], "Off", "On"
caninput_sel8 = bits, U16, 1, [8:8], "Off", "On"
caninput_sel9 = bits, U16, 1, [9:9], "Off", "On"
caninput_sel10 = bits, U16, 1, [10:10], "Off", "On"
caninput_sel11 = bits, U16, 1, [11:11], "Off", "On"
caninput_sel12 = bits, U16, 1, [12:12], "Off", "On"
caninput_sel13 = bits, U16, 1, [13:13], "Off", "On"
caninput_sel14 = bits, U16, 1, [14:14], "Off", "On"
caninput_sel15 = bits, U16, 1, [15:15], "Off", "On"
caninput_sel11 = bits, U16, 1, [11:11], "Off", "On"
caninput_sel12 = bits, U16, 1, [12:12], "Off", "On"
caninput_sel13 = bits, U16, 1, [13:13], "Off", "On"
caninput_sel14 = bits, U16, 1, [14:14], "Off", "On"
caninput_sel15 = bits, U16, 1, [15:15], "Off", "On"
;caninput_param_group = array , U16, 9, [ 8], "", 1, 0, 0, 65535, 0
caninput_param_group0 = bits, U16, 3, [0:10], $CAN_ADDRESS_HEX
caninput_param_group1 = bits, U16, 5, [0:10], $CAN_ADDRESS_HEX
caninput_param_group2 = bits, U16, 7, [0:10], $CAN_ADDRESS_HEX
caninput_param_group3 = bits, U16, 9, [0:10], $CAN_ADDRESS_HEX
caninput_param_group4 = bits, U16, 11, [0:10], $CAN_ADDRESS_HEX
caninput_param_group5 = bits, U16, 13, [0:10], $CAN_ADDRESS_HEX
caninput_param_group6 = bits, U16, 15, [0:10], $CAN_ADDRESS_HEX
caninput_param_group7 = bits, U16, 17, [0:10], $CAN_ADDRESS_HEX
caninput_param_group8 = bits, U16, 19, [0:10], $CAN_ADDRESS_HEX
caninput_param_group9 = bits, U16, 21, [0:10], $CAN_ADDRESS_HEX
caninput_param_group10 = bits, U16, 23, [0:10], $CAN_ADDRESS_HEX
caninput_param_group11 = bits, U16, 25, [0:10], $CAN_ADDRESS_HEX
caninput_param_group12 = bits, U16, 27, [0:10], $CAN_ADDRESS_HEX
caninput_param_group13 = bits, U16, 29, [0:10], $CAN_ADDRESS_HEX
caninput_param_group14 = bits, U16, 31, [0:10], $CAN_ADDRESS_HEX
caninput_param_group15 = bits, U16, 33, [0:10], $CAN_ADDRESS_HEX
caninput_param_group0 = bits, U16, 3, [0:10], $CAN_ADDRESS_HEX
caninput_param_group1 = bits, U16, 5, [0:10], $CAN_ADDRESS_HEX
caninput_param_group2 = bits, U16, 7, [0:10], $CAN_ADDRESS_HEX
caninput_param_group3 = bits, U16, 9, [0:10], $CAN_ADDRESS_HEX
caninput_param_group4 = bits, U16, 11, [0:10], $CAN_ADDRESS_HEX
caninput_param_group5 = bits, U16, 13, [0:10], $CAN_ADDRESS_HEX
caninput_param_group6 = bits, U16, 15, [0:10], $CAN_ADDRESS_HEX
caninput_param_group7 = bits, U16, 17, [0:10], $CAN_ADDRESS_HEX
caninput_param_group8 = bits, U16, 19, [0:10], $CAN_ADDRESS_HEX
caninput_param_group9 = bits, U16, 21, [0:10], $CAN_ADDRESS_HEX
caninput_param_group10 = bits, U16, 23, [0:10], $CAN_ADDRESS_HEX
caninput_param_group11 = bits, U16, 25, [0:10], $CAN_ADDRESS_HEX
caninput_param_group12 = bits, U16, 27, [0:10], $CAN_ADDRESS_HEX
caninput_param_group13 = bits, U16, 29, [0:10], $CAN_ADDRESS_HEX
caninput_param_group14 = bits, U16, 31, [0:10], $CAN_ADDRESS_HEX
caninput_param_group15 = bits, U16, 33, [0:10], $CAN_ADDRESS_HEX
caninput_param_start_byte0 = bits, U08, 35, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte0 = bits, U08, 35, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte1 = bits, U08, 36, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte2 = bits, U08, 37, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte3 = bits, U08, 38, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte4 = bits, U08, 39, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte5 = bits, U08, 40, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte6 = bits, U08, 41, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte7 = bits, U08, 42, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte8 = bits, U08, 43, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte6 = bits, U08, 41, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte7 = bits, U08, 42, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte8 = bits, U08, 43, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte9 = bits, U08, 44, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte10 = bits, U08, 45, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte11 = bits, U08, 46, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte12 = bits, U08, 47, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte13 = bits, U08, 48, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte14 = bits, U08, 49, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte15 = bits, U08, 50, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte14 = bits, U08, 49, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_start_byte15 = bits, U08, 50, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
caninput_param_num_bytes0 = bits, U16, 51, [0:0], "1", "2"
caninput_param_num_bytes0 = bits, U16, 51, [0:0], "1", "2"
caninput_param_num_bytes1 = bits, U16, 51, [1:1], "1", "2"
caninput_param_num_bytes2 = bits, U16, 51, [2:2], "1", "2"
caninput_param_num_bytes3 = bits, U16, 51, [3:3], "1", "2"
caninput_param_num_bytes4 = bits, U16, 51, [4:4], "1", "2"
caninput_param_num_bytes5 = bits, U16, 51, [5:5], "1", "2"
caninput_param_num_bytes6 = bits, U16, 51, [6:6], "1", "2"
caninput_param_num_bytes7 = bits, U16, 51, [7:7], "1", "2"
caninput_param_num_bytes8 = bits, U16, 51, [8:8], "1", "2"
caninput_param_num_bytes6 = bits, U16, 51, [6:6], "1", "2"
caninput_param_num_bytes7 = bits, U16, 51, [7:7], "1", "2"
caninput_param_num_bytes8 = bits, U16, 51, [8:8], "1", "2"
caninput_param_num_bytes9 = bits, U16, 51, [9:9], "1", "2"
caninput_param_num_bytes10 = bits, U16, 51, [10:10], "1", "2"
caninput_param_num_bytes11 = bits, U16, 51, [11:11], "1", "2"
caninput_param_num_bytes12 = bits, U16, 51, [12:12], "1", "2"
caninput_param_num_bytes13 = bits, U16, 51, [13:13], "1", "2"
caninput_param_num_bytes14 = bits, U16, 51, [14:14], "1", "2"
caninput_param_num_bytes15 = bits, U16, 51, [15:15], "1", "2"
caninput_param_num_bytes14 = bits, U16, 51, [14:14], "1", "2"
caninput_param_num_bytes15 = bits, U16, 51, [15:15], "1", "2"
unused10_53 = scalar, U08, 53, "", 1, 0, 0, 255, 0
unused10_54 = scalar, U08, 54, "", 1, 0, 0, 255, 0
enable_candata_out = bits, U08, 55, [0:0], "Off", "On"
canoutput_sel0 = bits, U08, 56, [0:0], "Off", "On"
enable_candata_out = bits, U08, 55, [0:0], "Off", "On"
canoutput_sel0 = bits, U08, 56, [0:0], "Off", "On"
canoutput_sel1 = bits, U08, 57, [0:0], "Off", "On"
canoutput_sel2 = bits, U08, 58, [0:0], "Off", "On"
canoutput_sel3 = bits, U08, 59, [0:0], "Off", "On"
canoutput_sel4 = bits, U08, 60, [0:0], "Off", "On"
canoutput_sel5 = bits, U08, 61, [0:0], "Off", "On"
canoutput_sel6 = bits, U08, 62, [0:0], "Off", "On"
canoutput_sel7 = bits, U08, 63, [0:0], "Off", "On"
canoutput_param_group = array , U16, 64, [ 8], "", 1, 0, 0, 65535, 0
canoutput_param_start_byte0 = bits, U08, 80, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
canoutput_param_start_byte1 = bits, U08, 81, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
canoutput_sel3 = bits, U08, 59, [0:0], "Off", "On"
canoutput_sel4 = bits, U08, 60, [0:0], "Off", "On"
canoutput_sel5 = bits, U08, 61, [0:0], "Off", "On"
canoutput_sel6 = bits, U08, 62, [0:0], "Off", "On"
canoutput_sel7 = bits, U08, 63, [0:0], "Off", "On"
canoutput_param_group = array , U16, 64, [ 8], "", 1, 0, 0, 65535, 0
canoutput_param_start_byte0 = bits, U08, 80, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
canoutput_param_start_byte1 = bits, U08, 81, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
canoutput_param_start_byte2 = bits, U08, 82, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
canoutput_param_start_byte3 = bits, U08, 83, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
canoutput_param_start_byte4 = bits, U08, 84, [0:2], "0", "1", "2", "3", "4", "5", "6", "7"
@ -655,8 +641,8 @@ page = 9
canoutput_param_num_bytes2 = bits, U08, 90, [0:1], "INVALID", "1", "2", "INVALID"
canoutput_param_num_bytes3 = bits, U08, 91, [0:1], "INVALID", "1", "2", "INVALID"
canoutput_param_num_bytes4 = bits, U08, 92, [0:1], "INVALID", "1", "2", "INVALID"
canoutput_param_num_bytes5 = bits, U08, 93, [0:1], "INVALID", "1", "2", "INVALID"
canoutput_param_num_bytes6 = bits, U08, 94, [0:1], "INVALID", "1", "2", "INVALID"
canoutput_param_num_bytes5 = bits, U08, 93, [0:1], "INVALID", "1", "2", "INVALID"
canoutput_param_num_bytes6 = bits, U08, 94, [0:1], "INVALID", "1", "2", "INVALID"
canoutput_param_num_bytes7 = bits, U08, 95, [0:1], "INVALID", "1", "2", "INVALID"
unused10_96 = scalar, U08, 96, "", 1, 0, 0, 255, 0
@ -733,8 +719,8 @@ page = 10
requiresPowerCycle = pinLayout
requiresPowerCycle = fanPin
requiresPowerCycle = reqFuel
requiresPowerCycle = numteeth
requiresPowerCycle = onetwo
requiresPowerCycle = numTeeth
requiresPowerCycle = missingTeeth
requiresPowerCycle = injOpen
requiresPowerCycle = IgInv
requiresPowerCycle = fanInv
@ -841,7 +827,6 @@ page = 10
menuDialog = main
menu = "Settings"
;subMenu = std_injection, "&Constants"
subMenu = engine_constants, "Engine Constants"
subMenu = injChars, "Injector Characteristics"
subMenu = triggerSettings, "&Trigger Setup"
@ -864,14 +849,10 @@ menuDialog = main
menu = "&Spark"
subMenu = sparkSettings, "&Spark Settings"
subMenu = sparkTbl, "Spark Table", 2
;subMenu = IdleAdvance, "Idle Advance settings",
;subMenu = Knock, "Kn&ock System"
subMenu = dwellSettings, "Dwell settings"
subMenu = dwell_correction_curve, "Dwell Compensation"
subMenu = iat_retard_curve, "&IAT Retard"
subMenu = rotary_ignition, "Rotary Ignition", { sparkMode == 4 }
;subMenu = wheelsim, "Stim for wheel"
;subMenu = oddwheel, "Oddfire Wheel settings", 7, { wheelon && oddfire }
menu = "&Starting/Idle"
subMenu = crankPW, "Cranking Settings"
@ -912,11 +893,8 @@ menuDialog = main
menuDialog = main
menu = "T&ools"
subMenu = mapCal, "Calibrate MAP"
;subMenu = battcalib, "Calibrate Battery Voltage"
;subMenu = std_separator ;----------------------------------------------
;subMenu = flash_unlock, "Un/Lock calibrations"
subMenu = std_ms2gentherm, "Calibrate Thermistor Tables", 0 ;, {flashlock}
subMenu = std_ms2geno2, "Calibrate &AFR Table", 0;, {flashlock}
subMenu = std_ms2gentherm, "Calibrate Thermistor Tables", 0
subMenu = std_ms2geno2, "Calibrate &AFR Table", 0
menuDialog = main
menu = "3D &Tuning Maps"
@ -936,25 +914,24 @@ menuDialog = main
[SettingContextHelp]
; constantName = "Help Text"
; tool tips tooltips
;Ensure all settings are defined as some MS2/BG words shipped with TS are not applicable.
nCylinders = "The number of cylinders in your engine."
alternate = ""
engineType = "Most engines are Even Fire. Typical odd-fire engines are V-twin, some V4, Vmax, some V6, V10."
twoStroke = "Four-Stroke (most engines), Two-stroke."
nInjectors = "Number of primary injectors."
mapSample = "The method used for calculating the MAP reading\nFor 1-2 Cylinder engines, Cycle Minimum is recommended.\nFor more than 2 cylinders Cycle Average is recommended"
stoich = "The stoichiometric ration of the fuel being used. For flex fuel, choose the primary fuel"
; These provide the context help in the dialog when these variables are used
nCylinders = "Cylinder count"
alternate = ""
engineType = "Engines with an equal number of degrees between all firings (This is most engines) should select Even fire. Some 2 and 6 cylinder engines are Odd fire however."
twoStroke = "Four-Stroke (most engines), Two-stroke."
nInjectors = "Number of primary injectors."
mapSample = "The method used for calculating the MAP reading\nFor 1-2 Cylinder engines, Cycle Minimum is recommended.\nFor more than 2 cylinders Cycle Average is recommended"
stoich = "The stoichiometric ration of the fuel being used. For flex fuel, choose the primary fuel"
injLayout = "The injector layout and timing to be used. Options are: \n 1. Paired - 2 injectors per output. Outputs active is equal to half the number of cylinders. Outputs are timed over 1 crank revolution. \n 2. Semi-sequential: Same as paired except that injector channels are mirrored (1&4, 2&3) meaning the number of outputs used are equal to the number of cylinders. Only valid for 4 cylinders or less. \n 3. Banked: 2 outputs only used. \n 4. Sequential: 1 injector per output and outputs used equals the number of cylinders. Injection is timed over full cycle. "
TrigPattern = "The type of input trigger decoder to be used."
useResync = "If enabled, sync will be rechecked once every full cycle from the cam input. This is good for accuracy, however if your cam input is noisy then this can cause issues."
numteeth = "Number of teeth on Primary Wheel."
TrigSpeed = "Primary trigger speed."
onetwo = "Number of Missing teeth on Primary Wheel."
TrigAng = "The Angle ATDC when tooth No:1 on the primary wheel passes the primary sensor."
TrigAngMul = "A multiplier used by non-360 degree tooth wheels (i.e. Wheels where the tooth count doesn't divide evenly into 360. Usage: (360 * <multiplier>) / tooth_count = Whole number"
StgCycles = "The number of revolutions that will be skipped during cranking before the injectors and coils are fired."
numTeeth = "Number of teeth on Primary Wheel."
TrigSpeed = "Primary trigger speed."
missingTeeth= "Number of Missing teeth on Primary Wheel."
TrigAng = "The Angle ATDC when tooth No:1 on the primary wheel passes the primary sensor."
TrigAngMul = "A multiplier used by non-360 degree tooth wheels (i.e. Wheels where the tooth count doesn't divide evenly into 360. Usage: (360 * <multiplier>) / tooth_count = Whole number"
SkipCycles = "The number of revolutions that will be skipped during cranking before the injectors and coils are fired."
TrigEdge = "The Trigger edge of the primary sensor.\nLeading.\nTrailing."
TrigEdgeSec = "The Trigger edge of the secondary (Cam) sensor.\nLeading.\nTrailing."
TrigFilter = "Tuning of the trigger filter algorithm. The more aggressive the setting, the more noise will be removed, however this increases the chance of some true readings being filtered out (False positive). Medium is safe for most setups. Only select 'Aggressive' if no other options are working"
@ -969,8 +946,8 @@ menuDialog = main
taeTime = "The duration of the acceleration enrichment"
iacChannels = "The number of output channels used for PWM valves. Select 1 for 2-wire valves or 2 for 3-wire valves."
iacStepTime = "Time between each stepper motor step.\nIncrease this if the motor appears to behave intermittently."
iacStepHome = "On startup the stepper motor moves this many steps to return to its home position. Set this value to a few more than the actual number to ensure the motor has returned to its full position."
iacStepTime = "Pause time between each step. Values that are too low can cause the motor to behave erratically or not at all"
iacStepHome = "Homing steps to perform on startup. Must be greater than the fully open steps value"
iacStepHyster = "The minimum number of steps to move in any one go."
iacAlgorithm = "Selects method of idle control.\nNone = no idle control valve.\nOn/Off valve.\nPWM valve (2,3 wire).\nStepper Valve (4,6,8 wire)."
iacPWMdir = "Normal PWM valves increase RPM with higher duty. If RPM decreases with higher duty then select Reverse"
@ -1119,9 +1096,6 @@ menuDialog = main
; dialog which will be added.
; dialogs can be nested and can be mixed with fields
dialog = wc_note
field = "Final enrichment value must be 100%. Typical maximum is 255% (cold)."
dialog = engine_constants_southwest, "Speeduino Board"
field = "Stoichiometric ratio", stoich
field = "Injector Layout", injLayout, { nCylinders <= 4 }
@ -1149,57 +1123,39 @@ menuDialog = main
dialog = flexFueling, "Flex Fuel"
field = "Flex sensor", flexEnabled
dialog = flexn, ""
field = "#Spark/Fuel"
dialog = flexLeft, ""
field = "Component"
field = "Sensor Frequency"
field = "Fuel Multiplier%"
field = "Fuel Adjustment"
field = "Additional advance"
field = "Additional boost", { boostEnabled }
#field = "#Temp Sense"
#field = "Sensor PW"
#field = "Fuel Temp"
dialog = flexl, ""
dialog = flexMiddle, ""
field = "Low (E0)"
field = "", flexFreqLow, { flexEnabled }
field = "", flexFuelLow, { flexEnabled }
field = "", flexAdvLow, { flexEnabled }
field = "", flexBoostLow, { boostEnabled }
#field = "Low"
#field = "", ff_tpw0, { flexEnabled && (fueltemp1 == 1)}
#field = "", ff_temp0, { flexEnabled && (fueltemp1 == 1)}
dialog = flexh, ""
dialog = flexRight, ""
field = "High (E100)"
field = "", flexFreqHigh, { flexEnabled }
field = "", flexFuelHigh, { flexEnabled }
field = "", flexAdvHigh, { flexEnabled }
field = "", flexBoostHigh, { boostEnabled }
#field = "High"
#field = "", ff_tpw1, { flexFuel && (fueltemp1 == 1)}
#field = "", ff_temp1, { flexFuel && (fueltemp1 == 1)}
field = "", flexBoostHigh, { flexEnabled && boostEnabled }
dialog = ff_table, "Flex Fuel Calibration", xAxis
panel = flexn
panel = flexl
panel = flexh
dialog = ff_fallback, "", yAxis
#field = "Baseline Ethanol%", flex_baseline, { flexFuel }
#field = "#Fallback For Sensor Failure"
#field = "Fallback Fuel Multiplier%", fuelCorr_default, { flexFuel > 0 }
#field = "Fallback Timing Addition", fuelSpkDel_default, { flexFuel > 0 }
dialog = flexMain, "Flex Fuel Calibration", xAxis
panel = flexLeft
panel = flexMiddle
panel = flexRight
dialog = flexFuelTop, ""
field = "Flex Fuel Sensor", flexEnabled
#field = "Sensor Port", flexport, { flexFuel > 0 }
# field = "Temperature Input", fueltemp1
dialog = flexFueling, "Fuel Sensor Settings", yAxis
topicHelp = "http://speeduino.com/wiki/index.php/Flex_Fuel"
panel = flexFuelTop
panel = ff_table
panel = ff_fallback
panel = flexMain
dialog = tacho, "Tacho"
field = "Output pin", tachoPin
@ -1208,9 +1164,6 @@ menuDialog = main
dialog = accelEnrichments_center, ""
field = "TPSdot Threshold", tpsThresh
field = "Accel Time", taeTime
; field = "Cold Accel Enrichment", taeColdA
; field = "Cold Accel Mult", taeColdM
;field = "Decel Fuel Amount", tdePct
dialog = accelEnrichments_south, "Decelleration Fuel Cutoff (DFCO)"
field = "Enabled", dfcoEnabled
@ -1225,7 +1178,6 @@ menuDialog = main
dialog = accelEnrichments_north, "", xAxis
panel = time_accel_tpsdot_curve
;panel = time_accel_tpsdot_tbl
dialog = accelEnrichments, "Acceleration Enrichment"
topicHelp = "http://speeduino.com/wiki/index.php/Acceleration_Wizard"
@ -1331,10 +1283,7 @@ menuDialog = main
dialog = crankPW, "Cranking Settings", yAxis
topicHelp = "http://speeduino.com/wiki/index.php/Cranking"
panel = crankingOptions, North
;field = ""
;field = "Cranking Enrichment %", crankingPct
panel = crankingEnrichDialog, Center
;field = ""
panel = crankingIgnOptions, South
@ -1346,16 +1295,16 @@ menuDialog = main
dialog = triggerSettings,"Trigger Settings",4
topicHelp = "http://speeduino.com/wiki/index.php/Decoders"
field = "Trigger Pattern", TrigPattern
field = "Primary base teeth", numteeth, { TrigPattern == 0 || TrigPattern == 2 || TrigPattern == 11 }
field = "Primary base teeth", numTeeth, { TrigPattern == 0 || TrigPattern == 2 || TrigPattern == 11 }
field = "Primary trigger speed", TrigSpeed, { TrigPattern == 0 }
field = "Missing teeth", onetwo, { TrigPattern == 0 }
field = "Secondary teeth", onetwo, { TrigPattern == 2 }
field = "Missing teeth", missingTeeth, { TrigPattern == 0 }
field = "Secondary teeth", missingTeeth, { TrigPattern == 2 }
field = "Trigger angle multiplier", TrigAngMul, { TrigPattern == 11 }
field = "Trigger Angle ", TrigAng
field = "This number represents the angle ATDC when "
field = "tooth #1 passes the primary sensor."
field = ""
field = "Skip Revolutions", StgCycles
field = "Skip Revolutions", SkipCycles
field = "Note: This is the number of revolutions that will be skipped during"
field = "cranking before the injectors and coils are fired"
field = "Trigger edge", TrigEdge
@ -1369,16 +1318,12 @@ menuDialog = main
dialog = sparkSettings,"Spark Settings",4
field = "Spark output mode", sparkMode
field = "Cranking advance Angle", CrankAng
;field = "Hold Ignition", IgHold
field = "Spark Outputs triggers", IgInv
field = ""
field = "Fixed Angle (0 = use map)", FixAng
;field = "Trim Angle", Trim
dialog = dwellSettings, "Dwell Settings", 4
topicHelp = "http://speeduino.com/wiki/index.php/Dwell"
;field = "Dwell control", dwellcont
;field = "Or:"
field = " Cranking dwell", dwellcrank
field = " Running dwell", dwellrun
field = " Spark duration", sparkDur
@ -1495,7 +1440,7 @@ menuDialog = main
dialog = warmup, "Warmup Enrichment (WUE) - Percent Multiplier"
panel = warmup_curve
panel = wc_note
field = "Final enrichment value must be 100%."
field = ""
panel = aseSettings
@ -1963,7 +1908,6 @@ cmdtestspk450dc = "E\x03\x0C"
; Warmup enrichment curve
curve = warmup_curve, "Warmup Enrichment (WUE) Curve"
;topicHelp = "file://$getProjectsDirPath()/docs/xxx.pdf#wue"
columnLabel = "Coolant", "WUE %"
xAxis = -40, 210, 9
yAxis = 0, 240, 6
@ -1973,7 +1917,6 @@ cmdtestspk450dc = "E\x03\x0C"
; Cranking enrichment curve
curve = cranking_enrich_curve, "Cranking Enrichment Curve"
;topicHelp = "file://$getProjectsDirPath()/docs/xxx.pdf#wue"
columnLabel = "Coolant", "Enrich %"
xAxis = -40, 110, 9
yAxis = 0, 200, 6
@ -2004,7 +1947,7 @@ cmdtestspk450dc = "E\x03\x0C"
zBins = veTable
gridHeight = 2.0
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
gridOrient = 250, 0, 340
upDownLabel = "(RICHER)", "(LEANER)"
table = sparkTbl, sparkMap, "Ignition Advance Table", 3
@ -2061,7 +2004,7 @@ cmdtestspk450dc = "E\x03\x0C"
zBins = fuelTrim1Table
gridHeight = 2.0
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
gridOrient = 250, 0, 340
upDownLabel = "(RICHER)", "(LEANER)"
table = fuelTrimTable2Tbl, fuelTrimTable2Map, "Fuel trim Table 2", 9
@ -2075,7 +2018,7 @@ cmdtestspk450dc = "E\x03\x0C"
zBins = fuelTrim2Table
gridHeight = 2.0
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
gridOrient = 250, 0, 340
upDownLabel = "(RICHER)", "(LEANER)"
table = fuelTrimTable3Tbl, fuelTrimTable3Map, "Fuel trim Table 3", 9
@ -2089,7 +2032,7 @@ cmdtestspk450dc = "E\x03\x0C"
zBins = fuelTrim3Table
gridHeight = 2.0
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
gridOrient = 250, 0, 340
upDownLabel = "(RICHER)", "(LEANER)"
table = fuelTrimTable4Tbl, fuelTrimTable4Map, "Fuel trim Table 4", 9
@ -2103,7 +2046,7 @@ cmdtestspk450dc = "E\x03\x0C"
zBins = fuelTrim4Table
gridHeight = 2.0
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
gridOrient = 250, 0, 340
upDownLabel = "(RICHER)", "(LEANER)"
@ -2111,13 +2054,6 @@ cmdtestspk450dc = "E\x03\x0C"
[GaugeConfigurations]
;-------------------------------------------------------------------------------
; Notes on some of the gauges.
;
; The accelEnrichGauge is now a composite of both acceleration enrichment
; and deceleration enleanment numbers. See the definition of the variable
; accDecEnrich in the OutputChannels section.
;
;-------------------------------------------------------------------------------
; Define a gauge's characteristics here, then go to a specific layout
; block (Tuning or FrontPage) and use the name you've defined here to
@ -2137,36 +2073,32 @@ cmdtestspk450dc = "E\x03\x0C"
; vd = Decimal places in displayed value
; ld = Label decimal places for display of Lo and Hi, above.
gaugeCategory = "Main"
;Name Var Title Units Lo Hi LoD LoW HiW HiD vd ld
; baroADCGauge = baroADC, "Barometer ADC", "", 0, 255, -1, -1, 256, 256, 0, 0
; mapADCGauge = mapADC, "MAP ADC", "", 0, 255, -1, -1, 256, 256, 0, 0
#matADCGauge = matADC, "MAT ADC", "", 0, 255, -1, -1, 256, 256, 0, 0
#cltADCGauge = cltADC, "CLT ADC", "", 0, 255, -1, -1, 256, 256, 0, 0
tpsADCGauge = tpsADC, "TPS ADC", "", 0, 255, -1, -1, 256, 256, 0, 0
#batVoltGauge = batteryVoltage, "BAT V", "", 0, 255, -1, -1, 256, 256, 0, 0
accelEnrichGauge = accelEnrich, "Accel Enrich", "%", 50, 150, -1, -1, 999, 999, 0, 0
afrGauge = afr, "Air:Fuel Ratio", "", 7, 25, 12, 13, 15, 16, 2, 2
afrGauge2 = afr2, "Air:Fuel Ratio 2", "", 7, 25, 12, 13, 15, 16, 2, 2
lambdaGauge = lambda, "Lambda", "", 0.5, 1.5, 0.5, 0.7, 2, 1.1, 2, 2
dutyCycleGauge = dutyCycle, "Duty Cycle", "%", 0, 100, -1, -1, 70, 80, 1, 1
egoCorrGauge = egoCorrection, "EGO Correction", "%", 50, 150, 90, 99, 101, 110, 0, 0
gammaEnrichGauge = gammaEnrich, "Gamma Enrichment", "%", 50, 150, -1, -1, 151, 151, 0, 0
pulseWidthGauge = pulseWidth, "Pulse Width", "mSec", 0, 35.0, 1.0, 1.2, 20, 25, 3, 3
tachometer = rpm, "Engine Speed", "RPM", 0, 8000, 300, 600, 3000, 5000, 0, 0
throttleGauge = throttle, "Throttle Position", "%TPS", 0, 100, -1, 1, 90, 100, 0, 0
tpsGauge = tps, "Throttle Position2", "%TPS", 0, 100, -1, 1, 90, 100, 0, 0
veBucketGauge = veTuneValue, "VE Value", "%", 0, 120, -1, -1, 999, 999, 0, 0
veGauge = veCurr, "VE Current", "%", 0, 120, -1, -1, 999, 999, 0, 0
voltMeter = batteryVoltage,"Battery Voltage", "volts", 0, 25, 8, 9, 15, 16, 2, 2
warmupEnrichGauge = warmupEnrich, "Warmup Enrichment", "%", 100, 200, 130, 140, 140, 150, 0, 0
advanceGauge = advance, "Spark Advance", "deg BTDC", 50, -10, 0, 0, 35, 45, 0, 0
gaugeCategory = "Sensor inputs"
mapGauge = map, "Engine MAP", "kPa", 0, 255, 0, 20, 200, 245, 0, 0
mapGauge_psi = map_psi, "Engine MAP (PSI)", "PSI", -15, 100, 0, 20, 200, 245, 0, 0
mapGauge_bar = map_bar, "Engine MAP (BAR)", "Bar", -1, 3, -1, -1, 5, 5, 2, 2
mapGauge_vacBoost = map_vacboost, "Engine MAP (in-Hg/PSI)", "in-Hg/PSI", -30, 30, -30, -30, 30, 30, 1, 1
voltMeter = batteryVoltage,"Battery Voltage", "volts", 0, 25, 8, 9, 15, 16, 2, 2
tpsADCGauge = tpsADC, "TPS ADC", "", 0, 255, -1, -1, 256, 256, 0, 0
throttleGauge = throttle, "Throttle Position", "%TPS", 0, 100, -1, 1, 90, 100, 0, 0
afrGauge = afr, "Air:Fuel Ratio", "", 7, 25, 12, 13, 15, 16, 2, 2
afrGauge2 = afr2, "Air:Fuel Ratio 2", "", 7, 25, 12, 13, 15, 16, 2, 2
lambdaGauge = lambda, "Lambda", "", 0.5, 1.5, 0.5, 0.7, 2, 1.1, 2, 2
#if CELSIUS
cltGauge = coolant, "Coolant Temp", "TEMP", -40, 215, -15, 0, 95, 105, 0, 0
@ -2175,7 +2107,6 @@ cmdtestspk450dc = "E\x03\x0C"
cltGauge = coolant, "Coolant Temp", "TEMP", -40, 215, 0, 30, 200, 220, 0, 0
iatGauge = iat, "Inlet Air Temp", "TEMP", -40, 215, 0, 30, 200, 210, 0, 0
#endif
advanceGauge = advance, "Spark Advance", "deg BTDC", 50, -10, 0, 0, 35, 45, 0, 0
flexGauge = flex, "Flex sensor", "%", 0, 100, -1, -1, 999, 999, 0, 0
#if CAN_COMMANDS
@ -2198,9 +2129,8 @@ cmdtestspk450dc = "E\x03\x0C"
CanGauge15 = canin_gauge15, "Can In15" "", 0, 1024, -1, -1, 1025, 1025, 0, 0
#endif
gaugeCategory = "Other"
gaugeCategory = "System Data"
clockGauge = secl, "Clock", "Seconds", 0, 255, 10, 10, 245, 245, 0, 0
deadGauge = deadValue, "---", "", 0, 1, -1, -1, 2, 2, 0, 0
loopGauge = loopsPerSecond,"Main loop speed", "Loops/S" , 0, 70000, -1, 500,1800, 4000, 0, 0
memoryGauge = freeRAM, "Free memory", "bytes" , 0, 8000, -1, 1000,8000, 1000, 0, 0
;-------------------------------------------------------------------------------
@ -2214,11 +2144,7 @@ cmdtestspk450dc = "E\x03\x0C"
; 5 6 7 8
gauge1 = tachometer
#if SPEED_DENSITY
gauge2 = throttleGauge
#else
gauge2 = tpsGauge
#endif
gauge3 = pulseWidthGauge
gauge4 = dutyCycleGauge
gauge5 = mapGauge
@ -2229,11 +2155,9 @@ cmdtestspk450dc = "E\x03\x0C"
;----------------------------------------------------------------------------
; Indicators
; expr off-label on-label, off-bg, off-fg, on-bg, on-fg
indicator = { ready }, "Not Ready", "Ready", white, black, green, black
indicator = { running }, "Not Running", "Running" white, black, green, black
indicator = { crank }, "Not Cranking", "Cranking", white, black, green, black
indicator = { startw }, "ASE OFF", "ASE", white, black, green, black
indicator = { ase }, "ASE OFF", "ASE", white, black, green, black
indicator = { warmup }, "WUE OFF", "WUE", white, black, green, black
indicator = { tpsaccaen }, "Accel", "Accel", white, black, green, black
indicator = { tpsaccden }, "Decel", "Decel", white, black, green, black
@ -2249,71 +2173,8 @@ cmdtestspk450dc = "E\x03\x0C"
indicator = { boostCutOut }, "Ign Cut OFF", "Ign Cut (Boost)", white, black, red, black
indicator = { sync }, "No Sync", "Sync", white, black, green, black
;-------------------------------------------------------------------------------
[RunTime]
barHysteresis = 2.5 ; Seconds
#if CELSIUS
coolantBar = -40, 215
matBar = -40, 215
#else
coolantBar = -40, 215
matBar = -40, 215
#endif
batteryBar = 6, 15
dutyCycleBar = 0, 100
gammaEBar = 0, 200
mapBar = 0, 255
pulseWidthBar = 0, 25.5
rpmBar = 0, 8000
throttleBar = 0, 100
egoCorrBar = 0, 200
baroCorrBar = 0, 200
warmupCorrBar = 0, 200
airdenCorrBar = 0, 200
veCorrBar = 0, 200
accCorrBar = 0, 100
;-------------------------------------------------------------------------------
[Tuning]
font = "Courier", 14
spotDepth = 2 ; 0 = no indicators, 1 = Z only, 2 = XYZ indicators.
cursorDepth = 2 ; Same as spot depth.
; The four radio buttons on the tuning screen select a "page" of six
; gauges. The gauge numbering is the same as the front page, across
; then down.
; 1 2
; 3 4
; 5 6
;
; gaugeColumns allows you to hide or show gauges in column 2 (i.e.,
; gauges 2, 4 and 6).
gaugeColumns = 2 ; Only 1 or 2 are valid.
;----------------------------------------------------------------------------
; Notes on tuning screen gauges:
; pageButtons = Labels for radio buttons at bottom of tuning dialog.
;
; Gauge 2 previously switched automatically to be tpsGauge when alpha-n
; was enabled, but you need to do it manually now.
;----------------------------------------------------------------------------
; Page 1 Page 2 Page 3 Page 4
pageButtons = "&EGO", "&WUE", "PW&1", "PW&2"
gauge1 = tachometer, tachometer, tachometer, tachometer
gauge2 = mapGauge, mapGauge, mapGauge, mapGauge
gauge3 = egoGauge, egoGauge, egoGauge, egoGauge
gauge4 = egoCorrGauge, warmupEnrichGauge, pulseWidthGauge, pulseWidthGauge
gauge5 = veBucketGauge, veBucketGauge, veBucketGauge, veBucketGauge
gauge6 = accelEnrichGauge, accelEnrichGauge, dutyCycleGauge, dutyCycleGauge
;-------------------------------------------------------------------------------
[OutputChannels]
@ -2322,8 +2183,6 @@ cmdtestspk450dc = "E\x03\x0C"
; by the value of ochBlockSize, so be very careful when
; you change it.
deadValue = { 0 } ; Convenient unchanging value.
ochGetCommand = "r\$tsCanId\x30%2o%2c"
ochBlockSize = 75
@ -2338,9 +2197,9 @@ cmdtestspk450dc = "E\x03\x0C"
toothLog1Ready = bits, U08, 1, [6:6]
toothLog2Ready = bits, U08, 1, [7:7]
engine = scalar, U08, 2, "bits", 1.000, 0.000
ready = bits, U08, 2, [0:0]
running = bits, U08, 2, [0:0]
crank = bits, U08, 2, [1:1]
startw = bits, U08, 2, [2:2]
ase = bits, U08, 2, [2:2]
warmup = bits, U08, 2, [3:3]
tpsaccaen = bits, U08, 2, [4:4]
tpsaccden = bits, U08, 2, [5:5]
@ -2410,26 +2269,20 @@ cmdtestspk450dc = "E\x03\x0C"
errorNum = bits, U08, 36, [0:1]
currentError = bits, U08, 36, [2:7]
; Computed output channels. See "megatuneExamples.ini" for all the
; pre-defined variables, search for "???" and you'll see them.
accDecEnrich = { accelEnrich + ((engine & 0b00100000) ? tdePct : 100) }
#if CELSIUS
coolant = { coolantRaw - 40 } ; Coolant sensor temperature in user units.
iat = { iatRaw - 40 } ; Manifold temperature in user units.
coolant = { coolantRaw - 40 } ; Temperature readings are offset by 40 to allow for negatives
iat = { iatRaw - 40 } ; Temperature readings are offset by 40 to allow for negatives
#else
coolant = { (coolantRaw - 40) * 1.8 + 32 } ; Coolant sensor temperature in user units.
iat = { (iatRaw - 40) * 1.8 + 32 } ; Manifold temperature in user units.
coolant = { (coolantRaw - 40) * 1.8 + 32 } ;Convert C to F (Offset by 40)
iat = { (iatRaw - 40) * 1.8 + 32 } ;Convert C to F (Offset by 40)
#endif
time = { timeNow } ; "timeNow" is a parameterless built-in function.
seconds = { secl };
time = { timeNow }
seconds = { secl }
throttle = { tps }, "%"
;cycleTime = { 60000.0 / rpm * (2.0-twoStroke) }
cycleTime = { rpm ? ( 60000.0 / rpm ) : 0 }
;nSquirts = { nCylinders/divider }
dutyCycle = { rpm ? ( 100.0*pulseWidth/cycleTime ) : 0 }
dutyCycle = { rpm ? ( 100.0*pulseWidth/cycleTime ) : 0 }
boostCutOut = { boostCutFuel || boostCutSpark }
lambda = { afr / stoich }
@ -2441,30 +2294,6 @@ cmdtestspk450dc = "E\x03\x0C"
map_inhg = { (baro - map) * 0.2953007 } ;in-Hg
map_vacboost = { map < baro ? -map_inhg : map_psi }
#if EXPANDED_CLT_TEMP
clt_exp = { 1 }
#else
clt_exp = { 0 }
#endif
#if CELSIUS
cltlowlim = { clt_exp ? -40 : -40 }
clthighlim = { clt_exp ? 230 : 120 }
cltlowdang = { clt_exp ? 65 : 10 }
cltlowwarn = { clt_exp ? 93 : 65 }
clthighwarn = { clt_exp ? 162 : 93 }
clthighdang = { clt_exp ? 176 : 104 }
mathigh = { 110 }
#else ; fahrenheit
cltlowlim = { clt_exp ? -40 : -40 }
clthighlim = { clt_exp ? 450 : 250 }
cltlowdang = { clt_exp ? 150 : 50 }
cltlowwarn = { clt_exp ? 200 : 150 }
clthighwarn = { clt_exp ? 325 : 200 }
clthighdang = { clt_exp ? 350 : 220 }
mathigh = { 215 }
#endif
;-------------------------------------------------------------------------------
[Datalog]