; INI date: 9:35am, July 27, 2015
;------------------------------------------------------------------------------
; Units - "unset" to change to metric units in TunerStudioMS (to match values returned
; from MShift/GPIO controller when metric units are chosen).
; defaults are imperial units
#unset CELSIUS
#unset SI_LENGTHS
; otherwise METRIC units are used
#unset CAN_COMMANDS
;----------------------------------------------------------------------------
[MegaTune]
MTversion = 2.25 ; MegaTune itself; needs to match exec version.
#if CAN_COMMANDS
queryCommand = "r\x01\x0f\x00\x00\x00\x14" ; 13 bytes from table 15. Verify against signature.
#else
queryCommand = "Q" ; Verify against signature.
#endif
versionInfo = "S" ; Put this in the title bar.
signature = "MShift 5.102 " ; MegaShift sends a null at 20th byte.
; 123456789.123456789.
# set LOAD_KPA
;----------------------------------------------------------------------------
[ReferenceTables]
tableWriteCommand = "t" ;
referenceTable = canOutmsgBurner, "Configure CAN Outmsg"
;topicHelp = "http://www.megamanual.com/mt29.htm#outmsg"
tableIdentifier = 010, "outmsg Table" ; id in octal, 010 = table 8
adcCount = 1024 ; length of the table
bytesPerAdc = 1 ; using bytes
scale = 1 ; scale before sending to controller
;tableGenerator = Generator Type, Label, xUnits, yUnits, xLow, xHi, yLow, yHi ; lows and highs are just default values, they will be user editable
;tableGenerator = linearGenerator, "Custom Linear WB", "Volts","AFR", 1, 4, 9.7, 18.7
solutionsLabel = "CAN Outmsg"
solution = "CAN Outmsg", { table(adcValue, "canOutmsg.inc") }
;-------------------------------------------------------------------------------
[Constants]
;----------------------------------------------------------------------------
; Constants Definition
; --------------------
;
; Scalar Values
; -------------
; The scaling and translation values are used as follows:
; msValue = userValue / scale - translate
; userValue = (msValue + translate) * scale
;
;
; Array Values
; ------------
; Arrays are specified just like scalars, except that they have a "shape"
; entry in the fourth parameter. The shape allows you to define lists or
; tables, for example [8] defines a list with eight values and [2x4] defines
; a table with eight values (two rows and four columns). Tables may be
; stored in either "X-" or "Y-order." X-order means that memory is laid
; out as follows.
;
; [x1,y1] [x2,y1]...[xn,y1] [x1,y2]...
;
; Y-order would be
;
; [x1,y1] [x1,y2]...[x1,yn] [x2,y1]...
;
; To use the TableEditor, you must define two lists and a table, and
; the lengths of the lists must correspond to the shape of the table.
;
; Bit Fields
; ----------
; Bits are numbered 0-7, the rightmost being bit zero. The basic
; data word that stores bit fields must be unsigned.
;
; You need NOT supply the correct number of labels matching the
; number of bits you've specified (one bit requires 2 values, two
; bits requires 4 values and so on). If you neglect to supply enough
; labels, they will be synthesized using the sequence "1", "2" and so
; on based upon their position in the sequence (the cltType and matType
; will end up with identical lists).
;
;----------------------------------------------------------------------------
pageActivationDelay = 250 ; Milliseconds delay after burn command.
blockReadTimeout = 180 ; Milliseconds total timeout for reading page.
; MUST set nPages *before* blocking factor, or will get "turboBaud" error
endianness = big
nPages = 2
pageSize = 1016, 976
; page size must be divisible by 8 for TS CAN pass-through compatibility
pageIdentifier = "\x01\x04", "\x01\x05"
burnCommand = "b%2i", "b%2i"
pageReadCommand = "r%2i%2o%2c", "r%2i%2o%2c"
pageValueWrite = "w%2i%2o%2c%v", "w%2i%2o%2c%v"
pageChunkWrite = "w%2i%2o%2c%v", "w%2i%2o%2c%v"
; The commands sent to the GPIO are formatted "command\CAN_ID\table_ID\table offset\num.bytes"
; i.e. cmd\CAN_ID\Table_ID\Table_offset\Num_Bytes
; where:
; cmd => ascii 'r' (x72): Read and send back RAM user input parameters from offset location, others commands are:
; 'a' (x61): send back All real time ram output variables
; 'w' (x77): receive new ram input data and Write into offset location;
; 'e' (x65): same as 'w', but verify by Echoing back values, up to sizeof(txbuf).
; 'y' (x79): verify that a flash data block matches a corresponding ram data block
; 'b' (x62): Burn a block of ram input values into flash;
; 't' (x74): update a flash Table with following serial data
; '!' (x21): start receiving reinit/reboot command
; 'c' (x63): send back seconds to test Comms
; 'Q' (x51): send code revision number
; 'S' (x53): send program title
; 'k' (x68): request checksum.
; CAN_ID is the controller's unique ID number (from 0 to 15) - 1 byte
; %2i is the id/table number - 1 byte
; %2o is the table offset - 2 bytes
; %2c is the number of bytes to be read/written - 2 bytes
; %v is the byte to be sent/written - 1 bytes
; so there are 7 bytes to a message
; Example: from TS comm log
; Time: 0:33.314: SENT, 7 bytes
; x72 x01 x07 x00 x38 x00 x08
; is in format ; or r%2i%2o%2c, and
; means:
; x72 => ascii 'r' (character 72): Read and send back RAM user input parameters from offset location,
; x01 => from controller using can_id=1,
; x07 => values in table=7 (outpc),
; x00 & x38 => at offset 38h (56 decimal) - need two bytes since we may require an offset greater than 255,
; x00 & x08 => read and send 8 bytes
; C Type Bits Range TunerStudio INI Designation
; ------ ---- ----- ---------------------------
; - char (=signed char) 8 -128 to 127 S08 (one byte offset each)
; - unsigned char 8 0 to 255 U08
; ...............................................................................................
; - int (=signed int) 16 -32768 to 32767 S16 (two byte offset each)
; (= short)
; - unsigned int 16 0 to 65535 U16
; (=unsigned short int)
; ................................................................................................
; - long (=signed long) 32 -2³¹ to 2³¹ - 1 S32 (four byte offset each)
; (=long int)
; - unsigned long 32 0 to 2³² - 1 U32
; (=unsigned long int)
; ................................................................................................
; Note that variables are signed unless designated otherwise.
; MUST set nPages *before* blocking factor, or will get "turboBaud" error
#if CAN_COMMANDS
blockingFactor = 64
#endif
; For the most part, the parameters below have the same names as in the source code.
; This isn't required (since it is the actual memory addresses that are used),
; but it does help when trying to understand and discuss the source code.
page = 1
; **************************************** inpram *************************************************
;name = class, type, offset, shape, units, scale, translate, lo, hi, decimal digits
InputCaptureEdge = bits, U08, 0, [0:0], "Rising Edge", "Falling Edge"
#if SI_LENGTHS
vss_table1 = array, U16, 1, [ 16 ], "kph", 1.60934, 0.00000, 0, 255, 0 ; vehicle speed tables
#else
vss_table1 = array, U16, 1, [ 16 ], "mph", 1.00000, 0.00000, 0, 255, 0 ; vehicle speed tables
#endif
#if LOAD_KPA
LOAD_table1 = array, S16, 33, [ 9 ], "kpa", 1.00000, 0.00000, 0, 400, 0 ; load bins (x1)
#else
LOAD_table1 = array, S16, 33, [ 9 ], "%", 1.00000, 0.00000, 0, 100, 0 ; load bins (x1)
#endif
#if CELSIUS
temp_table = array, S16, 51, [ 10 ], "ºC", 0.05556, 32.0000, -40, 255, 0 ; deg x 10 (C or F)
#else
temp_table = array, S16, 51, [ 10 ], "ºF", 0.10000, 0.00000, -40, 255, 0 ; deg x 10 (C or F)
#endif
gear_table = array, U16, 71, [ 9 ], ":1", 0.00100, 0.00000, 0, 7, 3 ; gear ratio array [9] * 1000
gearR = scalar, U16, 71, ":1", 0.00100, 0.00000, 0, 7, 3 ; reverse gear * 1000
gear1 = scalar, U16, 73, ":1", 0.00100, 0.00000, 0, 7, 3 ; first gear * 1000
gear2 = scalar, U16, 75, ":1", 0.00100, 0.00000, 0, 7, 3 ; second gear * 1000
gear3 = scalar, U16, 77, ":1", 0.00100, 0.00000, 0, 7, 3 ; third gear * 1000
gear4 = scalar, U16, 79, ":1", 0.00100, 0.00000, 0, 7, 3 ; fourth gear * 1000
gear5 = scalar, U16, 81, ":1", 0.00100, 0.00000, 0, 7, 3 ; first gear * 1000
gear6 = scalar, U16, 83, ":1", 0.00100, 0.00000, 0, 7, 3 ; second gear * 1000
gear7 = scalar, U16, 85, ":1", 0.00100, 0.00000, 0, 7, 3 ; third gear * 1000
gear8 = scalar, U16, 87, ":1", 0.00100, 0.00000, 0, 7, 3 ; fourth gear * 1000
CAN_enabled = bits, U08, 89, [0:0], "CANbus disabled", "CANbus enabled"
menuDisplay = bits, U08, 90, [0:1], "Show All Menus", "Tuning Menus Only", "Configuration Menus Only", "INVALID"
#if CELSIUS
noTCC_temp = scalar, S16, 91, "ºC", 0.05556, 0.00000, 0, 100, 1 ; no TCC lock below this temp (to aid warm-up)
#else
noTCC_temp = scalar, S16, 91, "ºF", 0.10000, 0.00000, 0, 200, 1 ; no TCC lock below this temp (to aid warm-up)
#endif
#if LOAD_KPA
noTCC_load = scalar, U16, 93, "kPa", 0.10000, 0.00000, 0, 255, 1 ;
#else
noTCC_load = scalar, U16, 93, "%", 0.10000, 0.00000, 0, 100, 1 ;
#endif
LUF_taper = scalar, U08, 95, "sec", 0.10000, 0.00000, 0, 255, 1 ; Lock Up feel taper time (sec x10)
PulseTol = scalar, U08, 96, "%", 1.00000, 0.00000, 0, 100, 0 ; % tolerance for next input pulse
axle_ratio = scalar, U16, 97, ":1", 0.00100, 0.00000, 1, 10, 3 ; rear axle ratio * 1000
#if SI_LENGTHS
tire_diam = scalar, U16, 99, "cm", 0.02540, 0.00000, 15, 180, 2 ; tire diameter (inches*100)
#else
tire_diam = scalar, U16, 99, "inches", 0.01000, 0.00000, 5, 70, 2 ; tire diameter (centimetres*100)
#endif
under_rev_limit = scalar, U16, 101, "rpm", 1.00000, 0.00000, 0, 10000, 0 ; minimum resulting rpm for an upshift
trans_type = scalar, U08, 103, "", 1.00000, 0.00000, 0, 1, 0 ; transmission type, 0=4L60E, 1=4R70W
shift_mode = bits, U08, 104, [0:1], "INVALID", "VSS + Load (Sequential)", "VSS + Load (Jump to Target Gear)", "Tach + Load Shifting"
LPshiftOptn = bits, U08, 105, [0:1], "Use table", "Use OFF value", "Use shift limits", "INVALID"
error_check = bits, U08, 106, [0:0], "Ignore errors", "Report errors"
rpm_limit = scalar, U16, 107, "rpm", 1.00000, 0.00000, 0, 10000, 0 ; Max engine rpm for downshift
pwmper4 = scalar, U08, 109, "", 1.00000, 0.00000, 5, 200, 0 ; PWM period4 (usec) for speedo output
num_teeth = scalar, U08, 110, "", 1.00000, 0.00000, 1, 255, 0 ; input VSS pulses (teeth/rev)
TCC_PWM_Pd = scalar, U16, 111, "msec", 0.00100, 0.00000, 0.427, 10.888, 3 ; TCC PWM period (usec) - keep between 0.427 and 10.888 msec (92 Hertz and 2340 Hertz)
PC_PWM_Pd = scalar, U16, 113, "msec", 0.00100, 0.00000, 0.427, 10.888, 3 ; PC PWM period (usec) - keep between 0.427 and 10.888 msec (92 Hertz and 2340 Hertz)
OUT3_PWM_Pd = scalar, U16, 115, "msec", 0.00100, 0.00000, 4, 21, 3 ; Sol32 PWM period (usec)
BatFac = scalar, U08, 117, "%/V", -0.10000 0.00000, -25.5, 0, 1 ; Battery PWM correction factor (%x10 per volt)
ms2canID = scalar, U08, 118, "", 1.00000, 0.00000, 0, 16, 0 ; MS-II 'master' CAN ID
ms2varBLK = scalar, U08, 119, "", 1.00000, 0.00000, 0, 16, 0 ; outpc block on MS-II
PCneutral = scalar, U08, 120, "%", -1.00000, -100.00, 40, 100, 0 ; pressure in neutral
baud = scalar, U32, 121 "", 1.00000, 0.00000, 115200, 115200, 0 ; baud rate
board_type = scalar, U08, 125, "", 1.00000, 0.00000, 0, 255, 0 ; board type (1-255) of the board;
trans_can_id = scalar, U08, 126, "", 1.00000, 0.00000, 0, 255, 0 ; can_id (address) of this board (< MAX_CANBOARDS)
can_var_rate = scalar, U16, 127, "", 1.00000, 0.00000, 20, 1000, 0 ; rate at which to get CAN variables
auto_table1 = array, U08, 129, [16x9], "gear", 1.00000, 0.00000, 1, 8, 0 ; The target gear for each LOAD & MPH
pc_table = array, U08, 273, [16x9], "%", -1.00000, -100.00, 40, 100, 0 ; The PWM% for PC solenoid by load and mph
#if CELSIUS
trans_temp_limit = scalar, U16, 417, "ºC", 0.05556, 32.0000, 0, 200, 1 ; Transmission temperature limit
#else
trans_temp_limit = scalar, U16, 417, "ºF", 0.10000, 0.00000, 0, 300, 1 ; Transmission temperature limit
#endif
#if SI_LENGTHS
pulse_mile = scalar, U16, 419, "/km", 0.62139, 0.00000, 150, 30000, 0 ; Pulse per mile for speedo output
#else
pulse_mile = scalar, U16, 419, "", 1.00000, 0.00000, 100, 20000, 0 ; Pulse per mile for speedo output
#endif
rpm_check = bits, U08, 421, [0:0], "Do Not Enforce RPM Checks", "Enforce RPM Checks"
#if SI_LENGTHS
gear_hyst = scalar, U08, 422, "kph", 0.16093, 0.00000, 0, 25, 1 ; Gear Hysteresis, in kph x10
#else
gear_hyst = scalar, U08, 422, "mph", 0.10000, 0.00000, 0, 15, 1 ; Gear Hysteresis, in mph x10
#endif
; TCC_follow_sp1 = scalar, U08, 423, "", 1.0000, 0.00000, 0, 255, 0 ; Unused
TCC_follow_sp11 = bits, U08, 423, [0:0], "Don't apply SP1 with TCC in 1st", "Apply SP1 with TCC in 1st"
TCC_follow_sp12 = bits, U08, 423, [1:1], "Don't apply SP1 with TCC in 2nd", "Apply SP1 with TCC in 2nd"
TCC_follow_sp13 = bits, U08, 423, [2:2], "Don't apply SP1 with TCC in 3rd", "Apply SP1 with TCC in 3rd"
TCC_follow_sp14 = bits, U08, 423, [3:3], "Don't apply SP1 with TCC in 4th", "Apply SP1 with TCC in 4th"
TCC_follow_sp15 = bits, U08, 423, [4:4], "Don't apply SP1 with TCC in 5th", "Apply SP1 with TCC in 5th"
TCC_follow_sp16 = bits, U08, 423, [5:5], "Don't apply SP1 with TCC in 6th", "Apply SP1 with TCC in 6th"
TCC_follow_sp17 = bits, U08, 423, [6:6], "Don't apply SP1 with TCC in 7th", "Apply SP1 with TCC in 7th"
TCC_follow_sp18 = bits, U08, 423, [7:7], "Don't apply SP1 with TCC in 8th", "Apply SP1 with TCC in 8th"
max_shift_press = scalar, U08, 424, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while shifting
pressure_delay = scalar, U16, 425, "msec", 8.00000, 0.00000, 10, 500, 0 ; Line pressure delay for shifting
; TCC_follow_sp2 = scalar, U08, 427, "", 1.0000, 0.00000, 0, 255, 0 ; Unused
TCC_follow_sp21 = bits, U08, 427, [0:0], "Don't apply SP2 with TCC in 1st", "Apply SP2 with TCC in 1st"
TCC_follow_sp22 = bits, U08, 427, [1:1], "Don't apply SP2 with TCC in 2nd", "Apply SP2 with TCC in 2nd"
TCC_follow_sp23 = bits, U08, 427, [2:2], "Don't apply SP2 with TCC in 3rd", "Apply SP2 with TCC in 3rd"
TCC_follow_sp24 = bits, U08, 427, [3:3], "Don't apply SP2 with TCC in 4th", "Apply SP2 with TCC in 4th"
TCC_follow_sp25 = bits, U08, 427, [4:4], "Don't apply SP2 with TCC in 5th", "Apply SP2 with TCC in 5th"
TCC_follow_sp26 = bits, U08, 427, [5:5], "Don't apply SP2 with TCC in 6th", "Apply SP2 with TCC in 6th"
TCC_follow_sp27 = bits, U08, 427, [6:6], "Don't apply SP2 with TCC in 7th", "Apply SP2 with TCC in 7th"
TCC_follow_sp28 = bits, U08, 427, [7:7], "Don't apply SP2 with TCC in 8th", "Apply SP2 with TCC in 8th"
brake_adj = bits, U08, 428, [0:0], "Usual rate w/ braking", "Slow load smooth rate w/ braking"
decel_adj = bits, U08, 428, [1:1], "No decel load limiting", "Limit max. load w/ decel"
rise_adj = bits, U08, 428, [2:2], "Usual rate w/ increasing load", "Rise quickly w/ increasing load"
tps_adj = bits, U08, 428, [3:3], "Usual rate w/ high TPS", "Rise quickly w/ high TPS values"
; notused33 = scalar, U08, 428, "msec", 8.00000, 0.00000, 10, 1000, 0 ; Unused
LOADshortcount = scalar, U16, 429, "", 1.00000, 0.00000, 1, 8000, 0 ; LOAD short term filtering factor
LOADlongcount = scalar, U16, 431, "", 1.00000, 0.00000, 1, 600, 0 ; LOAD long term filtering factor
#if LOAD_KPA
LOADmult = scalar, S16, 433, "kpa/volt", 0.01000, 0.00000, -300, 300, 2 ; non-CAN LOAD multiplier (slope)
LOADzero = scalar, S16, 435 "kpa @ 0Volt", 0.01000, 0.00000, -300, 300, 2 ; non-CAN LOAD at 0 volts (y-intercept)
#else
LOADmult = scalar, S16, 433, "%/volt", 0.01000, 0.00000, -300, 300, 2 ; non-CAN LOAD multiplier (slope)
LOADzero = scalar, S16, 435, "% @ 0Volt", 0.01000, 0.00000, -300, 300, 2 ; non-CAN LOAD at 0 volts (y-intercept)
#endif
#if SI_LENGTHS
minTCCspeed = scalar, U16, 437, "kph", 0.16093, 0.00000, 30, 450, 1 ; minimum TCC lock-up speed (metric)
#else
minTCCspeed = scalar, U16, 437, "mph", 0.10000, 0.00000, 20, 300, 1 ; minimum TCC lock-up speed (imperial)
#endif
PCtemp = array, S08, 439, [10], "%", -0.10000, 0.00000, -12.7, 12.7, 1 ; line pressure adjustment for temp (negative so higher values lower PC DC% = higher pressure)
; Output1 = scalar, U16, 449, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for solA
Out11 = bits, U16, 449, [0:0], "off", "ON";
Out12 = bits, U16, 449, [1:1], "off", "ON";
Out13 = bits, U16, 449, [2:2], "off", "ON";
Out14 = bits, U16, 449, [3:3], "off", "ON";
Out15 = bits, U16, 449, [4:4], "off", "ON";
Out16 = bits, U16, 449, [5:5], "off", "ON";
Out17 = bits, U16, 449, [6:6], "off", "ON";
Out18 = bits, U16, 449, [7:7], "off", "ON";
Out19 = bits, U16, 449, [8:8], "off", "ON";
Out110 = bits, U16, 449, [9:9], "off", "ON";
Out111 = bits, U16, 449, [10:10], "off", "ON";
Out112 = bits, U16, 449, [11:11], "off", "ON";
Out113 = bits, U16, 449, [12:12], "off", "ON";
Out114 = bits, U16, 449, [13:13], "off", "ON";
Out115 = bits, U16, 449, [14:14], "off", "ON";
Out116 = bits, U16, 449, [15:15], "off", "ON";
; Output2 = scalar, U16, 451, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for solB
Out21 = bits, U16, 451, [0:0], "off", "ON";
Out22 = bits, U16, 451, [1:1], "off", "ON";
Out23 = bits, U16, 451, [2:2], "off", "ON";
Out24 = bits, U16, 451, [3:3], "off", "ON";
Out25 = bits, U16, 451, [4:4], "off", "ON";
Out26 = bits, U16, 451, [5:5], "off", "ON";
Out27 = bits, U16, 451, [6:6], "off", "ON";
Out28 = bits, U16, 451, [7:7], "off", "ON";
Out29 = bits, U16, 451, [8:8], "off", "ON";
Out210 = bits, U16, 451, [9:9], "off", "ON";
Out211 = bits, U16, 451, [10:10], "off", "ON";
Out212 = bits, U16, 451, [11:11], "off", "ON";
Out213 = bits, U16, 451, [12:12], "off", "ON";
Out214 = bits, U16, 451, [13:13], "off", "ON";
Out215 = bits, U16, 451, [14:14], "off", "ON";
Out216 = bits, U16, 451, [15:15], "off", "ON";
; Output3 = scalar, U16, 453, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for 3/2sol
Out31 = bits, U16, 453, [0:0], "off", "ON";
Out32 = bits, U16, 453, [1:1], "off", "ON";
Out33 = bits, U16, 453, [2:2], "off", "ON";
Out34 = bits, U16, 453, [3:3], "off", "ON";
Out35 = bits, U16, 453, [4:4], "off", "ON";
Out36 = bits, U16, 453, [5:5], "off", "ON";
Out37 = bits, U16, 453, [6:6], "off", "ON";
Out38 = bits, U16, 453, [7:7], "off", "ON";
Out39 = bits, U16, 453, [8:8], "off", "ON";
Out310 = bits, U16, 453, [9:9], "off", "ON";
Out311 = bits, U16, 453, [10:10], "off", "ON";
Out312 = bits, U16, 453, [11:11], "off", "ON";
Out313 = bits, U16, 453, [12:12], "off", "ON";
Out314 = bits, U16, 453, [13:13], "off", "ON";
Out315 = bits, U16, 453, [14:14], "off", "ON";
Out316 = bits, U16, 453, [15:15], "off", "ON";
; Output4 = scalar, U16, 455, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for 3/2sol
Out41 = bits, U16, 455, [0:0], "off", "ON";
Out42 = bits, U16, 455, [1:1], "off", "ON";
Out43 = bits, U16, 455, [2:2], "off", "ON";
Out44 = bits, U16, 455, [3:3], "off", "ON";
Out45 = bits, U16, 455, [4:4], "off", "ON";
Out46 = bits, U16, 455, [5:5], "off", "ON";
Out47 = bits, U16, 455, [6:6], "off", "ON";
Out48 = bits, U16, 455, [7:7], "off", "ON";
Out49 = bits, U16, 455, [8:8], "off", "ON";
Out410 = bits, U16, 455, [9:9], "off", "ON";
Out411 = bits, U16, 455, [10:10], "off", "ON";
Out412 = bits, U16, 455, [11:11], "off", "ON";
Out413 = bits, U16, 455, [12:12], "off", "ON";
Out414 = bits, U16, 455, [13:13], "off", "ON";
Out415 = bits, U16, 455, [14:14], "off", "ON";
Out416 = bits, U16, 455, [15:15], "off", "ON";
out3dc = scalar, U08, 457, "%", 1.00000, 0.00000, 0, 100, 0 ; output3 duty cycle percent when on
#if SI_LENGTHS
sp1speed = scalar, U16, 458, "kph", 0.16093, 0.00000, 0, 3000, 1 ; spare port 1 speed threshold
sp2speed = scalar, U16, 460, "kph", 0.16093, 0.00000, 0, 3000, 1 ; spare port 1 speed threshold
sp1speed_hyst = scalar, U16, 462, "kph", 0.16093, 0.00000, 0, 800, 1 ; spare port 1 speed threshold
sp2speed_hyst = scalar, U16, 464, "kph", 0.16093, 0.00000, 0, 800, 1 ; spare port 1 speed threshold
#else
sp1speed = scalar, U16, 458, "mph", 0.10000, 0.00000, 0, 2500, 1 ; spare port 1 speed threshold
sp2speed = scalar, U16, 460, "mph", 0.10000, 0.00000, 0, 2500, 1 ; spare port 1 speed threshold
sp1speed_hyst = scalar, U16, 462, "mph", 0.10000, 0.00000, 0, 500, 1 ; spare port 1 speed threshold
sp2speed_hyst = scalar, U16, 464, "mph", 0.10000, 0.00000, 0, 500, 1 ; spare port 1 speed threshold
#endif
sp1speed_cond = bits, U08, 466, [0:1], "No Condition", ">= Greater Than or Equal", "<= Less Than or Equal", "Equal"
sp2speed_cond = bits, U08, 467, [0:1], "No Condition", ">= Greater Than or Equal", "<= Less Than or Equal", "Equal"
sp1rpm = scalar, U16, 468, "rpm", 1.00000, 0.00000, 0, 12000, 0 ; spare port 1 rpm threshold
sp2rpm = scalar, U16, 470, "rpm", 1.00000, 0.00000, 0, 12000, 0 ; spare port 1 rpm threshold
sp1rpm_hyst = scalar, U16, 472, "rpm", 1.00000, 0.00000, 0, 2000, 0 ; spare port 1 rpm threshold
sp2rpm_hyst = scalar, U16, 474, "rpm", 1.00000, 0.00000, 0, 2000, 0 ; spare port 1 rpm threshold
sp1rpm_cond = bits, U08, 476, [0:1], "No Condition", ">= Greater Than or Equal", "<= Less Than or Equal", "Equal"
sp2rpm_cond = bits, U08, 477, [0:1], "No Condition", ">= Greater Than or Equal", "<= Less Than or Equal", "Equal"
#if LOAD_KPA
sp1load = scalar, U16, 478, "kPa", 0.10000, 0.00000, 0, 4000, 1 ; spare port 1 load threshold
sp2load = scalar, U16, 480, "kPa", 0.10000, 0.00000, 0, 4000, 1 ; spare port 1 load threshold
sp1load_hyst = scalar, U16, 482, "kPa", 0.10000, 0.00000, 0, 500, 1 ; spare port 1 load threshold
sp2load_hyst = scalar, U16, 484, "kPa", 0.10000, 0.00000, 0, 500, 1 ; spare port 1 load threshold
#else
sp1load = scalar, U16, 478, "%", 0.10000, 0.00000, 0, 4000, 1 ; spare port 1 load threshold
sp2load = scalar, U16, 480, "%", 0.10000, 0.00000, 0, 4000, 1 ; spare port 1 load threshold
sp1load_hyst = scalar, U16, 482, "%", 0.10000, 0.00000, 0, 500, 1 ; spare port 1 load threshold
sp2load_hyst = scalar, U16, 484, "%", 0.10000, 0.00000, 0, 500, 1 ; spare port 1 load threshold
#endif
sp1load_cond = bits, U08, 486, [0:1], "No Condition", ">= Greater Than or Equal", "<= Less Than or Equal", "Equal"
sp2load_cond = bits, U08, 487, [0:1], "No Condition", ">= Greater Than or Equal", "<= Less Than or Equal", ""
sp1gear = scalar, S08, 488, "", 1.00000, 0.00000, 0, 8, 0 ; spare port 1 gear threshold
sp2gear = scalar, S08, 489, "", 1.00000, 0.00000, 0, 8, 0 ; spare port 1 gear threshold
sp1gear_cond = bits, U08, 490, [0:1], "No Condition", ">= Greater Than or Equal", "<= Less Than or Equal", "Equal"
sp2gear_cond = bits, U08, 491, [0:1], "No Condition", ">= Greater Than or Equal", "<= Less Than or Equal", "Equal"
; Input1ptrn = scalar, U16, 492, "", 1.00000, 0.00000, 0, 127, 0 ; input pattern for swA
In11 = bits, U16, 492, [0:0], "low", "HIGH"
In12 = bits, U16, 492, [1:1], "low", "HIGH"
In13 = bits, U16, 492, [2:2], "low", "HIGH"
In14 = bits, U16, 492, [3:3], "low", "HIGH"
In15 = bits, U16, 492, [4:4], "low", "HIGH"
In16 = bits, U16, 492, [5:5], "low", "HIGH"
In17 = bits, U16, 492, [6:6], "low", "HIGH"
In18 = bits, U16, 492, [7:7], "low", "HIGH"
In19 = bits, U16, 492, [8:8], "low", "HIGH"
In110 = bits, U16, 492, [9:9], "low", "HIGH"
In111 = bits, U16, 492, [10:10], "low", "HIGH"
In112 = bits, U16, 492, [11:11], "low", "HIGH"
In113 = bits, U16, 492, [12:12], "low", "HIGH"
In114 = bits, U16, 492, [13:13], "low", "HIGH"
In115 = bits, U16, 492, [14:14], "low", "HIGH"
In116 = bits, U16, 492, [15:15], "low", "HIGH"
; Input2ptrn = scalar, U16, 494, "", 1.00000, 0.00000, 0, 127, 0 ; input pattern for swB
In21 = bits, U16, 494, [0:0], "low", "HIGH"
In22 = bits, U16, 494, [1:1], "low", "HIGH"
In23 = bits, U16, 494, [2:2], "low", "HIGH"
In24 = bits, U16, 494, [3:3], "low", "HIGH"
In25 = bits, U16, 494, [4:4], "low", "HIGH"
In26 = bits, U16, 494, [5:5], "low", "HIGH"
In27 = bits, U16, 494, [6:6], "low", "HIGH"
In28 = bits, U16, 494, [7:7], "low", "HIGH"
In29 = bits, U16, 494, [8:8], "low", "HIGH"
In210 = bits, U16, 494, [9:9], "low", "HIGH"
In211 = bits, U16, 494, [10:10], "low", "HIGH"
In212 = bits, U16, 494, [11:11], "low", "HIGH"
In213 = bits, U16, 494, [12:12], "low", "HIGH"
In214 = bits, U16, 494, [13:13], "low", "HIGH"
In215 = bits, U16, 494, [14:14], "low", "HIGH"
In216 = bits, U16, 494, [15:15], "low", "HIGH"
; Input3ptrn = scalar, U16, 496, "", 1.00000, 0.00000, 0, 127, 0 ; input pattern for swC
In31 = bits, U16, 496, [0:0], "low", "HIGH"
In32 = bits, U16, 496, [1:1], "low", "HIGH"
In33 = bits, U16, 496, [2:2], "low", "HIGH"
In34 = bits, U16, 496, [3:3], "low", "HIGH"
In35 = bits, U16, 496, [4:4], "low", "HIGH"
In36 = bits, U16, 496, [5:5], "low", "HIGH"
In37 = bits, U16, 496, [6:6], "low", "HIGH"
In38 = bits, U16, 496, [7:7], "low", "HIGH"
In39 = bits, U16, 496, [8:8], "low", "HIGH"
In310 = bits, U16, 496, [9:9], "low", "HIGH"
In311 = bits, U16, 496, [10:10], "low", "HIGH"
In312 = bits, U16, 496, [11:11], "low", "HIGH"
In313 = bits, U16, 496, [12:12], "low", "HIGH"
In314 = bits, U16, 496, [13:13], "low", "HIGH"
In315 = bits, U16, 496, [14:14], "low", "HIGH"
In316 = bits, U16, 496, [15:15], "low", "HIGH"
; Input4ptrn = scalar, U16, 498, "", 1.00000, 0.00000, 0, 127, 0 ; input pattern for swC
In41 = bits, U16, 498, [0:0], "low", "HIGH"
In42 = bits, U16, 498, [1:1], "low", "HIGH"
In43 = bits, U16, 498, [2:2], "low", "HIGH"
In44 = bits, U16, 498, [3:3], "low", "HIGH"
In45 = bits, U16, 498, [4:4], "low", "HIGH"
In46 = bits, U16, 498, [5:5], "low", "HIGH"
In47 = bits, U16, 498, [6:6], "low", "HIGH"
In48 = bits, U16, 498, [7:7], "low", "HIGH"
In49 = bits, U16, 498, [8:8], "low", "HIGH"
In410 = bits, U16, 498, [9:9], "low", "HIGH"
In411 = bits, U16, 498, [10:10], "low", "HIGH"
In412 = bits, U16, 498, [11:11], "low", "HIGH"
In413 = bits, U16, 498, [12:12], "low", "HIGH"
In414 = bits, U16, 498, [13:13], "low", "HIGH"
In415 = bits, U16, 498, [14:14], "low", "HIGH"
In416 = bits, U16, 498, [15:15], "low", "HIGH"
forceAUTOoptn = bits, U08, 500, [0:2], "INVALID", "In PNR OR under OR over rev", "Only if over rev", "Only if under rev", "Only in PNR", "Only if under OR over rev", "INVALID", "INVALID"
mlever_vP = scalar, U16, 501, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for P (converted from ADC count)
mlever_vN = scalar, U16, 503, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for R (converted from ADC count)
mlever_vR = scalar, U16, 505, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for N (converted from ADC count)
mlever_v1 = scalar, U16, 507, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for 1st (converted from ADC count)
mlever_v2 = scalar, U16, 509, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for 2nd (converted from ADC count)
mlever_v3 = scalar, U16, 511, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for 3rd (converted from ADC count)
mlever_v4 = scalar, U16, 513, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for 4th (converted from ADC count)
mlever_v5 = scalar, U16, 515, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for 5th (converted from ADC count)
mlever_v6 = scalar, U16, 517, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for 6th (converted from ADC count)
mlever_v7 = scalar, U16, 519, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for 7th (converted from ADC count)
mlever_v8 = scalar, U16, 521, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for 8th (converted from ADC count)
In4_OD = bits, U08, 523, [0:0], "Gear lever for 4th (OD)", "OD on swB (on GPI2)"
SlipConditions = bits, U08, 524, [0:2], "No slip adjustments", "Adjust spark only", "Adjust spark AND line pressure", "Adjust spark THEN line pressure", "Adjust line pressure only", "Adjust line pressure then spark", "INVALID", "INVALID"
; clutch1up = scalar, U08, 525, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for upshift spare port 1 in clutch mode
clutch11u = bits, U08, 525, [0:0], "off", "ON" ; 1-2
clutch12u = bits, U08, 525, [1:1], "off", "ON" ; 2-3
clutch13u = bits, U08, 525, [2:2], "off", "ON" ; 3-4
clutch14u = bits, U08, 525, [3:3], "off", "ON" ; 4-5
clutch15u = bits, U08, 525, [4:4], "off", "ON" ; 5-6
clutch16u = bits, U08, 525, [5:5], "off", "ON" ; 6-7
clutch17u = bits, U08, 525, [6:6], "off", "ON" ; 7-8
clutch18u = bits, U08, 525, [7:7], "off", "ON" ; not used
; clutch2up = scalar, U08, 526, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for upshift spare port 2 in clutch mode
clutch21u = bits, U08, 526, [0:0], "off", "ON" ; 1-2
clutch22u = bits, U08, 526, [1:1], "off", "ON" ; 2-3
clutch23u = bits, U08, 526, [2:2], "off", "ON" ; 3-4
clutch24u = bits, U08, 526, [3:3], "off", "ON" ; 4-5
clutch25u = bits, U08, 526, [4:4], "off", "ON" ; 5-6
clutch26u = bits, U08, 526, [5:5], "off", "ON" ; 6-7
clutch27u = bits, U08, 526, [6:6], "off", "ON" ; 7-8
clutch28u = bits, U08, 526, [7:7], "off", "ON" ; not used
; clutch1dwn = scalar, U08, 527, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for downshift spare port 1 in clutch mode
clutch11d = bits, U08, 527, [0:0], "off", "ON" ; 2-1
clutch12d = bits, U08, 527, [1:1], "off", "ON" ; 3-2
clutch13d = bits, U08, 527, [2:2], "off", "ON" ; 4-3
clutch14d = bits, U08, 527, [3:3], "off", "ON" ; 5-4
clutch15d = bits, U08, 527, [4:4], "off", "ON" ; 6-5
clutch16d = bits, U08, 527, [5:5], "off", "ON" ; 7-6
clutch17d = bits, U08, 527, [6:6], "off", "ON" ; 8-7
clutch18d = bits, U08, 527, [7:7], "off", "ON" ; not used
; clutch2dwn = scalar, U08, 528, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for downshift spare port 2 in clutch mode
clutch21d = bits, U08, 528, [0:0], "off", "ON" ; 2-1
clutch22d = bits, U08, 528, [1:1], "off", "ON" ; 3-2
clutch23d = bits, U08, 528, [2:2], "off", "ON" ; 4-3
clutch24d = bits, U08, 528, [3:3], "off", "ON" ; 5-4
clutch25d = bits, U08, 528, [4:4], "off", "ON" ; 6-5
clutch26d = bits, U08, 528, [5:5], "off", "ON" ; 7-6
clutch27d = bits, U08, 528, [6:6], "off", "ON" ; 8-7
clutch28d = bits, U08, 528, [7:7], "off", "ON" ; not used
FWD_factor = scalar, U16, 529, ":1", 0.00100, 0.00000, 0.100, 6.000, 3 ; Speedo correction factor in 4WD (PE1 grounded)
upshift_retard = scalar, S16, 531, "º", -0.10, 0.00000, 0.0, 25.5, 1 ; Upshift timing retard
dwnshift_retard = scalar, S16, 533, "º", -0.10, 0.00000, 0.0, 25.5, 1 ; Downshift timing retard
gear2_retard = scalar, S16, 535, "º", -0.10, 0.00000, 0.0, 25.5, 1 ; 2nd gear timing retard
gear3_retard = scalar, S16, 537, "º", -0.10, 0.00000, 0.0, 25.5, 1 ; 3rd gear timing retard
gear4_retard = scalar, S16, 539, "º", -0.10, 0.00000, 0.0, 25.5, 1 ; 4th gear timing retard
#if LOAD_KPA
Tretard_load = scalar, U16, 541, "kPa", 0.10, 0.00000, 0.0, 250.0, 1 ; timing retard only above load (kpax10)
#else
Tretard_load = scalar, U16, 541, "%", 0.10, 0.00000, 0.0, 250.0, 1 ; timing retard only above load (%x10)
#endif
LUF_off = scalar, U08, 543, "%", 1.00, 0.00000, 0.0, 100.0, 0 ; Lock-Up feel solenoid off state (%)
#if LOAD_KPA
LUF_loLoad = scalar, U16, 544, "kPa", 0.10, 0.00000, 0.0, 255.0, 1 ; Lock Up Feel solenoid low load
LUF_hiLoad = scalar, U16, 546, "kPa", 0.10, 0.00000, 0.0, 255.0, 1 ; Lock Up Feel solenoid high load
#else
LUF_loLoad = scalar, U16, 544, "%", 0.10, 0.00000, 0.0, 100.0, 1 ; Lock Up Feel solenoid low load
LUF_hiLoad = scalar, U16, 546, "%", 0.10, 0.00000, 0.0, 100.0, 1 ; Lock Up Feel solenoid high load
#endif
LUF_loPWM = scalar, U08, 548, "%", 1.00, 0.00000, 0.0, 100.0, 0 ; Lock-Up feel solenoid PWM% at low load (%)
LUF_hiPWM = scalar, U08, 549, "%", 1.00, 0.00000, 0.0, 100.0, 0 ; Lock-up feel solenoid PWM% at high load (%)
digital_threshold = scalar, U16, 550, "volts", 0.00489, 0.00000, 0.0, 5.000, 3 ; digital threshold for ADC count to on/off
shftr_accum = scalar, U16, 552, "", 0.10, 0.00000, 10.0, 1000, 1 ; shifter accumulator - button sensitivity (lower is more sensitive)
#if SI_LENGTHS
hyst_enable_speed = scalar, U16, 554, "kph", 0.16093, 0.00000, 0.0, 15.00, 1 ; no shift hysteresis below this speed
#else
hyst_enable_speed = scalar, U16, 554, "mph", 0.10, 0.00000, 0.0, 15.00, 1 ; no shift hysteresis below this speed
#endif
vss_mask = scalar, U08, 556, "%", 1.00, 0.00000, 0.0 200.00, 0 ; VSS interrupt mask (%)
; stdin_cfg = scalar, U08, 557, "", 1.00, 0.00000, 0.0, 255.00, 0 ; configure standard inputs (temp and 2/4WD)
FWD_cfg = bits, U08, 557, [0:0], "Log only", "Switch shift tables/4th lever input"
TMP_cfg = bits, U08, 557, [1:1], "Log only", "Use as trans temperature"
TMP_adc = bits, U08, 557, [2:2], "Log ADC count", "Log temperature"
In4_cfg = bits, U08, 557, [3:3], "Speedo Switch/Logging", "Additional Lever Input"
LUF_on = scalar, U08, 558, "%", 1.00, 0.00000, 0.0, 100.0, 0 ; Lock-Up feel solenoid on state (%) - imperial
#if SI_LENGTHS
min_speed = scalar, U08, 559, "kph", 0.16093, 0.00000, 0.0, 10.00, 1 ; minimum speed for VSS filtering
#else
min_speed = scalar, U08, 559, "mph", 0.10, 0.00000, 0.0, 15.00, 1 ; minimum speed for VSS filtering
#endif
vss_skip_max = scalar, U16, 560, "", 1.00, 0.0000, 50.0, 50000.00, 0 ;
line_units = bits, U08, 562, [0:1], "Use pressure table","INVALID","Use as Engine Brake Input","Use 2-Point Calcs"
inj_flow = scalar, U16, 563, "pph", 0.01, 0.0000, 0.0, 200.00, 2 ; injector flow rate (lb/hr)
open_time = scalar, U08, 565, "msec", 0.01, 0.0000, 0.0, 2.55, 2 ; injector open time
fuel_density = scalar, U16, 566, "lb/gal", 0.001, 0.0000, 0.0, 32.000, 3 ; fuel density in pounds per gallon
nSquirts = scalar, U08, 568, "", 1.00, 0.0000, 1.0, 16.000, 0 ; number of squirts (divide by 2 if alternating)
refresh_int = scalar, U16, 569, "msec", 1.00, 0.0000, 10, 20000, 0 ; the interval time (msec) between dithers for output1 and output2
refresh_dur = scalar, U16, 571, "msec", 1.00, 0.0000, 0, 10000, 0 ; the 100% duty cycle time for output1 and output2
dither_intPC = scalar, U16, 573, "msec", 1.00, 0.0000, 10, 20000, 0 ; the interval time (msec) between dithers for the pressure control output
dither_durPC = scalar, U16, 575, "msec", 1.00, 0.0000, 0, 10000, 0 ; the 100% duty cycle time for the pressure control output
out1_pwm_off = scalar, U08, 577, "msec", 0.128, 0.0000, 0, 32.64, 3 ; output1 and output2 off duration (in 0.128 clock tics)
out1_pwm_on = scalar, U08, 578, "msec", 0.128, 0.0000, 0.128, 32.64, 3 ; output1 and output2 off duration (in 0.128 clock tics)
brake_ON_polarity = bits, U08, 579, [0:0], "Low Volts is Brake ON", "High Volts (12V) is Brake ON"
WOT_tps_threshold = scalar, U16, 580, "%", 0.0976, 0.0000, 50, 100, 1 ; TPS from MS-II over CAN
iss_mask = scalar, U08, 582, "%", 1.00, 0.00000, 0.0 200.00, 0 ; ISS interrupt mask (%)
ic2_usage = bits, U08, 583, [0:1], "Disable", "Input Shaft Speed", "Tach Input", "INVALID"
ic2_edge = bits, U08, 583, [7:7], "Rising Edge", "Falling Edge"
iss_divider = scalar, U08, 584, "teeth/rev", 1.00, 0.0000, 1, 255, 0 ; ISS/tach divider (number of teeth/rev)
activate_xrate = scalar, U08, 585, "", 1.00, 0.0000, 0, 255, 0 ; 8 bits, one for each CAN outmsg. When bit m set to 1, message m will be auto transmitted at rate outmsg[m].xrate.
num_gears = scalar, U08, 586, "", 1.00, 0.0000, 1, 8, 0 ; number of forward gears
gear5_retard = scalar, S16, 587, "º", -0.10, 0.00000, 0.0, 25.5, 1 ; 5th gear timing retard
gear6_retard = scalar, S16, 589, "º", -0.10, 0.00000, 0.0, 25.5, 1 ; 6th gear timing retard
gear7_retard = scalar, S16, 591, "º", -0.10, 0.00000, 0.0, 25.5, 1 ; 7th gear timing retard
gear8_retard = scalar, S16, 593, "º", -0.10, 0.00000, 0.0, 25.5, 1 ; 8th gear timing retard
Adj_blk = scalar, U08, 595, "", 1.00, 0.00000, 0 16, 0 ; Fuel/Spark/Idle block on MS-II
Adj_varoffset = scalar, U16, 596, "", 1.00, 0.00000, 0 1023, 0 ; Fuel/Spark/Idle offset on MS-II
LED11 = bits, U08, 598, [0:0], "off", "ON"
LED12 = bits, U08, 598, [1:1], "off", "ON"
LED13 = bits, U08, 598, [2:2], "off", "ON"
LED14 = bits, U08, 598, [3:3], "off", "ON"
LED15 = bits, U08, 598, [4:4], "off", "ON"
LED16 = bits, U08, 598, [5:5], "off", "ON"
LED17 = bits, U08, 598, [6:6], "off", "ON"
LED18 = bits, U08, 598, [7:7], "off", "ON"
LED21 = bits, U08, 599, [0:0], "off", "ON"
LED22 = bits, U08, 599, [1:1], "off", "ON"
LED23 = bits, U08, 599, [2:2], "off", "ON"
LED24 = bits, U08, 599, [3:3], "off", "ON"
LED25 = bits, U08, 599, [4:4], "off", "ON"
LED26 = bits, U08, 599, [5:5], "off", "ON"
LED27 = bits, U08, 599, [6:6], "off", "ON"
LED28 = bits, U08, 599, [7:7], "off", "ON"
LED31 = bits, U08, 600, [0:0], "off", "ON"
LED32 = bits, U08, 600, [1:1], "off", "ON"
LED33 = bits, U08, 600, [2:2], "off", "ON"
LED34 = bits, U08, 600, [3:3], "off", "ON"
LED35 = bits, U08, 600, [4:4], "off", "ON"
LED36 = bits, U08, 600, [5:5], "off", "ON"
LED37 = bits, U08, 600, [6:6], "off", "ON"
LED38 = bits, U08, 600, [7:7], "off", "ON"
LED41 = bits, U08, 601, [0:0], "off", "ON"
LED42 = bits, U08, 601, [1:1], "off", "ON"
LED43 = bits, U08, 601, [2:2], "off", "ON"
LED44 = bits, U08, 601, [3:3], "off", "ON"
LED45 = bits, U08, 601, [4:4], "off", "ON"
LED46 = bits, U08, 601, [5:5], "off", "ON"
LED47 = bits, U08, 601, [6:6], "off", "ON"
LED48 = bits, U08, 601, [7:7], "off", "ON"
LEDN1 = bits, U08, 602, [0:0], "off", "ON"
LEDN2 = bits, U08, 602, [1:1], "off", "ON"
LEDN3 = bits, U08, 602, [2:2], "off", "ON"
LEDN4 = bits, U08, 602, [3:3], "off", "ON"
LEDN1alt = bits, U08, 602, [4:4], "off", "ON"
LEDN2alt = bits, U08, 602, [5:5], "off", "ON"
LEDN3alt = bits, U08, 602, [6:6], "off", "ON"
LEDN4alt = bits, U08, 602, [7:7], "off", "ON"
LEDR1 = bits, U08, 603, [0:0], "off", "ON"
LEDR2 = bits, U08, 603, [1:1], "off", "ON"
LEDR3 = bits, U08, 603, [2:2], "off", "ON"
LEDR4 = bits, U08, 603, [3:3], "off", "ON"
LEDR1alt = bits, U08, 603, [4:4], "off", "ON"
LEDR2alt = bits, U08, 603, [5:5], "off", "ON"
LEDR3alt = bits, U08, 603, [6:6], "off", "ON"
LEDR4alt = bits, U08, 603, [7:7], "off", "ON"
IACAdjngear = scalar, S16, 604, "", 1.00, 0.00000, -25, 25, 0 ; Idle adjustment on MS-II when gear == 1, tps == 0, speed == 0
AdvAdjngear = scalar, S16, 606, "º", 0.10, 0.00000, 0.0, 25.5, 1 ; Advance adjustment on MS-II when gear == 1, tps == 0, speed == 0
idle_tps_adc = scalar, U16, 608, "%", 0.0976, 0.0000, 2, 50, 1 ; TPS% (adc count/1024) below which is considered idle
can_testout = bits, U08, 610, [0:0], "Get all vars", "Get only required vars"
#if SI_LENGTHS
min_manual_speed = scalar, S16, 611, "kph", 0.16093, 0.00000, -1, 150, 1 ; minimum speed in manual before switch to auto
#else
min_manual_speed = scalar, S16, 611, "mph", 0.10, 0.00000, -1, 200, 1 ; minimum speed in manual before switch to auto
#endif
shft_btn_polarity = bits, U08, 613, [0:0], "active low", "active high"
TCC_PWM = bits, U08, 614, [0:0], "ON/OFF TCC", "Use PWM for TCC"
spareInputs = bits, U08, 615, [0:1], "use as ADCs", "use as Shift Outputs", "Input2 as Output5 - Input3 as ADC", "INVALID"
Output5 = scalar, U16, 616, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for 3/2sol
Out51 = bits, U16, 616, [0:0], "off", "ON";
Out52 = bits, U16, 616, [1:1], "off", "ON";
Out53 = bits, U16, 616, [2:2], "off", "ON";
Out54 = bits, U16, 616, [3:3], "off", "ON";
Out55 = bits, U16, 616, [4:4], "off", "ON";
Out56 = bits, U16, 616, [5:5], "off", "ON";
Out57 = bits, U16, 616, [6:6], "off", "ON";
Out58 = bits, U16, 616, [7:7], "off", "ON";
Out59 = bits, U16, 616, [8:8], "off", "ON";
Out510 = bits, U16, 616, [9:9], "off", "ON";
Out511 = bits, U16, 616, [10:10], "off", "ON";
Out512 = bits, U16, 616, [11:11], "off", "ON";
Out513 = bits, U16, 616, [12:12], "off", "ON";
Out514 = bits, U16, 616, [13:13], "off", "ON";
Out515 = bits, U16, 616, [14:14], "off", "ON";
Out516 = bits, U16, 616, [15:15], "off", "ON";
Output6 = scalar, U16, 618, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for 3/2sol
Out61 = bits, U16, 618, [0:0], "off", "ON";
Out62 = bits, U16, 618, [1:1], "off", "ON";
Out63 = bits, U16, 618, [2:2], "off", "ON";
Out64 = bits, U16, 618, [3:3], "off", "ON";
Out65 = bits, U16, 618, [4:4], "off", "ON";
Out66 = bits, U16, 618, [5:5], "off", "ON";
Out67 = bits, U16, 618, [6:6], "off", "ON";
Out68 = bits, U16, 618, [7:7], "off", "ON";
Out69 = bits, U16, 618, [8:8], "off", "ON";
Out610 = bits, U16, 618, [9:9], "off", "ON";
Out611 = bits, U16, 618, [10:10], "off", "ON";
Out612 = bits, U16, 618, [11:11], "off", "ON";
Out613 = bits, U16, 618, [12:12], "off", "ON";
Out614 = bits, U16, 618, [13:13], "off", "ON";
Out615 = bits, U16, 618, [14:14], "off", "ON";
Out616 = bits, U16, 618, [15:15], "off", "ON";
PWM_enable = scalar, U08, 620, "", 0, 1.00000, 0, 255, 0 ; PWM enable
PWM_enable1 = bits, U08, 620, [0:0], "on/off", "PWM";
PWM_enable2 = bits, U08, 620, [1:1], "on/off", "PWM";
PWM_enable3 = bits, U08, 620, [2:2], "on/off", "PWM";
PWM_enable5 = bits, U08, 620, [4:4], "on/off", "PWM";
PWM_enable6 = bits, U08, 620, [5:5], "on/off", "PWM";
#if SI_LENGTHS
maxSpeed = scalar, S16, 621, "kph", 0.16093, 0.00000, 160, 400, 1 ; maximum speed for VSS filtering
#else
maxSpeed = scalar, S16, 621, "mph", 0.10, 0.00000, 100, 300, 1 ; maximum speed for VSS filtering
#endif
resetTime = scalar, U08, 623, "sec", 0.10, 0.00000, 0, 25.5, 1 ; time to ignore filtering after reset
TCC_counter = scalar, U08, 624, "sec", 0.10, 0.00000, 0, 25.5, 1 ; time (seconds x10) to disable TCC lock-up after unlocking
STCC_rpm = scalar, U16, 625, "rpm", 1.00, 0.00000, 2200, 9000, 0 ; full time TCC lock up minimum rpm
STCC_gear = scalar, U08, 627, "", 1.00, 0.00000, 3, 8, 0 ; full time TCC lock up minimum gear
STCC_ULrpm = scalar, U16, 628, "rpm", 1.00, 0.00000, 2200, 9000, 0 ; full time TCC lock up minimum rpm
VSSsmoothFactor = scalar, U08, 630, "", 1.00, 0.00000, 2, 12, 0 ; VSS smoothing factor
TCC_highGear = bits, U08, 631, [0:0], "Normal TCC Control Limits in High Gear", "ALWAYS Apply TCC in High Gear" ;
TCCupshift = scalar, U16, 632, "", 1.00000, 0.00000, 0, 127, 0 ; same patterns as Outputs
; to 2nd = 0x10, 3rd = 0x20, 4th = 0x40, 5th = 0x80,
; 6th = 0x100, 7th = 0x200, 8th = 0x400
; 8 7 6 5 4 3 2 1 R N P
; 0 0 0 0 1 0 0 1 1 1 1
; TCCupshiftP = bits, U16, 632, [0:0], "Stayed Locked (if locked)", "unlock";
; TCCupshiftN = bits, U16, 632, [1:1], "Stayed Locked (if locked)", "unlock";
; TCCupshiftR = bits, U16, 632, [2:2], "Stayed Locked (if locked)", "unlock";
; TCCupshift1 = bits, U16, 632, [3:3], "Stayed Locked (if locked)", "unlock";
TCCupshift2 = bits, U16, 632, [4:4], "Stayed Locked (if locked)", "unlock";
TCCupshift3 = bits, U16, 632, [5:5], "Stayed Locked (if locked)", "unlock";
TCCupshift4 = bits, U16, 632, [6:6], "Stayed Locked (if locked)", "unlock";
TCCupshift5 = bits, U16, 632, [7:7], "Stayed Locked (if locked)", "unlock";
TCCupshift6 = bits, U16, 632, [8:8], "Stayed Locked (if locked)", "unlock";
TCCupshift7 = bits, U16, 632, [9:9], "Stayed Locked (if locked)", "unlock";
TCCupshift8 = bits, U16, 632, [10:10], "Stayed Locked (if locked)", "unlock";
; maxUPpressure1 = scalar, U08, 634, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while upshifting to 1st
maxUPpressure2 = scalar, U08, 635, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while upshifting to 2nd
maxUPpressure3 = scalar, U08, 636, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while upshifting to 3rd
maxUPpressure4 = scalar, U08, 637, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while upshifting to 4th
maxUPpressure5 = scalar, U08, 638, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while upshifting to 5th
maxUPpressure6 = scalar, U08, 639, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while upshifting to 6th
maxUPpressure7 = scalar, U08, 640, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while upshifting to 7th
maxUPpressure8 = scalar, U08, 641, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while upshifting to 8th
maxDWNpressure1 = scalar, U08, 642, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while downshifting to 1st
maxDWNpressure2 = scalar, U08, 643, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while downshifting to 2nd
maxDWNpressure3 = scalar, U08, 644, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while downshifting to 3rd
maxDWNpressure4 = scalar, U08, 645, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while downshifting to 4th
maxDWNpressure5 = scalar, U08, 646, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while downshifting to 5th
maxDWNpressure6 = scalar, U08, 647, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while downshifting to 6th
maxDWNpressure7 = scalar, U08, 648, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while downshifting to 7th
; maxDWNpressure8 = scalar, U08, 649, "%", -1.00000, -100.00, 40, 90, 0 ; Max pressure while downshifting to 8th
solCupshiftPWM1 = scalar, U08, 650, "%", 1.00000, 0.00000, 0, 100, 0 ; SolC PWM while up shifting to 2nd
; bit 0x01 0x02 0x04 0x08 0x10 0x20
; shift 1-2 2-3 3-4 4-5 6-7 7-8
solCupshiftPWM2 = scalar, U08, 651, "%", 1.00000, 0.00000, 0, 100, 0 ; SolC PWM while up shifting to 3rd
solCupshiftPWM3 = scalar, U08, 652, "%", 1.00000, 0.00000, 0, 100, 0 ; SolC PWM while up shifting to 4th
solCupshiftPWM4 = scalar, U08, 653, "%", 1.00000, 0.00000, 0, 100, 0 ; SolC PWM while up shifting to 5th
solCupshiftPWM5 = scalar, U08, 654, "%", 1.00000, 0.00000, 0, 100, 0 ; SolC PWM while up shifting to 6th
solCupshiftPWM6 = scalar, U08, 655, "%", 1.00000, 0.00000, 0, 100, 0 ; SolC PWM while up shifting to 7th
solCupshiftPWM7 = scalar, U08, 656, "%", 1.00000, 0.00000, 0, 100, 0 ; SolC PWM while up shifting to 8th
solCdwnshiftPWM1 = scalar, U08, 657, "%", 1.00000, 0.00000, 0, 100, 0 ; SolC PWM while downshifting to 1st
; bit 0x01 0x02 0x04 0x08 0x10 0x20
; shift 2-1 3-2 4-3 5-4 7-6 8-7
solCdwnshiftPWM2 = scalar, U08, 658, "%", 1.00000, 0.00000, 0, 100, 0 ; SolC PWM while downshifting to 2nd
solCdwnshiftPWM3 = scalar, U08, 659, "%", 1.00000, 0.00000, 0, 100, 0 ; SolC PWM while downshifting to 3rd
solCdwnshiftPWM4 = scalar, U08, 660, "%", 1.00000, 0.00000, 0, 100, 0 ; SolC PWM while downshifting to 4th
solCdwnshiftPWM5 = scalar, U08, 661, "%", 1.00000, 0.00000, 0, 100, 0 ; SolC PWM while downshifting to 5th
solCdwnshiftPWM6 = scalar, U08, 662, "%", 1.00000, 0.00000, 0, 100, 0 ; SolC PWM while downshifting to 6th
solCdwnshiftPWM7 = scalar, U08, 663, "%", 1.00000, 0.00000, 0, 100, 0 ; SolC PWM while downshifting to 7th
debounce = scalar, U16, 664, "", 1.00000, 0.00000, 500, 65535, 0 ; Threshold for switch manifold debounce
WOT_dur = scalar, U08, 666, "sec", 1.00000, 0.00000, 0, 20, 0 ; WOT hysteresis blocking duration in seconds
mlever_mode = bits, U08, 667, [0:0], "digital switches (GM)", "Voltages (Ford)"
shftbut_mode = bits, U08, 668, [0:0], "Grounding Switches", "Discrete Voltages"
no_button_V = scalar, U16, 669, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for 5th (converted from ADC count)
up_button_V = scalar, U16, 671, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for 5th (converted from ADC count)
dwn_button_V = scalar, U16, 673, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for 5th (converted from ADC count)
both_button_V = scalar, U16, 675, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for 5th (converted from ADC count)
tol_button_V = scalar, U16, 677, "volts", 0.00489, 0.00000, 0, 5.0, 2 ; Volts for 5th (converted from ADC count)
hardware = bits, U08, 679, [0:0], "GPIO Board", "MicroTCU"
sp1_mode = bits, U08, 680, [0:2], "User Spare Port", "PWM mode", "TCC mode", "Use as Shift Solenoid", "Selective Clutch", "INVALID", "INVALID", "INVALID"
sp2_mode = bits, U08, 681, [0:2], "User Spare Port", "PWM mode", "TCC mode", "Use as Shift Solenoid", "Selective Clutch", "Gear Indicator", "INVALID", "INVALID"
sp1_pwm_table = array, U08, 682, [ 12 ], "pwm%", 1.00000, 0.00000, 0, 100, 0 ; PWM lookup table for SP1 when SP1_mode == 1
sp1_pwm1 = scalar, U08, 682, "", 1.00000, 0.00000, 0, 100, 0 ; bin 1
sp1_pwm2 = scalar, U08, 683, "", 1.00000, 0.00000, 0, 100, 0 ; bin 2
sp1_pwm3 = scalar, U08, 684, "", 1.00000, 0.00000, 0, 100, 0 ; bin 3
sp1_pwm4 = scalar, U08, 685, "", 1.00000, 0.00000, 0, 100, 0 ; bin 4
sp1_pwm5 = scalar, U08, 686, "", 1.00000, 0.00000, 0, 100, 0 ; bin 5
sp1_pwm6 = scalar, U08, 687, "", 1.00000, 0.00000, 0, 100, 0 ; bin 6
sp1_pwm7 = scalar, U08, 688, "", 1.00000, 0.00000, 0, 100, 0 ; bin 7
sp1_pwm8 = scalar, U08, 689, "", 1.00000, 0.00000, 0, 100, 0 ; bin 8
sp1_pwm9 = scalar, U08, 690, "", 1.00000, 0.00000, 0, 100, 0 ; bin 9
sp1_pwm10 = scalar, U08, 691, "", 1.00000, 0.00000, 0, 100, 0 ; bin 10
sp1_pwm11 = scalar, U08, 692, "", 1.00000, 0.00000, 0, 100, 0 ; bin 11
sp1_pwm12 = scalar, U08, 693, "", 1.00000, 0.00000, 0, 100, 0 ; bin 12
sp2_pwm_table = array, U08, 694, [ 12 ], "pwm%", 1.00000, 0.00000, 0, 100, 0 ; PWM lookup table for SP2 when SP2_mode == 1
sp2_pwm1 = scalar, U08, 694, "", 1.00000, 0.00000, 0, 100, 0 ; bin 1
sp2_pwm2 = scalar, U08, 695, "", 1.00000, 0.00000, 0, 100, 0 ; bin 2
sp2_pwm3 = scalar, U08, 696, "", 1.00000, 0.00000, 0, 100, 0 ; bin 3
sp2_pwm4 = scalar, U08, 697, "", 1.00000, 0.00000, 0, 100, 0 ; bin 4
sp2_pwm5 = scalar, U08, 698, "", 1.00000, 0.00000, 0, 100, 0 ; bin 5
sp2_pwm6 = scalar, U08, 699, "", 1.00000, 0.00000, 0, 100, 0 ; bin 6
sp2_pwm7 = scalar, U08, 700, "", 1.00000, 0.00000, 0, 100, 0 ; bin 7
sp2_pwm8 = scalar, U08, 701, "", 1.00000, 0.00000, 0, 100, 0 ; bin 8
sp2_pwm9 = scalar, U08, 702, "", 1.00000, 0.00000, 0, 100, 0 ; bin 9
sp2_pwm10 = scalar, U08, 703, "", 1.00000, 0.00000, 0, 100, 0 ; bin 10
sp2_pwm11 = scalar, U08, 704, "", 1.00000, 0.00000, 0, 100, 0 ; bin 11
sp2_pwm12 = scalar, U08, 705, "", 1.00000, 0.00000, 0, 100, 0 ; bin 12
sp1_pwm_index = array, U16, 706, [ 12 ], "indx", 0.10000, 0.00000, 0, 7000, 0 ; PWM lookup table index for SP1 when SP1_mode == 1
sp1_indx1 = scalar, U16, 706, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 1
sp1_indx2 = scalar, U16, 708, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 1
sp1_indx3 = scalar, U16, 710, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 1
sp1_indx4 = scalar, U16, 712, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 1
sp1_indx5 = scalar, U16, 714, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 1
sp1_indx6 = scalar, U16, 716, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 1
sp1_indx7 = scalar, U16, 718, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 1
sp1_indx8 = scalar, U16, 720, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 1
sp1_indx9 = scalar, U16, 722, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 1
sp1_indx10 = scalar, U16, 724, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 1
sp1_indx11 = scalar, U16, 726, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 1
sp1_indx12 = scalar, U16, 728, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 1
sp2_pwm_index = array, U16, 730, [ 12 ], "indx", 0.10000, 0.00000, 0, 7000, 0 ; PWM lookup table index for SP2 when SP1_mode == 1
sp2_indx1 = scalar, U16, 730, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 1
sp2_indx2 = scalar, U16, 732, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 2
sp2_indx3 = scalar, U16, 734, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 3
sp2_indx4 = scalar, U16, 736, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 4
sp2_indx5 = scalar, U16, 738, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 5
sp2_indx6 = scalar, U16, 740, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 6
sp2_indx7 = scalar, U16, 742, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 7
sp2_indx8 = scalar, U16, 744, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 8
sp2_indx9 = scalar, U16, 746, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 9
sp2_indx10 = scalar, U16, 748, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 10
sp2_indx11 = scalar, U16, 750, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 11
sp2_indx12 = scalar, U16, 752, "", 0.10000, 0.00000, 0, 7000, 0 ; bin 12
sp1_index_mode = bits, U08, 754, [0:2], "Load", "Speed", "RPM", "Temperature", "Current Gear", "MAP", "TPS", "Aux Volts (x100) " ; value to compare to sp1_pwm_index - 0 = load, 1 = speed, 2 = rpm, 4 = clt, 8 current gear
sp2_index_mode = bits, U08, 755, [0:2], "Load", "Speed", "RPM", "Temperature", "Current Gear", "MAP", "TPS", "Aux Volts (x100) " ; value to compare to sp2_pwm_index - 0 = load, 1 = speed, 2 = rpm, 4 = clt, 8 current gear
sp1_active = bits, U08, 756, [0:1], "Always ON", "ON except while shifting", "ON only during shift", "INVALID" ;
sp2_active = bits, U08, 757, [0:1], "Always ON", "ON except while shifting", "ON only during shift", "INVALID" ;
sp1_off = scalar, U08, 758, "%", 1.00000, 0.00000, 0, 100, 0 ; pad1
sp2_off = scalar, U08, 759, "%", 1.00000, 0.00000, 0, 100, 0 ; pad1
sp1_pwm_per = scalar, U08, 760, "msec", 0.128, 0.0000, 0.512, 32.64, 3 ; spare port 1 off duration (in 0.128 msec clock tics)
sp2_pwm_per = scalar, U08, 761, "msec", 0.128, 0.0000, 0.512, 32.64, 3 ; spare port 2 off duration (in 0.128 msec clock tics)
Output7 = scalar, U16, 762, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for 3/2sol
Out71 = bits, U16, 762, [0:0], "off", "ON";
Out72 = bits, U16, 762, [1:1], "off", "ON";
Out73 = bits, U16, 762, [2:2], "off", "ON";
Out74 = bits, U16, 762, [3:3], "off", "ON";
Out75 = bits, U16, 762, [4:4], "off", "ON";
Out76 = bits, U16, 762, [5:5], "off", "ON";
Out77 = bits, U16, 762, [6:6], "off", "ON";
Out78 = bits, U16, 762, [7:7], "off", "ON";
Out79 = bits, U16, 762, [8:8], "off", "ON";
Out710 = bits, U16, 762, [9:9], "off", "ON";
Out711 = bits, U16, 762, [10:10], "off", "ON";
Out712 = bits, U16, 762, [11:11], "off", "ON";
Out713 = bits, U16, 762, [12:12], "off", "ON";
Out714 = bits, U16, 762, [13:13], "off", "ON";
Out715 = bits, U16, 762, [14:14], "off", "ON";
Out716 = bits, U16, 762, [15:15], "off", "ON";
out2_pwm_off = scalar, U08, 764, "msec", 0.128, 0.0000, 0, 32.64, 3 ; output1 and output2 off duration (in 0.128 clock tics)
out2_pwm_on = scalar, U08, 765, "msec", 0.128, 0.0000, 0.128, 32.64, 3 ; output1 and output2 off duration (in 0.128 clock tics)
minTCC_gear = scalar, S16, 766, "", 1.00000, 0.0000, 2, 4, 0 ; minimum gear (1-4) for TCC lock
TCC_follow_sp1dur = scalar, U08, 768, "msec", 0.01000, 0.0000, 0, 2.50, 2 ; sp1 activation period with TCC
#if LOAD_KPA
LOAD_table2 = array, S16, 769, [ 9 ], "kpa", 1.00000, 0.00000, 0, 255,
#else
LOAD_table2 = array, S16, 769, [ 9 ], "%", 1.00000, 0.00000, 0, 100,
#endif
#if SI_LENGTHS
vss_table2 = array, U16, 787, [ 16 ], "kph", 1.60934, 0.00000, 0, 255, 0 ; vehicle speed tables
#else
vss_table2 = array, U16, 787, [ 16 ], "mph", 1.00000, 0.00000, 0, 255, 0 ; vehicle speed tables
#endif
auto_table2 = array, U08, 819, [16x9], "gear", 1.00000, 0.00000, 1, 8, 0 ; The target gear for each LOAD & MPH
#if LOAD_KPA
LOAD_PCtable = array, S16, 963, [ 9 ], "kpa", 1.00000, 0.00000, 0, 255,
#else
LOAD_PCtable = array, S16, 963, [ 9 ], "%", 1.00000, 0.00000, 0, 100,
#endif
LEDP1 = bits, U08, 981, [0:0], "off", "ON"
LEDP2 = bits, U08, 981, [1:1], "off", "ON"
LEDP3 = bits, U08, 981, [2:2], "off", "ON"
LEDP4 = bits, U08, 981, [3:3], "off", "ON"
LEDP1alt = bits, U08, 981, [4:4], "off", "ON"
LEDP2alt = bits, U08, 981, [5:5], "off", "ON"
LEDP3alt = bits, U08, 981, [6:6], "off", "ON"
LEDP4alt = bits, U08, 981, [7:7], "off", "ON"
volt1 = scalar, S16, 982, "volts", 0.00489, 0.0000, 0, 5.00, 3 ;
volt2 = scalar, S16, 984, "volts", 0.00489, 0.0000, 0, 5.00, 3 ;
#if SI_LENGTHS
press1 = scalar, U16, 986, "bar", 0.0068947,0.0000, 0, 100, 3 ; convert to psi
press2 = scalar, U16, 988, "bar", 0.0068947,0.0000, 0, 100, 3 ; convert to psi
#else
press1 = scalar, U16, 986, "psi", 0.10000, 0.0000, 0, 1023, 1 ;
press2 = scalar, U16, 988, "psi", 0.10000, 0.0000, 0, 1023, 1 ;
#endif
mleverdead = scalar, U08, 990, "volts", 0.00489, 0.0000, 0, 0.25, 3 ; plus/minus dead band for manual lever voltage
#if LOAD_KPA
Sretard_load = scalar, S16, 991, "kPa", 0.10, 0.00000, 0.0, 250.0, 1 ; slip timing retard only above load (kpax10) ; // Minimum load to apply timing retard based on internal slip
#else
Sretard_load = scalar, S16, 991, "%", 0.10, 0.00000, 0.0, 250.0, 1 ; slip timing retard only above load (kpax10) ; // Minimum load to apply timing retard based on internal slip
#endif
Slip_adv = scalar, S16, 993, "º", -0.10, 0.00000, 0.0, 25.5, 1 ; Upshift timing retard
Slip_fuel = scalar, S16, 995, "msec", 0.10, 0.00000, 0.0, 25.5, 1 ; Upshift timing retard
Slip_threshold = scalar, U08, 997, "%", 1.00, 0.00000, 0.0, 100.0, 0 ; Slip threshold to apply retard/fuel adjustments
; two at the same location for debugging
INdbugV = scalar, U16, 998, "volts", 0.00489, 0.0000, 0, 5.00, 3 ;
INdbugADC = scalar, U16, 998, "count", 1.00000, 0.0000, 0, 1023, 0 ;
PCreverse = scalar, U08, 1000, "100-%", -1.00000, -100.00, 40, 100, 0 ; pressure in neutral
PCrvrseOptn = bits, U08, 1001, [0:0], "User Specified (below)", "Use 16x9 Table"
PCntrlOptn = bits, U08, 1001, [1:1], "User Specified (below)", "Use 16x9 Table"
leverErr = bits, U08, 1002, [0:0], "Ignore Lever Errors", "Report Lever Errors"
minADCLeverVolts = scalar, U16, 1003, "", 0.004883, 0.0000, 0, 5.00, 3 ; minimum valid volts for ADC based lever
maxADCLeverVolts = scalar, U16, 1005, "", 0.004883, 0.0000, 0, 5.00, 3 ; maximum valid volts for ADC based lever
slipDelay = scalar, U08, 1007, "", 0.10000, 0.00000, 0, 25.5, 0 ; time between slip line and slip spark adjustments (10ths) or vice-versa
NAGmode = bits, U08, 1008, [0:1], "Set All Parameters", "NAG mode (untested - do not use)", "General Motors 4L60e", "General Motors 4L80e"
follow_mode = bits, U08, 1009, [0:0], "Normal Auto Mode", "Use Lever Position Only (burnout mode)"
follow_maxgear = scalar, U08, 1010, "", 1.00000, 0.00000, 0, 8, 0 ; highest gear for burn-out mode
brake_load = scalar, U08, 1011, "%", 1.00000, 0.00000, 0, 100, 0 ; percentage of change in load to use when braking
decel_TPS = scalar, U16, 1012, "%", 0.10000, 0.00000, 0, 1000, 0 ; max TPS for decel mode
VSS_location = bits, U08, 1014, [0:0], "Between Transmission and Final Drive (typ. RWD)", "Between Final Drive and Wheel (typ. FWD)"
TCC_follow_sp2dur = scalar, U08, 1015, "msec", 0.01000, 0.00000, 0, 2.50, 2 ; sp2 activation period with TCC
; ****************************************************************** end inpram *********************
; pageSize = 1015 + 1 = 1016 bytes
page = 2
; *************** in2ram ****************************************************************************
#if SI_LENGTHS
vss_PCtable = array, U16, 0, [ 16 ], "kph", 1.60934, 0.00000, 0, 255, 0 ; vehicle speed tables
#else
vss_PCtable = array, U16, 0, [ 16 ], "mph", 1.00000, 0.00000, 0, 255, 0 ; vehicle speed tables
#endif
speedoCorr = array, S16, 32, [ 16 ], "%", 0.10000, 0.00000, -100, 250, 1 ; vehicle speed tables
#if SI_LENGTHS
speedoCorrBin = array, U16, 64, [ 16 ], "kph", 1.60934, 0.00000, 0, 255, 0 ; vehicle speed tables
#else
speedoCorrBin = array, U16, 64, [ 16 ], "mph", 1.00000, 0.00000, 0, 255, 0 ; vehicle speed tables
#endif
SPIsoln1 = scalar, U08, 96, "", 1.00000, 0.00000, 0, 255, 0 ; SPI solenoid control selection
SPIsoln10 = bits, U08, 96, [0:0], "Do Not use SPI", "Use SPI"
SPIsoln11 = bits, U08, 96, [1:1], "Do Not use SPI", "Use SPI"
SPIsoln12 = bits, U08, 96, [2:2], "Do Not use SPI", "Use SPI"
SPIsoln13 = bits, U08, 96, [3:3], "Do Not use SPI", "Use SPI"
SPIsoln14 = bits, U08, 96, [4:4], "Do Not use SPI", "Use SPI"
SPIsoln15 = bits, U08, 96, [5:5], "Do Not use SPI", "Use SPI"
SPIsoln16 = bits, U08, 96, [6:6], "Do Not use SPI", "Use SPI"
SPIsoln17 = bits, U08, 96, [7:7], "Do Not use SPI", "Use SPI"
D0BR = scalar, U08, 97, "", 1.00000, 0.00000, 0, 255, 0 ; SPI baud rate for device 1
D0SPR0 = bits, U08, 97, [0:0], "0", "1";
D0SPR1 = bits, U08, 97, [1:1], "0", "1";
D0SPR2 = bits, U08, 97, [2:2], "0", "1";
D0SPPR0 = bits, U08, 97, [4:4], "0", "1";
D0SPPR1 = bits, U08, 97, [5:5], "0", "1";
D0SPPR2 = bits, U08, 97, [6:6], "0", "1";
D0CR1 = scalar, U08, 98, "", 1.00000, 0.00000, 0, 255, 0 ; SPI0CR1 for device 1
D0LSBFE = bits, U08, 98, [0:0], "0", "1";
D0SSOE = bits, U08, 98, [1:1], "0", "1";
D0CPHA = bits, U08, 98, [2:2], "0", "1";
D0CPOL = bits, U08, 98, [3:3], "0", "1";
D0MSTR = bits, U08, 98, [4:4], "0", "1";
D0SPTIE = bits, U08, 98, [5:5], "0", "1";
D0SPE = bits, U08, 98, [6:6], "0", "1";
D0SPIE = bits, U08, 98, [7:7], "0", "1";
D0CR2 = scalar, U08, 99, "", 1.00000, 0.00000, 0, 31, 0 ; SPI0CR2 for device 1
D0SPC0 = bits, U08, 99, [0:0], "0", "1";
D0SPISWAI = bits, U08, 99, [1:1], "0", "1";
D0BIDIROE = bits, U08, 99, [3:3], "0", "1";
D0MODFEN = bits, U08, 99, [4:4], "0", "1";
D1BR = scalar, U08, 100, "", 1.00000, 0.00000, 0, 255, 0 ; SPI baud rate for device 2
D1SPR0 = bits, U08, 100, [0:0], "0", "1";
D1SPR1 = bits, U08, 100, [1:1], "0", "1";
D1SPR2 = bits, U08, 100, [2:2], "0", "1";
D1SPPR0 = bits, U08, 100, [4:4], "0", "1";
D1SPPR1 = bits, U08, 100, [5:5], "0", "1";
D1SPPR2 = bits, U08, 100, [6:6], "0", "1";
D1CR1 = scalar, U08, 101, "", 1.00000, 0.00000, 0, 255, 0 ; SPI0CR1 for device 2
D1LSBFE = bits, U08, 101, [0:0], "0", "1";
D1SSOE = bits, U08, 101, [1:1], "0", "1";
D1CPHA = bits, U08, 101, [2:2], "0", "1";
D1CPOL = bits, U08, 101, [3:3], "0", "1";
D1MSTR = bits, U08, 101, [4:4], "0", "1";
D1SPTIE = bits, U08, 101, [5:5], "0", "1";
D1SPE = bits, U08, 101, [6:6], "0", "1";
D1SPIE = bits, U08, 101, [7:7], "0", "1";
D1CR2 = scalar, U08, 102, "", 1.00000, 0.00000, 0, 31, 0 ; SPI0CR2 for device 2
D1SPC0 = bits, U08, 102, [0:0], "0", "1";
D1SPISWAI = bits, U08, 102, [1:1], "0", "1";
D1BIDIROE = bits, U08, 102, [3:3], "0", "1";
D1MODFEN = bits, U08, 102, [4:4], "0", "1";
D2BR = scalar, U08, 103, "", 1.00000, 0.00000, 0, 255, 0 ; ...
D2SPR0 = bits, U08, 103, [0:0], "0", "1";
D2SPR1 = bits, U08, 103, [1:1], "0", "1";
D2SPR2 = bits, U08, 103, [2:2], "0", "1";
D2SPPR0 = bits, U08, 103, [4:4], "0", "1";
D2SPPR1 = bits, U08, 103, [5:5], "0", "1";
D2SPPR2 = bits, U08, 103, [6:6], "0", "1";
D2CR1 = scalar, U08, 104, "", 1.00000, 0.00000, 0, 255, 0 ; ...
D2LSBFE = bits, U08, 104, [0:0], "0", "1";
D2SSOE = bits, U08, 104, [1:1], "0", "1";
D2CPHA = bits, U08, 104, [2:2], "0", "1";
D2CPOL = bits, U08, 104, [3:3], "0", "1";
D2MSTR = bits, U08, 104, [4:4], "0", "1";
D2SPTIE = bits, U08, 104, [5:5], "0", "1";
D2SPE = bits, U08, 104, [6:6], "0", "1";
D2SPIE = bits, U08, 104, [7:7], "0", "1";
D2CR2 = scalar, U08, 105, "", 1.00000, 0.00000, 0, 31, 0 ; ...
D2SPC0 = bits, U08, 105, [0:0], "0", "1";
D2SPISWAI = bits, U08, 105, [1:1], "0", "1";
D2BIDIROE = bits, U08, 105, [3:3], "0", "1";
D2MODFEN = bits, U08, 105, [4:4], "0", "1";
D3BR = scalar, U08, 106, "", 1.00000, 0.00000, 0, 255, 0 ; ...
D3SPR0 = bits, U08, 106, [0:0], "0", "1";
D3SPR1 = bits, U08, 106, [1:1], "0", "1";
D3SPR2 = bits, U08, 106, [2:2], "0", "1";
D3SPPR0 = bits, U08, 106, [4:4], "0", "1";
D3SPPR1 = bits, U08, 106, [5:5], "0", "1";
D3SPPR2 = bits, U08, 106, [6:6], "0", "1";
D3CR1 = scalar, U08, 107, "", 1.00000, 0.00000, 0, 255, 0 ; ...
D3LSBFE = bits, U08, 107, [0:0], "0", "1";
D3SSOE = bits, U08, 107, [1:1], "0", "1";
D3CPHA = bits, U08, 107, [2:2], "0", "1";
D3CPOL = bits, U08, 107, [3:3], "0", "1";
D3MSTR = bits, U08, 107, [4:4], "0", "1";
D3SPTIE = bits, U08, 107, [5:5], "0", "1";
D3SPE = bits, U08, 107, [6:6], "0", "1";
D3SPIE = bits, U08, 107, [7:7], "0", "1";
D3CR2 = scalar, U08, 108, "", 1.00000, 0.00000, 0, 31, 0 ; ...
D3SPC0 = bits, U08, 108, [0:0], "0", "1";
D3SPISWAI = bits, U08, 108, [1:1], "0", "1";
D3BIDIROE = bits, U08, 108, [3:3], "0", "1";
D3MODFEN = bits, U08, 108, [4:4], "0", "1";
spi_enable = scalar, U08, 109, "", 1.00000, 0.00000, 0, 32000, 0 ; spare13 in in2ram
spi_D0enable = bits, U08, 109, [0:0], "disable", "enable"
spi_D1enable = bits, U08, 109, [1:1], "disable", "enable"
spi_D2enable = bits, U08, 109, [2:2], "disable", "enable"
spi_D3enable = bits, U08, 109, [3:3], "disable", "enable"
sp0_mode = bits, U08, 110, [0:2], "Speedo Output", "PWM mode", "TCC mode", "Use as Shift Solenoid", "Selective Clutch", "INVALID", "INVALID", "INVALID"
sp0_active = bits, U08, 111, [0:1], "Always ON", "ON except while shifting", "ON only during shift", "INVALID" ;
sp0_16Bin = array, S16, 112, [ 16 ], "", 1.00000, 0.00000, 0, 255, 0 ; vehicle speed tables
sp0_9Bin = array, S16, 144, [ 9 ], "", 1.00000, 0.00000, 0, 255, 0 ; vehicle speed tables
sp0_table = array, U08, 162, [16x9], "%", 1.00000, 0.00000, 0, 100, 0 ; The target PWM % on SP0 for each LOAD & MPH
sp0_per = scalar, U16, 306, "msec", 0.00100, 0.00000, 0.427, 10.888, 3 ; TCC PWM period (usec) - keep between 0.427 and 10.888 msec (92 Hertz and 2340 Hertz)
sp0_off = scalar, U08, 308, "%", 1.00000, 0.00000, 0, 100, 0 ;
sp0_9index_mode = bits, U08, 309, [0:2], "Load", "Speed", "RPM", "Temperature", "Current Gear", "MAP", "TPS", "Aux Volts (x100) " ; value to compare to sp0_pwm_index - 0 = load, 1 = speed, 2 = rpm, 4 = clt, 8 current gear
sp0_16index_mode = bits, U08, 310, [0:2], "Load", "Speed", "RPM", "Temperature", "Current Gear", "MAP", "TPS", "Aux Volts (x100) " ; value to compare to sp0_pwm_index - 0 = load, 1 = speed, 2 = rpm, 4 = clt, 8 current gear
SPIsoln2 = scalar, U08, 311, "", 1.00000, 0.00000, 0, 255, 0 ; SPI solenoid control selection
SPIsoln20 = bits, U08, 311, [0:0], "Do Not use SPI", "Use SPI"
SPIsoln21 = bits, U08, 311, [1:1], "Do Not use SPI", "Use SPI"
SPIsoln22 = bits, U08, 311, [2:2], "Do Not use SPI", "Use SPI"
SPIsoln23 = bits, U08, 311, [3:3], "Do Not use SPI", "Use SPI"
SPIsoln24 = bits, U08, 311, [4:4], "Do Not use SPI", "Use SPI"
SPIsoln25 = bits, U08, 311, [5:5], "Do Not use SPI", "Use SPI"
SPIsoln26 = bits, U08, 311, [6:6], "Do Not use SPI", "Use SPI"
SPIsoln27 = bits, U08, 311, [7:7], "Do Not use SPI", "Use SPI"
; clutch0up = scalar, U08, 312, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for upshift spare port 1 in clutch mode
clutch01u = bits, U08, 312, [0:0], "off", "ON" ; 1-2
clutch02u = bits, U08, 312, [1:1], "off", "ON" ; 2-3
clutch03u = bits, U08, 312, [2:2], "off", "ON" ; 3-4
clutch04u = bits, U08, 312, [3:3], "off", "ON" ; 4-5
clutch05u = bits, U08, 312, [4:4], "off", "ON" ; 5-6
clutch06u = bits, U08, 312, [5:5], "off", "ON" ; 6-7
clutch07u = bits, U08, 312, [6:6], "off", "ON" ; 7-8
clutch08u = bits, U08, 312, [7:7], "off", "ON" ; not used
; clutch0dwn = scalar, U08, 313, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for upshift spare port 1 in clutch mode
clutch01d = bits, U08, 313, [0:0], "off", "ON" ; 1-2
clutch02d = bits, U08, 313, [1:1], "off", "ON" ; 2-3
clutch03d = bits, U08, 313, [2:2], "off", "ON" ; 3-4
clutch04d = bits, U08, 313, [3:3], "off", "ON" ; 4-5
clutch05d = bits, U08, 313, [4:4], "off", "ON" ; 5-6
clutch06d = bits, U08, 313, [5:5], "off", "ON" ; 6-7
clutch07d = bits, U08, 313, [6:6], "off", "ON" ; 7-8
clutch08d = bits, U08, 313, [7:7], "off", "ON" ; not used
; Output8ptrn = bits, U16, 314, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for 3/2sol
Out81 = bits, U16, 314, [0:0], "off", "ON";
Out82 = bits, U16, 314, [1:1], "off", "ON";
Out83 = bits, U16, 314, [2:2], "off", "ON";
Out84 = bits, U16, 314, [3:3], "off", "ON";
Out85 = bits, U16, 314, [4:4], "off", "ON";
Out86 = bits, U16, 314, [5:5], "off", "ON";
Out87 = bits, U16, 314, [6:6], "off", "ON";
Out88 = bits, U16, 314, [7:7], "off", "ON";
Out89 = bits, U16, 314, [8:8], "off", "ON";
Out810 = bits, U16, 314, [9:9], "off", "ON";
Out811 = bits, U16, 314, [10:10], "off", "ON";
Out812 = bits, U16, 314, [11:11], "off", "ON";
Out813 = bits, U16, 314, [12:12], "off", "ON";
Out814 = bits, U16, 314, [13:13], "off", "ON";
Out815 = bits, U16, 314, [14:14], "off", "ON";
Out816 = bits, U16, 314, [15:15], "off", "ON";
; LEDflash = bits, U08, 316, "", 1.00000, 0.00000, 0, 127, 0 ; bit0 for flash LED in manual 0 = no, 1 = yes
FlashLEDs = bits, U08, 316, [0:0], "no flash", "Flash";
nestINTS = bits, U08, 317, [0:0], "Low Speed Comms", "High Speed Comms" ; *
SlipOptn = bits, U08, 318, [0:0], "Slip in Converter (Tach/ISS)", "Slip in Transmission (ISS/VSS)" ; *
TPStable = array, U08, 319, [6x6], "%", 1.00000, 0.00000, 0, 100, 0 ; The target PWM % on SP0 for each LOAD & MPH
TPSrpm = array, U16, 355, [ 6 ], "rpm", 1.00000, 0.00000, 0, 10000, 0 ; vehicle speed tables
TPStps = array, S16, 367, [ 6 ], "%", 0.10000, 0.00000, 0, 100, 0 ; vehicle speed tables
TPSmap = scalar, U08, 379, "MAP%", 1.00000, 0.00000, 0, 100, 0 ; spare14 in in2ram
#if LOAD_KPA
shiftCompBins = array, S16, 380, [ 8 ], "kPa", 1.00000, 0.00000, 0, 10000, 0 ; shift completion delay bins
#else
shiftCompBins = array, S16, 380, [ 8 ], "%", 1.00000, 0.00000, 0, 10000, 0 ; shift completion delay bins
#endif
shiftCompValues = array, S08, 396, [ 8 ], "msec", 10.0000, 0.00000, 10, 1270, 0 ; shift completion delay times
sp3_mode = bits, U08, 404, [0:2], "Line Pressure Table", "PWM mode", "TCC mode", "Use as Shift Solenoid (Output 9)", "Selective Clutch", "INVALID", "INVALID", "INVALID"
sp3_active = bits, U08, 405, [0:0], "Always ON", "ON if RPM>300, else OFF" ;
sp3_16Bin = array, S16, 406, [ 16 ], "", 1.00000, 0.00000, 0, 255, 0 ; vehicle speed tables
sp3_9Bin = array, S16, 438, [ 9 ], "", 1.00000, 0.00000, 0, 255, 0 ; vehicle speed tables
sp3_table = array, U08, 456, [16x9], "%", 1.00000, 0.00000, 0, 100, 0 ; The target PWM % on SP3 for each LOAD & MPH
sp3_per = scalar, U16, 600, "msec", 0.00100, 0.00000, 0.427, 10.888, 3 ; TCC PWM period (usec) - keep between 0.427 and 10.888 msec (92 Hertz and 2340 Hertz)
sp3_off = scalar, U08, 602, "%", 1.00000, 0.00000, 0, 100, 0 ;
sp3_9index_mode = bits, U08, 603, [0:2], "Load", "Speed", "RPM", "Temperature", "Current Gear", "MAP", "TPS", "Aux Volts (x100)" ; value to compare to sp1_pwm_index - 0 = load, 1 = speed, 2 = rpm, 4 = clt, 8 current gear
sp3_16index_mode = bits, U08, 604, [0:2], "Load", "Speed", "RPM", "Temperature", "Current Gear", "MAP", "TPS", "Aux Volts (x100)" ; value to compare to sp1_pwm_index - 0 = load, 1 = speed, 2 = rpm, 4 = clt, 8 current gear
; Ouput9ptrn = bits, U16, 605, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for 3/2sol
Out91 = bits, U16, 605, [0:0], "off", "ON";
Out92 = bits, U16, 605, [1:1], "off", "ON";
Out93 = bits, U16, 605, [2:2], "off", "ON";
Out94 = bits, U16, 605, [3:3], "off", "ON";
Out95 = bits, U16, 605, [4:4], "off", "ON";
Out96 = bits, U16, 605, [5:5], "off", "ON";
Out97 = bits, U16, 605, [6:6], "off", "ON";
Out98 = bits, U16, 605, [7:7], "off", "ON";
Out99 = bits, U16, 605, [8:8], "off", "ON";
Out910 = bits, U16, 605, [9:9], "off", "ON";
Out911 = bits, U16, 605, [10:10], "off", "ON";
Out912 = bits, U16, 605, [11:11], "off", "ON";
Out913 = bits, U16, 605, [12:12], "off", "ON";
Out914 = bits, U16, 605, [13:13], "off", "ON";
Out915 = bits, U16, 605, [14:14], "off", "ON";
Out916 = bits, U16, 605, [15:15], "off", "ON";
; clutch3up = scalar, U08, 607, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for upshift spare port 1 in clutch mode
clutch31u = bits, U08, 607, [0:0], "off", "ON" ; 1-2
clutch32u = bits, U08, 607, [1:1], "off", "ON" ; 2-3
clutch33u = bits, U08, 607, [2:2], "off", "ON" ; 3-4
clutch34u = bits, U08, 607, [3:3], "off", "ON" ; 4-5
clutch35u = bits, U08, 607, [4:4], "off", "ON" ; 5-6
clutch36u = bits, U08, 607, [5:5], "off", "ON" ; 6-7
clutch37u = bits, U08, 607, [6:6], "off", "ON" ; 7-8
clutch38u = bits, U08, 607, [7:7], "off", "ON" ; not used
; clutch3dwn = scalar, U08, 608, "", 1.00000, 0.00000, 0, 127, 0 ; output pattern for upshift spare port 1 in clutch mode
clutch31d = bits, U08, 608, [0:0], "off", "ON" ; 1-2
clutch32d = bits, U08, 608, [1:1], "off", "ON" ; 2-3
clutch33d = bits, U08, 608, [2:2], "off", "ON" ; 3-4
clutch34d = bits, U08, 608, [3:3], "off", "ON" ; 4-5
clutch35d = bits, U08, 608, [4:4], "off", "ON" ; 5-6
clutch36d = bits, U08, 608, [5:5], "off", "ON" ; 6-7
clutch37d = bits, U08, 608, [6:6], "off", "ON" ; 7-8
clutch38d = bits, U08, 608, [7:7], "off", "ON" ; not used
Slip_limit = array, U08, 609, [ 8 ], "%", -1.00000, -100.00, 40, 100, 0 ; Maximum 100-PWM% after slip limit is applied
decel_Delay = scalar, U08, 617, "sec", 0.10000, 0.00000, 0, 25.5, 1 ; downshift delay in seconds
lever_timer = scalar, U08, 618, "sec", 0.10000, 1.00000, 0.3, 25.5, 1 ; lever error delay
maxDeltaLever = scalar, U08, 619, "", 1.00000, 0.00000, 1, 4, 0 ; spare14 in in2ram
unused = scalar, U08, 620, "", 1.00000, 0.00000, 0, 255, 0 ; VSS over CAN offset within outpc.
msOutpcBytes = scalar, U16, 621, "", 1.00000, 0.00000, 0, 1023, 0 ; total number of bytes in engine outpc structure
TCC_hyst = scalar, U08, 623, "", 0.10000, 0.00000, 0, 25.5, 1 ; TCC hysteresis
speedoutDC = scalar, U08, 624, "%", 1.00000, 0.00000, 1, 99, 0 ; Speedo output duty cycle
gear_indic_perP = scalar, U16, 625, "msec", 0.128, 0.00000, 0.512, 819.1, 3 ; spare port 2 off duration (in 0.128 msec clock tics)
gear_indic_perN = scalar, U16, 627, "msec", 0.128, 0.00000, 0.512, 819.1, 3 ; spare port 2 off duration (in 0.128 msec clock tics)
gear_indic_perR = scalar, U16, 629, "msec", 0.128, 0.00000, 0.512, 819.1, 3 ; spare port 2 off duration (in 0.128 msec clock tics)
gear_indic_per1 = scalar, U16, 631, "msec", 0.128, 0.00000, 0.512, 819.1, 3 ; spare port 2 off duration (in 0.128 msec clock tics)
gear_indic_per2 = scalar, U16, 633, "msec", 0.128, 0.00000, 0.512, 819.1, 3 ; spare port 2 off duration (in 0.128 msec clock tics)
gear_indic_per3 = scalar, U16, 635, "msec", 0.128, 0.00000, 0.512, 819.1, 3 ; spare port 2 off duration (in 0.128 msec clock tics)
gear_indic_per4 = scalar, U16, 637, "msec", 0.128, 0.00000, 0.512, 819.1, 3 ; spare port 2 off duration (in 0.128 msec clock tics)
gear_indic_per5 = scalar, U16, 639, "msec", 0.128, 0.00000, 0.512, 819.1, 3 ; spare port 2 off duration (in 0.128 msec clock tics)
gear_indic_per6 = scalar, U16, 641, "msec", 0.128, 0.00000, 0.512, 819.1, 3 ; spare port 2 off duration (in 0.128 msec clock tics)
gear_indic_per7 = scalar, U16, 643, "msec", 0.128, 0.00000, 0.512, 819.1, 3 ; spare port 2 off duration (in 0.128 msec clock tics)
gear_indic_per8 = scalar, U16, 645, "msec", 0.128, 0.00000, 0.512, 819.1, 3 ; spare port 2 off duration (in 0.128 msec clock tics)
gear_indic_dcP = scalar, U08, 647, "%", 1.000, 0.00000, 0, 100, 0, ; spare port 2 PWM percent in Park
gear_indic_dcN = scalar, U08, 648, "%", 1.000, 0.00000, 0, 100, 0, ; spare port 2 PWM percent in Park
gear_indic_dcR = scalar, U08, 649, "%", 1.000, 0.00000, 0, 100, 0, ; spare port 2 PWM percent in Park
gear_indic_dc1 = scalar, U08, 650, "%", 1.000, 0.00000, 0, 100, 0, ; spare port 2 PWM percent in Park
gear_indic_dc2 = scalar, U08, 651, "%", 1.000, 0.00000, 0, 100, 0, ; spare port 2 PWM percent in Park
gear_indic_dc3 = scalar, U08, 652, "%", 1.000, 0.00000, 0, 100, 0, ; spare port 2 PWM percent in Park
gear_indic_dc4 = scalar, U08, 653, "%", 1.000, 0.00000, 0, 100, 0, ; spare port 2 PWM percent in Park
gear_indic_dc5 = scalar, U08, 654, "%", 1.000, 0.00000, 0, 100, 0, ; spare port 2 PWM percent in Park
gear_indic_dc6 = scalar, U08, 655, "%", 1.000, 0.00000, 0, 100, 0, ; spare port 2 PWM percent in Park
gear_indic_dc7 = scalar, U08, 656, "%", 1.000, 0.00000, 0, 100, 0, ; spare port 2 PWM percent in Park
gear_indic_dc8 = scalar, U08, 657, "%", 1.000, 0.00000, 0, 100, 0, ; spare port 2 PWM percent in Park
gearIndctrMode = bits, U08, 658, [0:0], "Use Current Gear", "Use Manual Lever Position" ; Slip line pressure adjust: 0 = no adjustment, 1 = adjust with slip
ISSratioR = scalar, U16, 659, ":1", 0.001, 0.00000, 0.400, 7.500, 3, ; ISS to tach ratio in Reverse
ISSratio1 = scalar, U16, 661, ":1", 0.001, 0.00000, 0.400, 7.500, 3, ; ISS to tach ratio in First
ISSratio2 = scalar, U16, 663, ":1", 0.001, 0.00000, 0.400, 7.500, 3, ; ISS to tach ratio in Second
ISSratio3 = scalar, U16, 665, ":1", 0.001, 0.00000, 0.400, 7.500, 3, ; ISS to tach ratio in Third
ISSratio4 = scalar, U16, 667, ":1", 0.001, 0.00000, 0.400, 7.500, 3, ; ISS to tach ratio in Fourth
ISSratio5 = scalar, U16, 669, ":1", 0.001, 0.00000, 0.400, 7.500, 3, ; ISS to tach ratio in Fifth
ISSratio6 = scalar, U16, 671, ":1", 0.001, 0.00000, 0.400, 7.500, 3, ; ISS to tach ratio in Sixth
ISSratio7 = scalar, U16, 673, ":1", 0.001, 0.00000, 0.400, 7.500, 3, ; ISS to tach ratio in Seventh
ISSratio8 = scalar, U16, 675, ":1", 0.001, 0.00000, 0.400, 7.500, 3, ; ISS to tach ratio in Eighth
burnoutMaxGear = scalar, U08, 677, "", 1.00000, 0.00000, 0, 8, 0 ; maximum gear for burnout mode (follow lever)
NAGrpmTol = scalar, U08, 678, "", 1.00000, 0.00000, 0, 50, 0 ; pad210 in in2ram
NAGout1 = scalar, U08, 679, "", 1.00000, 0.00000, 0, 255, 0 ; pad29 in in2ram
NAGout2 = scalar, U08, 680, "", 1.00000, 0.00000, 0, 255, 0 ; pad28 in in2ram
NAGout3 = scalar, U08, 681, "", 1.00000, 0.00000, 0, 255, 0 ; pad27 in in2ram
NAGwait = scalar, U16, 682, "", 1.00000, 0.00000, 0, 5000, 0 ; pad26 in in2ram
NAGretard = scalar, U08, 684, "", 1.00000, 0.00000, 0, 255, 0 ; pad24 in in2ram
ignoreLever = bits, U08, 685, [0:0], "Use lever inputs", "Assume always in Drive"
#if LOAD_KPA
decel_Load = scalar, U16, 686, "kPa", 0.10000, 0.00000, 0, 1000, 1 ;
#else
decel_Load = scalar, U16, 686, "%", 0.10000, 0.00000, 0, 1000, 1 ;
#endif
inter_ratio = scalar, U16, 688, "", 0.00100, 0.00000, 0.125, 8.000, 3 ; speedo decay factor
gear_tolerance = scalar, U08, 690, "%"' 1.00000, 0.00000, 0, 100, 0 ; gear ratio tolerance for declaring an estimated gear
#if LOAD_KPA
RPMloadDWNbins = array, S16, 691, [8], "kPa", 0.10000, 0.00000, 0, 300, 0 ; Load bins for downshifting
RPMloadUPbins = array, S16, 707, [8], "kPa", 0.10000, 0.00000, 0, 300, 0 ; Load bins for upshifting
#else
RPMloadDWNbins = array, S16, 691, [8], "%", 0.10000, 0.00000, 0, 300, 0 ; Load bins for downshifting
RPMloadUPbins = array, S16, 707, [8], "%", 0.10000, 0.00000, 0, 300, 0 ; Load bins for upshifting
#endif
; RPMshiftTable[14][8]= array, U16, 723, [14x8], "rpm", 1.00000, 0.00000, 0, 9000, 0 ; Load bins for downshifting
RPMshiftTable12 = array, U16, 723, [8], "rpm", 1.00000, 0.00000, 0, 9000, 0 ; RPM for 1 to 2 shifting
RPMshiftTable23 = array, U16, 739, [8], "rpm", 1.00000, 0.00000, 0, 9000, 0 ; RPM for 2 to 3 shifting
RPMshiftTable34 = array, U16, 755, [8], "rpm", 1.00000, 0.00000, 0, 9000, 0 ; RPM for 3 to 4 shifting
RPMshiftTable45 = array, U16, 771, [8], "rpm", 1.00000, 0.00000, 0, 9000, 0 ; RPM for 4 to 5 shifting
RPMshiftTable56 = array, U16, 787, [8], "rpm", 1.00000, 0.00000, 0, 9000, 0 ; RPM for 5 to 6 shifting
RPMshiftTable67 = array, U16, 803, [8], "rpm", 1.00000, 0.00000, 0, 9000, 0 ; RPM for 6 to 7 shifting
RPMshiftTable78 = array, U16, 819, [8], "rpm", 1.00000, 0.00000, 0, 9000, 0 ; RPM for 7 to 8 shifting
RPMshiftTable21 = array, U16, 835, [8], "rpm", 1.00000, 0.00000, 0, 9000, 0 ; RPM for 2 to 1 shifting
RPMshiftTable32 = array, U16, 851, [8], "rpm", 1.00000, 0.00000, 0, 9000, 0 ; RPM for 3 to 2 shifting
RPMshiftTable43 = array, U16, 867, [8], "rpm", 1.00000, 0.00000, 0, 9000, 0 ; RPM for 4 to 3 shifting
RPMshiftTable54 = array, U16, 883, [8], "rpm", 1.00000, 0.00000, 0, 9000, 0 ; RPM for 5 to 4 shifting
RPMshiftTable65 = array, U16, 899, [8], "rpm", 1.00000, 0.00000, 0, 9000, 0 ; RPM for 6 to 5 shifting
RPMshiftTable76 = array, U16, 915, [8], "rpm", 1.00000, 0.00000, 0, 9000, 0 ; RPM for 7 to 6 shifting
RPMshiftTable87 = array, U16, 931, [8], "rpm", 1.00000, 0.00000, 0, 9000, 0 ; RPM for 8 to 7 shifting
CANVSSadj = scalar, U16, 947, "", 0.00100, 0.00000, 0, 20, 3 ; adjustment for VSS over CANbus
canPW1outpc = scalar, U16, 949, "", 1.00000, 0.00000, 0, 1023, 0 ; CANbus offset for outpc PW1 (2)
canRPMoutpc = scalar, U16, 951, "", 1.00000, 0.00000, 0, 1023, 0 ; CANbus offset for outpc RPM (6)
canMAPoutpc = scalar, U16, 953, "", 1.00000, 0.00000, 0, 1023, 0 ; CANbus offset for outpc MAP (18)
canTPSoutpc = scalar, U16, 955, "", 1.00000, 0.00000, 0, 1023, 0 ; CANbus offset for outpc TPS (24)
canVBATToutpc = scalar, U16, 957, "", 1.00000, 0.00000, 0, 1023, 0 ; CANbus offset for outpc vBatt (26)
canPW1outmsg = scalar, U08, 959, "", 1.00000, 0.00000, 0, 255, 0 ; CANbus offset for outmsg PW1 (0)
canRPMoutmsg = scalar, U08, 960, "", 1.00000, 0.00000, 0, 255, 0 ; CANbus offset for outmsg RPM (2)
canMAPoutmsg = scalar, U08, 961, "", 1.00000, 0.00000, 0, 255, 0 ; CANbus offset for outmsg MAP (4)
canTPSoutmsg = scalar, U08, 962, "", 1.00000, 0.00000, 0, 255, 0 ; CANbus offset for outmsg TPS (6)
canVBATToutmsg = scalar, U08, 963, "", 1.00000, 0.00000, 0, 255, 0 ; CANbus offset for outmsg vBatt (8)
canSPEEDOoutmsg = scalar, U08, 964, "", 1.00000, 0.00000, 0, 255, 0 ; CANbus offset for outmsg speedo (-)
VSS_ISR = bits, U08, 965, [0:0], "Use old VSS ISR", "Use new beta VSS ISR"
canVSSoffset = scalar, U16, 966, "", 1.00000, 0.00000, 0, 1023, 0 ; offset in outpc for CANbus speed
hyst_delay = scalar, U08, 968, "sec", 0.10000, 0.00000, 0, 250, 1 ; Hysteresis delay after shifting
pad26 = scalar, U08, 969, "", 1.00000, 0.00000, 0, 255, 0 ; pad byte in in2ram
pad25 = scalar, U08, 970, "", 1.00000, 0.00000, 0, 255, 0 ; pad byte in in2ram
pad24 = scalar, U08, 971, "", 1.00000, 0.00000, 0, 255, 0 ; pad byte in in2ram
pad23 = scalar, U08, 972, "", 1.00000, 0.00000, 0, 255, 0 ; pad byte in in2ram
pad22 = scalar, U08, 973, "", 1.00000, 0.00000, 0, 255, 0 ; pad byte in in2ram
pad21 = scalar, U08, 974, "", 1.00000, 0.00000, 0, 255, 0 ; pad byte in in2ram
pad20 = scalar, U08, 975, "", 1.00000, 0.00000, 0, 255, 0 ; pad byte in in2ram
; ****************************************************************** end in2ram *********************
; pageSize = 975 + U08 = 976
[Menu]
;----------------------------------------------------------------------------
; There are five pre-defined values that may be used to define your menus.
; The first four allow access to the "standard" dialog boxes, the last one
; merely draws a separator (horizontal line) in the menu.
;
; std_constants
; std_enrichments
; std_realtime
; std_warmup
; std_accel
;
; std_separator
;
; If you use any of the std_constants, std_enrichments or std_warmup
; editors, they may be optionally suffixed with a page number (only
; useful for multi-page code variants), which causes them to edit the
; specified page. If you leave off the page specifier, they edit logical
; page one as specified in the Constants section.
;
; There are four special menu names, which when used append to the standard
; menus of the same name instead of creating a new one. The menu names
; are "File", "Communications", "Tools" and "Help".
;
;----------------------------------------------------------------------------
menuDialog = main
menu = "Hard&ware"
subMenu = hardwareMenu, "&Controller Hardware", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = transMenu, "&Transmission Type", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = menus, "&Menu Display"
menuDialog = main
menu = "&General Settings"
subMenu = revlimits, "&Rev Limits", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = gearRatios, "&Gear Ratios", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = shiftFactors, "&Shift Factors"
subMenu = shiftPressures, "Shift &Line Pressure Settings", 0, { menuDisplay == 0 || menuDisplay == 1 }
subMenu = LPFactors, "PNR Line Pressure &Factors", 0, { menuDisplay == 0 || menuDisplay == 1 }
subMenu = throttleFactors,"T&hrottle and Load Factors", 0, { menuDisplay == 0 || menuDisplay == 1 }
subMenu = PWMSettings, "Solenoid &PWM Setup", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = retards, "Timing-Fuel &Adjustments", 0, { CAN_enabled }
subMenu = internalSlip, "In&ternal Slip Adjustments", 0, { SlipOptn == 1 }
subMenu = idleAdj, "I&dle-Up Adjustment", 0, { menuDisplay == 0 || menuDisplay == 1 }
subMenu = VSSSettings, "&VSS Setup", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = MPGSettings, "&MPG Settings", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = stdIN, "Standard &Inputs/Outputs Configuration", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = Dither, "P&WM Refresh/Dither", 0, { (menuDisplay == 0 || menuDisplay == 2) && (sp3_mode == 0) }
subMenu = ISSSettings, "ISS/&non-CAN Tach Setup", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = errorCheck, "&Error Behavior"
menuDialog = main
menu = "Shift &Input Patterns", { (menuDisplay == 0 || menuDisplay == 2)}
subMenu = leverType, "Lever and Shift Buttons Configuration"
subMenu = std_separator ;----------------------------------------------
subMenu = InPatternGP, "&Input Pattern in Park", 0, {mlever_mode==0 && (ignoreLever == 0) && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = InPatternGN, "&Input Pattern in Neutral", 0, {mlever_mode==0 && (ignoreLever == 0) && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = InPatternGR, "&Input Pattern in Reverse", 0, {mlever_mode==0 && (ignoreLever == 0) && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = InPatternG1, "&Input Pattern in 1st", 0, {mlever_mode==0 && (ignoreLever == 0) && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = InPatternG2, "&Input Pattern in 2nd", 0, {mlever_mode==0 && (ignoreLever == 0) && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = InPatternG3, "&Input Pattern in 3rd", 0, {mlever_mode==0 && (ignoreLever == 0) && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = InPatternG4, "&Input Pattern in 4th", 0, {mlever_mode==0 && (ignoreLever == 0) && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = InPatternG5, "&Input Pattern in 5th", 0, {mlever_mode==0 && (ignoreLever == 0) && num_gears > 4 && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = InPatternG6, "&Input Pattern in 6th", 0, {mlever_mode==0 && (ignoreLever == 0) && num_gears > 5 && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = InPatternG7, "&Input Pattern in 7th", 0, {mlever_mode==0 && (ignoreLever == 0) && num_gears > 6 && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = InPatternG8, "&Input Pattern in 8th", 0, {mlever_mode==0 && (ignoreLever == 0) && num_gears > 7 && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = InPattern1b, "Configure I&nputs", 0, {mlever_mode==1 && (ignoreLever == 0) && (menuDisplay == 0 || menuDisplay == 2) }
menuDialog = main
menu = "S&hift Output Patterns", { (menuDisplay == 0 || menuDisplay == 2) && (NAGmode == 0) }
subMenu = outPatternGP, "Output Pattern in &Park", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = outPatternGN, "Output Pattern in &Neutral", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = outPatternGR, "Output Pattern in &Reverse", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = outPatternG1, "Output Pattern in &1st", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = outPatternG2, "Output Pattern in &2nd", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = outPatternG3, "Output Pattern in &3rd", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = outPatternG4, "Output Pattern in &4th", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = outPatternG5, "Output Pattern in &5th", 0, {num_gears > 4 && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = outPatternG6, "Output Pattern in &6th", 0, {num_gears > 5 && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = outPatternG7, "Output Pattern in &7th", 0, {num_gears > 6 && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = outPatternG8, "Output Pattern in &8th", 0, {num_gears > 7 && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = std_separator ;----------------------------------------------
subMenu = solCup, "Output 3 &UpShift Behavior", 0, { PWM_enable3 && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = solCdown, "Output 3 &DownShift Behavior", 0, { PWM_enable3 && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = clutch0, "Clutc&h Pattern (SP0/Output 8)", 0, {sp0_mode == 4 && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = clutch1, "Clutch &Pattern (SP1/Output 7)", 0, {sp1_mode == 4 && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = clutchTCC1, "Clutch &TCC Activation (SP1/Output 7)", 0, {sp1_mode == 4 && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = clutch2, "Clutch P&attern (SP2/Output 4)", 0, {sp2_mode == 4 && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = clutchTCC2, "Clutch TCC &Activation (SP1/Output 7)", 0, {sp2_mode == 4 && (menuDisplay == 0 || menuDisplay == 2) }
subMenu = clutch3, "Clut&ch Pattern (SP3/Output 9)", 0, {sp3_mode == 4 && (menuDisplay == 0 || menuDisplay == 2) }
menuDialog = main
menu = "TCC Setti&ngs"
subMenu = TCCSettings, "&TCC Control Limits", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = TCCupshift, "TCC &UpShift Settings", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = LUFparams, "T&CC LOAD/PWM% Parameters", 0, {TCC_PWM == 1 && (menuDisplay == 0 || menuDisplay == 1)}
menuDialog = main
menu = "T&ables", { menuDisplay == 0 || menuDisplay == 1 }
subMenu = geartable1, "&Gear VSS + Load Auto-Shift Table 1", 0, { (shift_mode != 3) && (menuDisplay == 0 || menuDisplay == 1) }
subMenu = geartable2, "G&ear VSS + Load Auto-Shift Table 2", 0, { (shift_mode != 3) && (menuDisplay == 0 || menuDisplay == 1) }
subMenu = pctable, "&Pressure Control Table", 0, { sp3_mode == 0 && (menuDisplay == 0 || menuDisplay == 1) }
subMenu = sp0table, "&Spare Port 0 Table", 0, { sp0_mode > 0 && (menuDisplay == 0 || menuDisplay == 1) }
subMenu = sp3table, "Sp&are Port 3 Table", 0, { sp3_mode > 0 && (menuDisplay == 0 || menuDisplay == 1) }
subMenu = TPSrpmtable, "&Load table TPS by RPM", 0, { menuDisplay == 0 || menuDisplay == 1 }
menuDialog = main
menu = "&Bins", { menuDisplay == 0 || menuDisplay == 1 }
subMenu = loadBins1, "Edit &MAP Bins for shift table 1", 0, { menuDisplay == 0 || menuDisplay == 1 }
subMenu = mphBins1, "Edit &Speed Bins 1 for shift table 1", 0, { menuDisplay == 0 || menuDisplay == 1 }
subMenu = loadBins2, "Edit M&AP Bins for shift table 2", 0, { menuDisplay == 0 || menuDisplay == 1 }
subMenu = mphBins2, "Edit S&peed Bins for shift table 2", 0, { menuDisplay == 0 || menuDisplay == 1 }
subMenu = loadBins3, "Edit MAP &Bins for PC PWM% table", 0, { sp3_mode == 0 && (menuDisplay == 0 || menuDisplay == 1) }
subMenu = mphBins3, "Edit Speed B&ins for PC PWM% table", 0, { sp3_mode == 0 && (menuDisplay == 0 || menuDisplay == 1) }
subMenu = tempBins, "Edit &Temperature Bins", 0, { menuDisplay == 0 || menuDisplay == 1 }
menuDialog = main
menu = "L&ED Patterns", { menuDisplay == 0 || menuDisplay == 2 }
subMenu = Gear1pattern, "&1st LED Pattern", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = Gear2pattern, "&2nd LED Pattern", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = Gear3pattern, "&3rd LED Pattern", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = Gear4pattern, "&4th LED Pattern", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = Gear5pattern, "&5th LED Pattern", 0, { num_gears > 4 && (menuDisplay == 0 || menuDisplay == 2 )}
subMenu = Gear6pattern, "&6th LED Pattern", 0, { num_gears > 5 && (menuDisplay == 0 || menuDisplay == 2 )}
subMenu = Gear7pattern, "&7th LED Pattern", 0, { num_gears > 6 && (menuDisplay == 0 || menuDisplay == 2 )}
subMenu = Gear8pattern, "&8th LED Pattern", 0, { num_gears > 7 && (menuDisplay == 0 || menuDisplay == 2 )}
subMenu = GearPpattern, "&Park LED Pattern", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = GearNpattern, "&Neutral LED Pattern", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = GearRpattern, "&Reverse LED Pattern", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = GearLEDflash, "&Flash LEDs in Manual", 0, { menuDisplay == 0 || menuDisplay == 2 }
menuDialog = main
menu = "&Tuning", { menuDisplay == 0 || menuDisplay == 1 }
subMenu = gearmap, "&Gear Shift Table1 (default)", 0, { menuDisplay == 0 || menuDisplay == 1 }
subMenu = gearmap2, "Gear S&hift Table2 (alternate)", 0, { menuDisplay == 0 || menuDisplay == 1 }
subMenu = pcmap, "&Pressure Control Table", 0, { sp3_mode == 0 && (menuDisplay == 0 || menuDisplay == 1) }
subMenu = sp0map, "Spare Port &0 Table", 0, { sp0_mode > 0 && (menuDisplay == 0 || menuDisplay == 1)}
subMenu = sp3map, "Spare Port &3 Table", 0, { sp3_mode > 0 && (menuDisplay == 0 || menuDisplay == 1)}
subMenu = TPSloadmenu, "Load table TPS by RPM", 0, { menuDisplay == 0 || menuDisplay == 1 }
subMenu = PCtemp_adjust, "&Line Pressure vs. Temp.", 0, { menuDisplay == 0 || menuDisplay == 1 }
subMenu = SpeedoCorrection,"Sp&eedometer Correction", 0, { menuDisplay == 0 || menuDisplay == 1 && ( !CAN_enabled || canVSSoffset == 0 ) }
subMenu = shiftComp, "Shift &Completion Delay", 0, { menuDisplay == 0 || menuDisplay == 1 }
subMenu = SparePort1PWM0, "&Spare Port 1 PWM ON (load)", 0, { sp1_index_mode == 0 && (menuDisplay == 0 || menuDisplay == 1)}
subMenu = SparePort2PWM0, "Sp&are Port 2 PWM ON (load)", 0, { sp2_index_mode == 0 && (menuDisplay == 0 || menuDisplay == 1)}
subMenu = SparePort1PWM1, "Spa&re Port 1 PWM ON (speed)", 0, { sp1_index_mode == 1 && (menuDisplay == 0 || menuDisplay == 1)}
subMenu = SparePort2PWM1, "Spare P&ort 2 PWM ON (speed)", 0, { sp2_index_mode == 1 && (menuDisplay == 0 || menuDisplay == 1)}
subMenu = SparePort1PWM2, "Spare Por&t 1 PWM ON (RPM)", 0, { sp1_index_mode == 2 && (menuDisplay == 0 || menuDisplay == 1)}
subMenu = SparePort2PWM2, "Spare Port &2 PWM ON (RPM)", 0, { sp2_index_mode == 2 && (menuDisplay == 0 || menuDisplay == 1)}
subMenu = SparePort1PWM3, "Spare Port &1 PWM ON (temper.)", 0, { sp1_index_mode == 3 && (menuDisplay == 0 || menuDisplay == 1)}
subMenu = SparePort2PWM3, "Spare Port 2 PWM O&N (temper.)", 0, { sp2_index_mode == 3 && (menuDisplay == 0 || menuDisplay == 1)}
subMenu = SparePort1PWM4, "Spare Port 1 PWM ON (&gear)", 0, { sp1_index_mode == 4 && (menuDisplay == 0 || menuDisplay == 1)}
subMenu = SparePort2PWM4, "Spare Port 2 PWM ON (ge&ar)", 0, { sp2_index_mode == 4 && (menuDisplay == 0 || menuDisplay == 1)}
menuDialog = main
menu = "Tach + &Load Shifts", { shift_mode == 3 }
subMenu = RPMshift12, "1st -> 2nd Upshift Table"
subMenu = RPMshift23, "2nd -> 3rd Upshift Table"
subMenu = RPMshift34, "3rd -> 4th Upshift Table"
subMenu = RPMshift45, "4th -> 5th Upshift Table", 0, { num_gears > 4 }
subMenu = RPMshift56, "5th -> 6th Upshift Table", 0, { num_gears > 5 }
subMenu = RPMshift67, "6th -> 7th Upshift Table", 0, { num_gears > 6 }
subMenu = RPMshift78, "7th -> 8th Upshift Table", 0, { num_gears > 7 }
subMenu = std_separator ;----------------------------------------------
subMenu = RPMshift21, "2nd -> 1st Downshift Table"
subMenu = RPMshift32, "3st -> 2nd Downshift Table"
subMenu = RPMshift43, "4th -> 3rd Downshift Table"
subMenu = RPMshift54, "5th -> 4th Downshift Table", 0, { num_gears > 4 }
subMenu = RPMshift65, "6th -> 5th Downshift Table", 0, { num_gears > 5 }
subMenu = RPMshift76, "7th -> 6th Downshift Table", 0, { num_gears > 6 }
subMenu = RPMshift87, "8th -> 7th Downshift Table", 0, { num_gears > 7 }
menuDialog = main
menu = "&Spare Ports", { menuDisplay == 0 || menuDisplay == 2 }
subMenu = sprUse, "Spare Ports &Function"
subMenu = spareport0, "Speedo Output on Spare Port &0",0, { sp0_mode == 0 }
subMenu = sp0PWMdia, "&Spare Port 0 PWM Setup", 0, { sp0_mode > 0 }
subMenu = spareport1, "&User Spare Port 1", 0, { sp1_mode == 0 }
subMenu = sp1PWMdia, "Sp&are Port 1 PWM Setup"
subMenu = sp1PWMvalues, "Spar&e Port 1 PWM Percent"
subMenu = sp1INDX, "Spare P&ort 1 PWM Index"
subMenu = spareport2, "U&ser Spare Port 2", 0, { sp2_mode == 0 }
subMenu = sp2PWMdia, "Spa&re Port 2 PWM Setup", 0, { sp2_mode != 5 }
subMenu = sp2PWMvalues, "Spare &Port 2 PWM Percent", 0, { sp2_mode != 5 }
subMenu = sp2INDX, "Spare Por&t 2 PWM Index", 0, { sp2_mode != 5 }
subMenu = sp2geardc, "Spare Port 2 &Gear Mode Duty Cycle", 0, { sp2_mode == 5 }
subMenu = sp2gearfreq, "Spare Port 2 Gear Per&iod", 0, { sp2_mode == 5 }
subMenu = sp3PWMdia, "Spare Port &3 PWM Setup", 0, { sp3_mode > 0 }
; menuDialog = main
; menu = "SPI De&vices"
; subMenu = spiEnable, "Enable/Disable SPI Devices"
; subMenu = std_separator ;----------------------------------------------
; subMenu = spiD0configBR, "Device 0 Baud Rate", 0, { spi_D0enable }
; subMenu = spiD0configCR1, "Device 0 SPI0CR1", 0, { spi_D0enable }
; subMenu = spiD0configCR2, "Device 0 SPI0CR2", 0, { spi_D0enable }
; subMenu = std_separator ;----------------------------------------------
; subMenu = spiD1configBR, "Device 1 Baud Rate", 0, { spi_D1enable }
; subMenu = spiD1configCR1, "Device 1 SPI0CR1", 0, { spi_D1enable }
; subMenu = spiD1configCR2, "Device 1 SPI0CR2", 0, { spi_D1enable }
; subMenu = std_separator ;----------------------------------------------
; subMenu = spiD2configBR, "Device 2 Baud Rate", 0, { spi_D2enable }
; subMenu = spiD2configCR1, "Device 2 SPI0CR1", 0, { spi_D2enable }
; subMenu = spiD2configCR2, "Device 2 SPI0CR2", 0, { spi_D2enable }
; subMenu = std_separator ;----------------------------------------------
; subMenu = spiD3configBR, "Device 3 Baud Rate", 0, { spi_D3enable }
; subMenu = spiD3configCR1, "Device 3 SPI0CR1", 0, { spi_D3enable }
; subMenu = spiD3configCR2, "Device 3 SPI0CR2", 0, { spi_D3enable }
menuDialog = main
menu = "T&ools"
subMenu = std_ms2gentherm, "&Calibrate T&hermistor Table..."
subMenu = canconfig, "C&ANbus Configuration", 0, { menuDisplay == 0 || menuDisplay == 2 }
subMenu = noCANload, "non-CANbus &Load Calibration", 0, { !CAN_enabled }
subMenu = canOffsetOutpc, "CA&Nbus offsets OUTPC", 0, { CAN_enabled && !can_testout}
subMenu = canOffsetOutmsg, "CAN&bus offsets OUTMSG", 0, { CAN_enabled && can_testout}
subMenu = uTCUpins, "µTCU Pin Assignments", 0, { hardware == 1 }
subMenu = debug, "&Debugging Input Variables"
menu = "&Help"
subMenu = GPIOpins, "&GPIO Pin Assignments", 0, { hardware == 0 }
subMenu = helpGeneral, "&MegaShift Info"
;-------------------------------------------------------------------------------
[UserDefined]
dialog = menus, "Menu Display"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#wm"
field = "Show Menus", menuDisplay
field = "Chose which menus to display in"
field = "TunerStudio. Has no effect in controller."
dialog = hardwareMenu, "Hardware"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#wc"
field = "#Controller Hardware", hardware
field = "Changes requires power cycle on controller."
field = "Be sure to burn change before power cycle."
dialog = transMenu, "Transmission Hardware"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#wt"
field = "Transmission Type", NAGmode
dialog = revlimits, "Rev Limits"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#gr"
field = "#Rev Limits"
field = "#(shift not allowed if it will"
field = "#result in exceeding these limits)"
field = "RPM Checking", rpm_check
field = "Lower Rev Limit", under_rev_limit, { rpm_check }
field = "Upper Rev Limit", rpm_limit, { rpm_check }
field = "Force Auto Mode", forceAUTOoptn
dialog = errorCheck, "Error Behavior"
topicHelp="http://www.msgpio.com/manuals/mshift/V5tune.html#ge"
field = "On error", error_check
field = "If set, errors are displayed in"
field = "'Codes' indicator below,"
field = "in the Error gauge, and datalog."
field = "Otherwise they are ignored."
field = "Lever Error Behavior", leverErr, { ignoreLever == 0 }
field = "Lever Error Delay", lever_timer, { (ignoreLever == 0) && (leverErr == 1) }
dialog = VSSSettings, "Vehicle Speed Sensor Setup"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#gv"
field = "VSS Code Type", VSS_ISR
field = "Number of VSS Teeth", num_teeth, { NAGmode < 2 }
field = "VSS Location", VSS_location, { NAGmode < 2 }
field = "Input Capture Edge", InputCaptureEdge
field = "VSS Input Masking", vss_mask
field = "VSS Smoothing Factor", VSSsmoothFactor
field = "Max. Vehicle Speed", maxSpeed
field = "Min. Vehicle Speed", min_speed
field = "Max. Errors to Reset", vss_skip_max
field = "Reset filter off", resetTime
field = "Axle Ratio", axle_ratio
field = "Intermediate Ratio", inter_ratio
field = "Tire Diameter", tire_diam
field = "4WD Speedo Correction", FWD_factor, { FWD_cfg && !In4_cfg}
field = "!Any changes to above require"
field = "!a restart to take effect"
dialog = shiftPressures, "Max. Shift Line Pressure Settings"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#gl"
field = "Upshift to 2nd", maxUPpressure2
field = "Upshift to 3rd", maxUPpressure3
field = "Upshift to 4th", maxUPpressure4
field = "Upshift to 5th", maxUPpressure5, { num_gears > 4}
field = "Upshift to 6th", maxUPpressure6, { num_gears > 5}
field = "Upshift to 7th", maxUPpressure7, { num_gears > 6}
field = "Upshift to 8th", maxUPpressure8, { num_gears > 7}
field = "Downshift to 1st", maxDWNpressure1
field = "Downshift to 2nd", maxDWNpressure2
field = "Downshift to 3rd", maxDWNpressure3
field = "Downshift to 4th", maxDWNpressure4, { num_gears > 4}
field = "Downshift to 5th", maxDWNpressure5, { num_gears > 5}
field = "Downshift to 6th", maxDWNpressure6, { num_gears > 6}
field = "Downshift to 7th", maxDWNpressure7, { num_gears > 7}
dialog = MPGSettings, "MPG Settings"
topicHelp = "http://www.msgpio.com/manuals/mshift/V41tune.html#gv"
field = "Injector Flow Rate", inj_flow
field = "Injector Open Time", open_time
field = "Fuel Density", fuel_density
field = "Number of Squirts", nSquirts
field = "#divide by 2 if alternating"
dialog = ISSSettings, "ISS/non-CANbus Tach Settings"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#gn"
field = "!ISS/Tach Input Usage", ic2_usage
field = "TCC/Trans Slip Reporting", SlipOptn, { ic2_usage == 1 }
field = "Pulses/Revolution", iss_divider, { (ic2_usage > 0) && (NAGmode != 3) }
field = "Input Mask", iss_mask, { ic2_usage > 0 }
field = "!Input Capture Edge", ic2_edge, { ic2_usage > 0 }
field = "Tach/ISS Ratio in Reverse ",ISSratioR, { ic2_usage == 1 }
field = "Tach/ISS Ratio in 1st", ISSratio1, { ic2_usage == 1 }
field = "Tach/ISS Ratio in 2nd", ISSratio2, { ic2_usage == 1 }
field = "Tach/ISS Ratio in 3rd", ISSratio3, { ic2_usage == 1 }
field = "Tach/ISS Ratio in 4th", ISSratio4, { ic2_usage == 1 }
field = "Tach/ISS Ratio in 5th", ISSratio5, { (ic2_usage == 1) && (num_gears > 4) }
field = "Tach/ISS Ratio in 6th", ISSratio6, { (ic2_usage == 1) && (num_gears > 5) }
field = "Tach/ISS Ratio in 7th", ISSratio7, { (ic2_usage == 1) && (num_gears > 6) }
field = "Tach/ISS Ratio in 8th", ISSratio8, { (ic2_usage == 1) && (num_gears > 7) }
dialog = retards, "Timing and Fuel Adjustments"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#ga"
field = "Retard only above", Tretard_load, { CAN_enabled }
field = "Upshift Retard", upshift_retard, { CAN_enabled }
field = "Downshift Retard", dwnshift_retard, { CAN_enabled }
field = "2nd Gear Retard", gear2_retard, { CAN_enabled }
field = "3rd Gear Retard", gear3_retard, { CAN_enabled }
field = "4th Gear Retard", gear4_retard, { CAN_enabled }
field = "5th Gear Retard", gear5_retard, { CAN_enabled && num_gears > 4}
field = "6th Gear Retard", gear6_retard, { CAN_enabled && num_gears > 5}
field = "7th Gear Retard", gear7_retard, { CAN_enabled && num_gears > 6}
field = "8th Gear Retard", gear8_retard, { CAN_enabled && num_gears > 7}
dialog = internalSlip, "Internal Slip Adjustments"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#gt"
field = "Slip Based Retard and Fuel Adjustments"
field = "Slip Conditions", SlipConditions
field = "Min. Load for Slip Based Retard", Sretard_load, { ic2_usage == 1 }
field = "Retard When Slip Detected", Slip_adv, { ic2_usage == 1 }
field = "Fuel Adjustment When Slip Detected", Slip_fuel, { ic2_usage == 1 }
field = "Min. Slip for Adjustments", Slip_threshold, { ic2_usage == 1 }
field = "Slip Delay", slipDelay, { ic2_usage == 1 }
dialog = idleAdj, "Idle-Up Adjustments"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#gd"
field = "#Adjustments applied ONLY if"
field = "#stopped in 1st gear with TPS=0"
field = "Timing Adjustment", AdvAdjngear
field = "Idle Valve Adjustment", IACAdjngear, { CAN_enabled }
field = "in % if PWM Idle Valve, in steps if stepper IAC."
field = "Can be positive or negative."
dialog = gearRatios, "Gear Ratios"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#gg"
field = "Number of forward gears", num_gears
field = "First Gear", gear1, { (NAGmode == 0) || (NAGmode == 4)}
field = "Second Gear", gear2, { (NAGmode == 0) || (NAGmode == 4)}
field = "Third Gear", gear3, { (NAGmode == 0) || (NAGmode == 4)}
field = "Fourth Gear", gear4, { (NAGmode == 0) || (NAGmode == 4)}
field = "Fifth Gear", gear5, { (num_gears > 4) && ((NAGmode == 0) || (NAGmode == 4)) }
field = "Sixth Gear", gear6, { (num_gears > 5) && ((NAGmode == 0) || (NAGmode == 4)) }
field = "Seventh Gear", gear7, { (num_gears > 6) && ((NAGmode == 0) || (NAGmode == 4)) }
field = "Eighth Gear", gear8, { (num_gears > 7) && ((NAGmode == 0) || (NAGmode == 4)) }
field ="#"
field = "Reverse Gear", gearR, { (NAGmode == 0) || (NAGmode == 4)}
dialog = Dither, "PWM Refresh and Dithering"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#gw"
field = "PWM Refresh Interval", refresh_int
field = "PWM Refresh Duration", refresh_dur
field = "PC Dither Interval", dither_intPC
field = "PC Dither Duration", dither_durPC
dialog = outPatternGP, "Output Pattern in Park"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#h"
field = "Output 1", Out11
field = "Output 2", Out21
field = "Output 3", Out31
field = "Output 4", Out41, { sp2_mode == 3 }
field = "Output 5", Out51, { spareInputs==1 || spareInputs==2}
field = "Output 6", Out61, { spareInputs==1 }
field = "Output 7", Out71, { sp1_mode == 3 }
field = "Output 8", Out81, { sp0_mode == 3 }
field = "Output 9", Out91, { sp3_mode == 3 }
field = "Must be unique for each gear."
field = "Change only when off-line."
dialog = outPatternGN, "Output Pattern in Neutral"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#h"
field = "Output 1", Out12
field = "Output 2", Out22
field = "Output 3", Out32
field = "Output 4", Out42, { sp2_mode == 3 }
field = "Output 5", Out52, { spareInputs==1 || spareInputs==2 }
field = "Output 6", Out62, { spareInputs==1 }
field = "Output 7", Out72, { sp1_mode == 3 }
field = "Output 8", Out82, { sp0_mode == 3 }
field = "Output 9", Out92, { sp3_mode == 3 }
field = "Change only when off-line."
dialog = outPatternGR, "Output Pattern in Reverse"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#h"
field = "Output 1", Out13
field = "Output 2", Out23
field = "Output 3", Out33
field = "Output 4", Out43, { sp2_mode == 3 }
field = "Output 5", Out53, { spareInputs==1 || spareInputs==2 }
field = "Output 6", Out63, { spareInputs==1 }
field = "Output 7", Out73, { sp1_mode == 3 }
field = "Output 8", Out83, { sp0_mode == 3 }
field = "Output 9", Out93, { sp3_mode == 3 }
field = "Change only when off-line."
dialog = outPatternG1, "Output Pattern in 1st"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#h"
field = "Output 1", Out14
field = "Output 2", Out24
field = "Output 3", Out34
field = "Output 4", Out44, { sp2_mode == 3 }
field = "Output 5", Out54, { spareInputs==1 || spareInputs==2 }
field = "Output 6", Out64, { spareInputs==1 }
field = "Output 7", Out74, { sp1_mode == 3 }
field = "Output 8", Out84, { sp0_mode == 3 }
field = "Output 9", Out94, { sp3_mode == 3 }
field = "Must be unique for each forward gear."
field = "Change only when off-line."
dialog = outPatternG2, "Output Pattern in 2nd"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#h"
field = "Output 1", Out15
field = "Output 2", Out25
field = "Output 3", Out35
field = "Output 4", Out45, { sp2_mode == 3 }
field = "Output 5", Out55, { spareInputs==1 || spareInputs==2 }
field = "Output 6", Out65, { spareInputs==1 }
field = "Output 7", Out75, { sp1_mode == 3 }
field = "Output 8", Out85, { sp0_mode == 3 }
field = "Output 9", Out95, { sp3_mode == 3 }
field = "Must be unique for each forward gear."
field = "Change only when off-line."
dialog = outPatternG3, "Output Pattern in 3rd"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#h"
field = "Output 1", Out16
field = "Output 2", Out26
field = "Output 3", Out36
field = "Output 4", Out46, { sp2_mode == 3 }
field = "Output 5", Out56, { spareInputs==1 || spareInputs==2 }
field = "Output 6", Out66, { spareInputs==1 }
field = "Output 7", Out76, { sp1_mode == 3 }
field = "Output 8", Out86, { sp0_mode == 3 }
field = "Output 9", Out96, { sp3_mode == 3 }
field = "Must be unique for each forward gear."
field = "Change only when off-line."
dialog = outPatternG4, "Output Pattern in 4th"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#h"
field = "Output 1", Out17
field = "Output 2", Out27
field = "Output 3", Out37
field = "Output 4", Out47, { sp2_mode == 3 }
field = "Output 5", Out57, { spareInputs==1 || spareInputs==2 }
field = "Output 6", Out67, { spareInputs==1 }
field = "Output 7", Out77, { sp1_mode == 3 }
field = "Output 8", Out87, { sp0_mode == 3 }
field = "Output 9", Out97, { sp3_mode == 3 }
field = "Must be unique for each forward gear."
field = "Change only when off-line."
dialog = outPatternG5, "Output Pattern in 5th"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#h"
field = "Output 1", Out18
field = "Output 2", Out28
field = "Output 3", Out38
field = "Output 4", Out48, { sp2_mode == 3 }
field = "Output 5", Out58, { spareInputs==1 || spareInputs==2 }
field = "Output 6", Out68, { spareInputs==1 }
field = "Output 7", Out78, { sp1_mode == 3 }
field = "Output 8", Out88, { sp0_mode == 3 }
field = "Output 9", Out98, { sp3_mode == 3 }
field = "Must be unique for each forward gear."
field = "Change only when off-line."
dialog = outPatternG6, "Output Pattern in 6th"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#h"
field = "Output 1", Out19
field = "Output 2", Out29
field = "Output 3", Out39
field = "Output 4", Out49, { sp2_mode == 3 }
field = "Output 5", Out59, { spareInputs==1 || spareInputs==2 }
field = "Output 6", Out69, { spareInputs==1 }
field = "Output 7", Out79, { sp1_mode == 3 }
field = "Output 8", Out89, { sp0_mode == 3 }
field = "Output 9", Out99, { sp3_mode == 3 }
field = "Must be unique for each forward gear."
field = "Change only when off-line."
dialog = outPatternG7, "Output Pattern in 7th"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#h"
field = "Output 1", Out110
field = "Output 2", Out210
field = "Output 3", Out310
field = "Output 4", Out410, { sp2_mode == 3 }
field = "Output 5", Out510, { spareInputs==1 || spareInputs==2 }
field = "Output 6", Out610, { spareInputs==1 }
field = "Output 7", Out710, { sp1_mode == 3 }
field = "Output 8", Out810, { sp0_mode == 3 }
field = "Output 9", Out910, { sp3_mode == 3 }
field = "Must be unique for each forward gear."
field = "Change only when off-line."
dialog = outPatternG8, "Output Pattern in 8th"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#h"
field = "Output 1", Out111
field = "Output 2", Out211
field = "Output 3", Out311
field = "Output 4", Out411, { sp2_mode == 3 }
field = "Output 5", Out511, { spareInputs==1 || spareInputs==2 }
field = "Output 6", Out611, { spareInputs==1 }
field = "Output 7", Out711, { sp1_mode == 3 }
field = "Output 8", Out811, { sp0_mode == 3 }
field = "Output 9", Out911, { sp3_mode == 3 }
field = "Must be unique for each forward gear."
field = "Change only when off-line."
dialog = solCup, "Output3 UP SHIFT PWM%"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#h"
field = "Upshift to 2nd", solCupshiftPWM1, { PWM_enable3 }
field = "Upshift to 3rd", solCupshiftPWM2, { PWM_enable3 }
field = "Upshift to 4th", solCupshiftPWM3, { PWM_enable3 }
field = "Upshift to 5th", solCupshiftPWM4, { PWM_enable3 && num_gears > 4}
field = "Upshift to 6th", solCupshiftPWM5, { PWM_enable3 && num_gears > 5}
field = "Upshift to 7th", solCupshiftPWM6, { PWM_enable3 && num_gears > 6}
field = "Upshift to 8th", solCupshiftPWM7, { PWM_enable3 && num_gears > 7}
field = "Set to zero to disable"
field = "different PWM% during shift."
dialog = solCdown, "Output3 DOWN SHIFT PWM%"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#h"
field = "Downshift to 1st", solCdwnshiftPWM1, { PWM_enable3 }
field = "Downshift to 2nd", solCdwnshiftPWM2, { PWM_enable3 }
field = "Downshift to 3rd", solCdwnshiftPWM3, { PWM_enable3 }
field = "Downshift to 4th", solCdwnshiftPWM4, { PWM_enable3 && num_gears > 4}
field = "Downshift to 5th", solCdwnshiftPWM5, { PWM_enable3 && num_gears > 5}
field = "Downshift to 6th", solCdwnshiftPWM6, { PWM_enable3 && num_gears > 6}
field = "Downshift to 7th", solCdwnshiftPWM7, { PWM_enable3 && num_gears > 7}
field = "Set to zero to disable"
field = "different PWM% during shift."
dialog = GearLEDflash, "Flash LEDs in Manual"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#e"
field = "Flash LEDs in Manual Mode", FlashLEDs
dialog = Gear1pattern, "1st Gear LED Pattern"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#e"
field = "LED1", LED11
field = "LED2", LED21
field = "LED3", LED31
field = "LED4", LED41
dialog = Gear2pattern, "2nd Gear LED Pattern"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#e"
field = "LED1", LED12
field = "LED2", LED22
field = "LED3", LED32
field = "LED4", LED42
dialog = Gear3pattern, "3rd Gear LED Pattern"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#e"
field = "LED1", LED13
field = "LED2", LED23
field = "LED3", LED33
field = "LED4", LED43
dialog = Gear4pattern, "4th Gear LED Pattern"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#e"
field = "LED1", LED14
field = "LED2", LED24
field = "LED3", LED34
field = "LED4", LED44
dialog = Gear5pattern, "5th Gear LED Pattern"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#e"
field = "LED1", LED15
field = "LED2", LED25
field = "LED3", LED35
field = "LED4", LED45
dialog = Gear6pattern, "6th Gear LED Pattern"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#e"
field = "LED1", LED16
field = "LED2", LED26
field = "LED3", LED36
field = "LED4", LED46
dialog = Gear7pattern, "7th Gear LED Pattern"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#e"
field = "LED1", LED17
field = "LED2", LED27
field = "LED3", LED37
field = "LED4", LED47
dialog = Gear8pattern, "8th Gear LED Pattern"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#e"
field = "LED1", LED18
field = "LED2", LED28
field = "LED3", LED38
field = "LED4", LED48
dialog = GearNpattern, "Neutral LED Pattern"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#e"
field = "LED1", LEDN1
field = "LED2", LEDN2
field = "LED3", LEDN3
field = "LED4", LEDN4
field = "Alternating Pattern (can be the same as above to not flash)"
field = "LED1", LEDN1alt
field = "LED2", LEDN2alt
field = "LED3", LEDN3alt
field = "LED4", LEDN4alt
dialog = GearPpattern, "Park LED Pattern"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#e"
field = "LED1", LEDP1
field = "LED2", LEDP2
field = "LED3", LEDP3
field = "LED4", LEDP4
field = "Alternating Pattern (can be the same as above to not flash)"
field = "LED1", LEDP1alt
field = "LED2", LEDP2alt
field = "LED3", LEDP3alt
field = "LED4", LEDP4alt
dialog = GearRpattern, "Reverse LED Pattern"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#e"
field = "LED1", LEDR1
field = "LED2", LEDR2
field = "LED3", LEDR3
field = "LED4", LEDR4
field = "Alternating Pattern (can be the same as above to not flash)"
field = "LED1", LEDR1alt
field = "LED2", LEDR2alt
field = "LED3", LEDR3alt
field = "LED4", LEDR4alt
dialog = leverType, "Lever and Shift Buttons Configuration"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#i"
field = "Use lever input", ignoreLever
field = "Manual Lever Mode", mlever_mode, { ignoreLever == 0 }
field = "Max. Lever Position Change",maxDeltaLever, { ignoreLever == 0 }
field = "Digital Voltage Threshold", digital_threshold, { (mlever_mode == 0) && (ignoreLever == 0)}
field = "Overdrive (4th) Selector", In4_OD, { (mlever_mode == 1) && (ignoreLever == 0)}
field = "#Shift Buttons - mode change requires restart"
field = "!Shift Button Mode", shftbut_mode
field = "No buttons pressed", no_button_V, { shftbut_mode == 1 }
field = "Upshift button pressed", up_button_V, { shftbut_mode == 1 }
field = "Downshift button pressed", dwn_button_V, { shftbut_mode == 1 }
field = "Both buttons pressed", both_button_V, { shftbut_mode == 1 }
field = "Button Voltage tolerance", tol_button_V, { shftbut_mode == 1 }
dialog = clutch0, "Clutch Pattern (Spare Port 0/Output 8)"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#lp"
field = "UPSHIFTS"
field = "SP0 on 1 to 2", clutch01u, {sp0_mode == 4}
field = "SP0 on 2 to 3", clutch02u, {sp0_mode == 4}
field = "SP0 on 3 to 4", clutch03u, {sp0_mode == 4}
field = "SP0 on 4 to 5", clutch04u, {sp0_mode == 4 && num_gears > 4}
field = "SP0 on 5 to 6", clutch05u, {sp0_mode == 4 && num_gears > 5}
field = "SP0 on 6 to 7", clutch06u, {sp0_mode == 4 && num_gears > 6}
field = "SP0 on 7 to 8", clutch07u, {sp0_mode == 4 && num_gears > 7}
field = "DOWNSHIFTS"
field = "SP0 on 2 to 1", clutch01d, {sp0_mode == 4}
field = "SP0 on 3 to 2", clutch02d, {sp0_mode == 4}
field = "SP0 on 4 to 3", clutch03d, {sp0_mode == 4}
field = "SP0 on 5 to 4", clutch04d, {sp0_mode == 4 && num_gears > 4}
field = "SP0 on 6 to 5", clutch05d, {sp0_mode == 4 && num_gears > 5}
field = "SP0 on 7 to 6", clutch06d, {sp0_mode == 4 && num_gears > 6}
field = "SP0 on 8 to 7", clutch07d, {sp0_mode == 4 && num_gears > 7}
dialog = clutch3, "Clutch Pattern (Spare Port 3/Output 9)"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#lp"
field = "UPSHIFTS"
field = "SP3 on 1 to 2", clutch31u, {sp3_mode == 4}
field = "SP3 on 2 to 3", clutch32u, {sp3_mode == 4}
field = "SP3 on 3 to 4", clutch33u, {sp3_mode == 4}
field = "SP3 on 4 to 5", clutch34u, {sp3_mode == 4 && num_gears > 4}
field = "SP3 on 5 to 6", clutch35u, {sp3_mode == 4 && num_gears > 5}
field = "SP3 on 6 to 7", clutch36u, {sp3_mode == 4 && num_gears > 6}
field = "SP3 on 7 to 8", clutch37u, {sp3_mode == 4 && num_gears > 7}
field = "DOWNSHIFTS"
field = "SP3 on 2 to 1", clutch31d, {sp3_mode == 4}
field = "SP3 on 3 to 2", clutch32d, {sp3_mode == 4}
field = "SP3 on 4 to 3", clutch33d, {sp3_mode == 4}
field = "SP3 on 5 to 4", clutch34d, {sp3_mode == 4 && num_gears > 4}
field = "SP3 on 6 to 5", clutch35d, {sp3_mode == 4 && num_gears > 5}
field = "SP3 on 7 to 6", clutch36d, {sp3_mode == 4 && num_gears > 6}
field = "SP3 on 8 to 7", clutch37d, {sp3_mode == 4 && num_gears > 7}
dialog = clutch1, "Clutch Pattern (Spare Port 1/Output 7)"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#lp"
field = "UPSHIFTS"
field = "SP1 on 1 to 2", clutch11u, {sp1_mode == 4}
field = "SP1 on 2 to 3", clutch12u, {sp1_mode == 4}
field = "SP1 on 3 to 4", clutch13u, {sp1_mode == 4}
field = "SP1 on 4 to 5", clutch14u, {sp1_mode == 4 && num_gears > 4}
field = "SP1 on 5 to 6", clutch15u, {sp1_mode == 4 && num_gears > 5}
field = "SP1 on 6 to 7", clutch16u, {sp1_mode == 4 && num_gears > 6}
field = "SP1 on 7 to 8", clutch17u, {sp1_mode == 4 && num_gears > 7}
field = "DOWNSHIFTS"
field = "SP1 on 2 to 1", clutch11d, {sp1_mode == 4}
field = "SP1 on 3 to 2", clutch12d, {sp1_mode == 4}
field = "SP1 on 4 to 3", clutch13d, {sp1_mode == 4}
field = "SP1 on 5 to 4", clutch14d, {sp1_mode == 4 && num_gears > 4}
field = "SP1 on 6 to 5", clutch15d, {sp1_mode == 4 && num_gears > 5}
field = "SP1 on 7 to 6", clutch16d, {sp1_mode == 4 && num_gears > 6}
field = "SP1 on 8 to 7", clutch17d, {sp1_mode == 4 && num_gears > 7}
dialog = clutchTCC1, "Clutch Activation with TCC (Spare Port 1/Output 7)"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#lt"
field = "Activation period", TCC_follow_sp1dur,{sp1_mode == 4}
field = "SP1 with TCC in 1st", TCC_follow_sp11, {sp1_mode == 4}
field = "SP1 with TCC in 2nd", TCC_follow_sp12, {sp1_mode == 4}
field = "SP1 with TCC in 3rd", TCC_follow_sp13, {sp1_mode == 4}
field = "SP1 with TCC in 4th", TCC_follow_sp14, {sp1_mode == 4}
field = "SP1 with TCC in 5th", TCC_follow_sp15, {sp1_mode == 4 && num_gears > 4}
field = "SP1 with TCC in 6th", TCC_follow_sp16, {sp1_mode == 4 && num_gears > 5}
field = "SP1 with TCC in 7th", TCC_follow_sp17, {sp1_mode == 4 && num_gears > 6}
field = "SP1 with TCC in 8th", TCC_follow_sp18, {sp1_mode == 4 && num_gears > 7}
dialog = clutch2, "Clutch Pattern (Spare port 2/Output4)"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#lp"
field = "UPSHIFTS"
field = "SP2 on 1 to 2", clutch21u, {sp2_mode == 4}
field = "SP2 on 2 to 3", clutch22u, {sp2_mode == 4}
field = "SP2 on 3 to 4", clutch23u, {sp2_mode == 4}
field = "SP2 on 4 to 5", clutch24u, {sp2_mode == 4 && num_gears > 4}
field = "SP2 on 5 to 6", clutch25u, {sp2_mode == 4 && num_gears > 5}
field = "SP2 on 6 to 7", clutch26u, {sp2_mode == 4 && num_gears > 6}
field = "SP2 on 7 to 8", clutch27u, {sp2_mode == 4 && num_gears > 7}
field = "DOWNSHIFTS"
field = "SP2 on 2 to 1", clutch21d, {sp2_mode == 4}
field = "SP2 on 3 to 2", clutch22d, {sp2_mode == 4}
field = "SP2 on 4 to 3", clutch23d, {sp2_mode == 4}
field = "SP2 on 5 to 4", clutch24d, {sp2_mode == 4 && num_gears > 4}
field = "SP2 on 6 to 5", clutch25d, {sp2_mode == 4 && num_gears > 5}
field = "SP2 on 7 to 6", clutch26d, {sp2_mode == 4 && num_gears > 6}
field = "SP2 on 8 to 7", clutch27d, {sp2_mode == 4 && num_gears > 7}
dialog = clutchTCC2, "Clutch Activation with TCC (Spare Port 2/Output 4)"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#lt"
field = "Activation period", TCC_follow_sp2dur,{sp2_mode == 4}
field = "SP2 with TCC in 1st", TCC_follow_sp21, {sp2_mode == 4}
field = "SP2 with TCC in 2nd", TCC_follow_sp22, {sp2_mode == 4}
field = "SP2 with TCC in 3rd", TCC_follow_sp23, {sp2_mode == 4}
field = "SP2 with TCC in 4th", TCC_follow_sp24, {sp2_mode == 4}
field = "SP2 with TCC in 5th", TCC_follow_sp25, {sp2_mode == 4 && num_gears > 4}
field = "SP2 with TCC in 6th", TCC_follow_sp26, {sp2_mode == 4 && num_gears > 5}
field = "SP2 with TCC in 7th", TCC_follow_sp27, {sp2_mode == 4 && num_gears > 6}
field = "SP2 with TCC in 8th", TCC_follow_sp28, {sp2_mode == 4 && num_gears > 7}
dialog = InPatternGP, "Input Pattern in Park"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#i"
field = "Input 1", In11
field = "Input 2", In21
field = "Input 3", In31
field = "Input 4", In41, { In4_cfg && FWD_cfg }
field = "Must be unique for each gear."
field = "Change only when off-line."
dialog = InPatternGN, "Input Pattern in Neutral"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#i"
field = "Input 1", In12
field = "Input 2", In22
field = "Input 3", In32
field = "Input 4", In42, { In4_cfg && FWD_cfg }
field = "Must be unique for each gear."
field = "Change only when off-line."
dialog = InPatternGR, "Input Pattern in Reverse"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#i"
field = "Input 1", In13
field = "Input 2", In23
field = "Input 3", In33
field = "Input 4", In43, { In4_cfg && FWD_cfg }
field = "Must be unique for each gear."
field = "Change only when off-line."
dialog = InPatternG1, "Input Pattern in 1st"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#i"
field = "Input 1", In14
field = "Input 2", In24
field = "Input 3", In34
field = "Input 4", In44, { In4_cfg && FWD_cfg }
field = "Must be unique for each gear."
field = "Change only when off-line."
dialog = InPatternG2, "Input Pattern in 2nd"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#i"
field = "Input 1", In15
field = "Input 2", In25
field = "Input 3", In35
field = "Input 4", In45, { In4_cfg && FWD_cfg }
field = "Must be unique for each gear."
field = "Change only when off-line."
dialog = InPatternG3, "Input Pattern in 3rd"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#i"
field = "Input 1", In16
field = "Input 2", In26
field = "Input 3", In36
field = "Input 4", In46, { In4_cfg && FWD_cfg }
field = "Must be unique for each gear."
field = "Change only when off-line."
dialog = InPatternG4, "Input Pattern in 4th"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#i"
field = "Input 1", In17
field = "Input 2", In27
field = "Input 3", In37
field = "Input 4", In47, { In4_cfg && FWD_cfg }
field = "Must be unique for each gear."
field = "Change only when off-line."
dialog = InPatternG5, "Input Pattern in 5th"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#i"
field = "Input 1", In18
field = "Input 2", In28
field = "Input 3", In38
field = "Input 4", In48, { In4_cfg && FWD_cfg }
field = "Must be unique for each gear."
field = "Change only when off-line."
dialog = InPatternG6, "Input Pattern in 6th"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#i"
field = "Input 1", In19
field = "Input 2", In29
field = "Input 3", In39
field = "Input 4", In49, { In4_cfg && FWD_cfg }
field = "Must be unique for each gear."
field = "Change only when off-line."
dialog = InPatternG7, "Input Pattern in 7th"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#i"
field = "Input 1", In110
field = "Input 2", In210
field = "Input 3", In310
field = "Input 4", In410, { In4_cfg && FWD_cfg }
field = "Must be unique for each gear."
field = "Change only when off-line."
dialog = InPatternG8, "Input Pattern in 8th"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#i"
field = "Input 1", In111
field = "Input 2", In211
field = "Input 3", In311
field = "Input 4", In411, { In4_cfg && FWD_cfg }
field = "Must be unique for each gear."
field = "Change only when off-line."
dialog = InPattern1b, "Configure Inputs"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#i"
field = "Park", mlever_vP, { mlever_mode==1 }
field = "Neutral", mlever_vN, { mlever_mode==1 }
field = "Reverse", mlever_vR, { mlever_mode==1 }
field = "1st", mlever_v1, { mlever_mode==1 }
field = "2nd", mlever_v2, { mlever_mode==1 }
field = "3rd", mlever_v3, { mlever_mode==1 }
field = "4th", mlever_v4, { mlever_mode==1 }
field = "5th", mlever_v5, { (mlever_mode==1) && (num_gears > 4) }
field = "6th", mlever_v6, { (mlever_mode==1) && (num_gears > 5) }
field = "7th", mlever_v7, { (mlever_mode==1) && (num_gears > 6) }
field = "8th", mlever_v8, { (mlever_mode==1) && (num_gears > 7) }
field = "Voltage Dead Band", mleverdead, {mlever_mode==1}
field = "Minimum Valid Voltage", minADCLeverVolts, { mlever_mode==1 }
field = "Maximum Valid Voltage", maxADCLeverVolts, { mlever_mode==1 }
field = "!Input2 and Input3 Usage", spareInputs, {mlever_mode==1}
field = "Using Inputs as shift solenoid outputs requires circuit modifications!"
dialog = shiftFactors, "Shift Factors"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#gs"
field = "Auto Shift Mode", shift_mode
field = "Follow Mode Usage", follow_mode, { ignoreLever == 0 }
field = "Follow Mode Highest Gear", follow_maxgear, { ignoreLever == 0 }
field = "Minimum Manual Speed" , min_manual_speed
field = "#min. man. speed = -1 to disable"
field = "Shift Button Duration", shftr_accum
field = "Digital Switch Debounce", debounce, {mlever_mode==0}
field = "Shift Pressure Adjustment Delay", pressure_delay
field = "Shift Speed Hysteresis", gear_hyst
field = "Shift Hysteresis Time", hyst_delay
field = "Hysteresis Enable Speed", hyst_enable_speed
dialog = LPFactors, "PNR Line Pressure Factors"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#gs"
field = "Line pressure Options for Neutral", PCntrlOptn, { ignoreLever == 0 }
field = "Line pressure in Neutral", PCneutral, { (PCntrlOptn == 0) && (ignoreLever == 0) }
field = "Line pressure Options for Reverse", PCrvrseOptn, { ignoreLever == 0 }
field = "Line pressure in Reverse", PCreverse, { (PCrvrseOptn == 0) && (ignoreLever == 0) }
dialog = vertSliders, "", xAxis
slider = "MAP versus TPS for LOAD", TPSmap, horizontal
dialog = throttleFactors, "Throttle and Load Factors"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#gh"
panel = vertSliders
field = "WOT TPS Threshold", WOT_tps_threshold, { (CAN_enabled) }
field = "Load Smoothing w/ WOT TPS", tps_adj, { (CAN_enabled) }
field = "Idle TPS Threshold", idle_tps_adc, { (CAN_enabled) }
field = "WOT Duration", WOT_dur
field = "LOAD Smoothing Factor", LOADshortcount
field = "Load Smoothing w/ Load Rising", rise_adj
field = "Load Smoothing w/ Braking", brake_adj
field = "Percentage Load Smoothing when Braking", brake_load, { brake_adj }
field = "#Deceleration Mode"
field = "Decel Mode TPS Threshold", decel_TPS, { shift_mode != 3 }
field = "Load Limiting w/ Decel", decel_adj
field = "Max. sLoad in Decel Mode", decel_Load, { (shift_mode != 3) && (decel_adj) }
field = "Downshift Delay", decel_Delay, { shift_mode != 3 }
dialog = PWMSettings, "Solenoid PWM Setup"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#gp"
field = "PC/SP3 PWM Period", PC_PWM_Pd
field = "PC Voltage Correction", BatFac, 0, { sp3_mode == 0 }
field = "Output1/5/6 ON Period", out1_pwm_on, { out1_pwm_off }
field = "Output1/5/6 OFF Period", out1_pwm_off
field = "Output2 ON Period", out2_pwm_on, { out2_pwm_off }
field = "Output2 OFF Period", out2_pwm_off
field = "#Freq=1000/(ONperiod+OFFperiod), %=(ON Period/OFF Period)*100"
field = "#Ouput3 PWM Parameters"
field = "Output3 PWM Period", OUT3_PWM_Pd
field = "Output3 DC when on", out3dc
field = "PWM Usage Output1", PWM_enable1
field = "PWM Usage Output2", PWM_enable2
field = "PWM Usage Output3", PWM_enable3
field = "PWM Usage Output5", PWM_enable5, { (mlever_mode == 1) && (spareInputs > 0) }
field = "PWM Usage Output6", PWM_enable6, { (mlever_mode == 1) && (spareInputs == 2) }
field = "OUTPUT4 and 7 PWM set-up under Spare Ports/Spare Port X PWM Setup if set as shift solenoids"
dialog = sprUse, "Spare Ports Function"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#sf"
field = "Spare Port 0 Use", sp0_mode
field = "Spare Port 1 Use", sp1_mode
field = "Spare Port 2 Use", sp2_mode
field = "Spare Port 3 Use", sp3_mode
dialog = sp0PWMdia, "Spare Port 0 PWM Setup"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#sa"
field = "PWM Active", sp0_active, { sp0_mode == 1 }
field = "PWM 9-bin Index", sp0_9index_mode
field = "PWM 16-Bin Index", sp0_16index_mode
field = "PWM Period", sp0_per
field = "#Freq=1000/(PWM period)"
field = "PWM% when inactive", sp0_off, { sp0_active > 0 }
dialog = sp3PWMdia, "Spare Port 3 PWM Setup"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#sa"
field = "Table Active", sp3_active, { sp3_mode == 1 }
field = "PWM 9-bin Index", sp3_9index_mode
field = "PWM 16-Bin Index", sp3_16index_mode
field = "PWM Period", sp3_per
field = "#Freq=1000/(PWM period)"
field = "PWM% when OFF", sp3_off, { sp3_active > 0 }
field = "Shift PWM Option", LPshiftOptn, { sp3_mode > 0 }
dialog = sp1PWMdia, "Spare Port 1 PWM Setup"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#sa"
field = "PWM Active", sp1_active, { sp1_mode == 1 }
field = "PWM Index", sp1_index_mode
field = "PWM Period", sp1_pwm_per
field = "#Freq=1000/(PWM period)"
field = "PWM% when OFF", sp1_off, { sp1_active > 0 }
dialog = sp2PWMdia, "Spare Port 2 PWM Setup"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#sr"
field = "PWM Active", sp2_active, { sp2_mode == 1 }
field = "PWM Index", sp2_index_mode
field = "PWM Period", sp2_pwm_per
field = "#Freq=1000/(PWM period)"
field = "PWM% when OFF", sp2_off, { sp2_active > 0 }
dialog = sp2geardc, "Spare Port 2 Gear Mode Duty Cycle"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#sg"
field = "Gear Index Mode", gearIndctrMode, { sp2_mode == 5 }
field = ""
field = "Duty Cycle in Park", gear_indic_dcP, { sp2_mode == 5 }
field = "Duty Cycle in Neutral", gear_indic_dcN, { sp2_mode == 5 }
field = "Duty Cycle in Reverse", gear_indic_dcR, { sp2_mode == 5 }
field = "Duty Cycle in First", gear_indic_dc1, { sp2_mode == 5 }
field = "Duty Cycle in Second", gear_indic_dc2, { sp2_mode == 5 }
field = "Duty Cycle in Third", gear_indic_dc3, { sp2_mode == 5 }
field = "Duty Cycle in Fourth", gear_indic_dc4, { sp2_mode == 5 }
field = "Duty Cycle in Fifth", gear_indic_dc5, { (sp2_mode == 5) && (num_gears > 4) }
field = "Duty Cycle in Sixth", gear_indic_dc6, { (sp2_mode == 5) && (num_gears > 5) }
field = "Duty Cycle in Seventh", gear_indic_dc7, { (sp2_mode == 5) && (num_gears > 6) }
field = "Duty Cycle in Eighth", gear_indic_dc8, { (sp2_mode == 5) && (num_gears > 7) }
dialog = sp2gearfreq, "Spare Port 2 Gear Mode Period"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#si"
field = "Period in Park", gear_indic_perP, { sp2_mode == 5 }
field = "Period in Neutral", gear_indic_perN, { sp2_mode == 5 }
field = "Period in Reverse", gear_indic_perR, { sp2_mode == 5 }
field = "Period in First", gear_indic_per1, { sp2_mode == 5 }
field = "Period in Second", gear_indic_per2, { sp2_mode == 5 }
field = "Period in Third", gear_indic_per3, { sp2_mode == 5 }
field = "Period in Fourth", gear_indic_per4, { sp2_mode == 5 }
field = "Period in Fifth", gear_indic_per5, { (sp2_mode == 5) && (num_gears > 4) }
field = "Period in Sixth", gear_indic_per6, { (sp2_mode == 5) && (num_gears > 5) }
field = "Period in Seventh", gear_indic_per7, { (sp2_mode == 5) && (num_gears > 6) }
field = "Period in Eighth", gear_indic_per8, { (sp2_mode == 5) && (num_gears > 7) }
field = "#Freq=1000/(PWM period)"
dialog = sp1PWMvalues, "Spare Port 1 PWM Percent"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#se"
field = "PWM1", sp1_pwm1
field = "PWM2", sp1_pwm2
field = "PWM3", sp1_pwm3
field = "PWM4", sp1_pwm4
field = "PWM5", sp1_pwm5
field = "PWM6", sp1_pwm6
field = "PWM7", sp1_pwm7
field = "PWM8", sp1_pwm8
field = "PWM9", sp1_pwm9
field = "PWM10", sp1_pwm10
field = "PWM11", sp1_pwm11
field = "PWM12", sp1_pwm12
dialog = sp2PWMvalues, "Spare Port 2 PWM Percent"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#sp"
field = "PWM1", sp2_pwm1
field = "PWM2", sp2_pwm2
field = "PWM3", sp2_pwm3
field = "PWM4", sp2_pwm4
field = "PWM5", sp2_pwm5
field = "PWM6", sp2_pwm6
field = "PWM7", sp2_pwm7
field = "PWM8", sp2_pwm8
field = "PWM9", sp2_pwm9
field = "PWM10", sp2_pwm10
field = "PWM11", sp2_pwm11
field = "PWM12", sp2_pwm12
dialog = sp1INDX, "Spare Port 1 PWM Index"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#sp"
field = "#Bins must be in ascending order."
field = "bin1 = lowest; bin 12 = highest"
field = "bin1", sp1_indx1
field = "bin2", sp1_indx2
field = "bin3", sp1_indx3
field = "bin4", sp1_indx4
field = "bin5", sp1_indx5
field = "bin6", sp1_indx6
field = "bin7", sp1_indx7
field = "bin8", sp1_indx8
field = "bin9", sp1_indx9
field = "bin10", sp1_indx10
field = "bin11", sp1_indx11
field = "bin12", sp1_indx12
dialog = sp2INDX, "Spare Port 2 PWM Index"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#st"
field = "#Bins must be in ascending order."
field = "bin1 = lowest; bin 12 = highest"
field = "bin1", sp2_indx1
field = "bin2", sp2_indx2
field = "bin3", sp2_indx3
field = "bin4", sp2_indx4
field = "bin5", sp2_indx5
field = "bin6", sp2_indx6
field = "bin7", sp2_indx7
field = "bin8", sp2_indx8
field = "bin9", sp2_indx9
field = "bin10", sp2_indx10
field = "bin11", sp2_indx11
field = "bin12", sp2_indx12
dialog = TCCSettings, "Torque Converter Control Limits"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#nt"
field = "Min. Gear for TCC Lock", minTCC_gear
field = "Min. TCC Lock-Up Speed", minTCCspeed
field = "Min. Temp. for TCC Lock", noTCC_temp
field = "Lock TCC Above Temperature", trans_temp_limit, { TMP_cfg }
field = "TCC Unlock Above Load", noTCC_load
field = "TCC Unlock Hysteresis", TCC_hyst
field = "TCC Hysteresis Time", TCC_counter
field = "TCC PWM Mode", TCC_PWM
field = "Set TCC PWM parameters under"
field = "TCC LOAD/PWM% Parameters"
field = "and Solenoid PWM Setup"
field = "#Full-Time Lock Up"
field = "TCC Application in Highest Gear", TCC_highGear
field = "Lock At or Above RPM", STCC_rpm
field = "Unlock At RPM", STCC_ULrpm
field = "At or Above Gear", STCC_gear
dialog = LUFparams, "TCC LOAD/PWM% Parameters"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#nc"
field = "TCC PWM Period", TCC_PWM_Pd, {TCC_PWM == 1}
field = "PWM% when TCC Unlocked", LUF_off, {TCC_PWM ==1}
field = "PWM% when TCC Locked", LUF_on, {TCC_PWM ==1}
field = "TCC PWM Taper Start Values"
field = "# PWM Low Load:"
field = "Low Load Value", LUF_loLoad, {TCC_PWM ==1}
field = "PWM% at Low Load", LUF_loPWM, {TCC_PWM ==1}
field = "# PWM High Load:"
field = "High Load Value", LUF_hiLoad, {TCC_PWM ==1}
field = "PWM% at High Load", LUF_hiPWM, {TCC_PWM ==1}
field = "PWM Taper Time", LUF_taper, {TCC_PWM ==1}
dialog = TCCupshift, "TCC UpShift Settings"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#nu"
field = "TCC Upshift to 2nd", TCCupshift2
field = "TCC Upshift to 3rd", TCCupshift3
field = "TCC Upshift to 4th", TCCupshift4
field = "TCC Upshift to 5th", TCCupshift5, { num_gears > 4 }
field = "TCC Upshift to 6th", TCCupshift6, { num_gears > 5 }
field = "TCC Upshift to 7th", TCCupshift7, { num_gears > 6 }
field = "TCC Upshift to 8th", TCCupshift8, { num_gears > 7 }
field = "Converter always unlocks on"
field = "downshifts unless TCC full time"
field = "mode or Jake Brake are active."
dialog = noCANload, "Non-CANbus Load Settings"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#ol"
field = "Multiplier", LOADmult, { !CAN_enabled }
field = "Load at 0 volts", LOADzero, { !CAN_enabled }
field ="#Load is Voltage on pin 24"
field ="#times Multiplier,"
field ="#plus Load @ 0 volts"
dialog = stdIN, "Standard Inputs/Outputs Configuration"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#gi"
field = "Temperature Sensor Usage", TMP_cfg
field = "Temperature Sensor Logging", TMP_adc, { !TMP_cfg }
field = ""
field = "Line Pressure Input", line_units
field = "Voltage at Point1", volt1, { line_units == 3 }
field = "Pressure at Point1", press1, { line_units == 3 }
field = "Voltage at Point2", volt2, { line_units == 3 }
field = "Pressure at Point2", press2, { line_units == 3 }
field = ""
field = "Shift Button polarity", shft_btn_polarity
field = "Brake Signal Polarity", brake_ON_polarity
field = ""
field = "#GPI1 INPUT Usage"
field = "Additional Input Usage", FWD_cfg
field = "Table switching/4th lever input", In4_cfg, { FWD_cfg }
dialog = spareport0, "User Spare Port 0"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#su"
field = "Output pulse/mile(km)", pulse_mile, { sp0_mode == 0 }
field = "!Speedo Output Duty Cycle", speedoutDC, { sp0_mode == 0 }
dialog = spareport1, "User Spare Port 1"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#su"
field = "Speed threshold", sp1speed, { sp1_mode == 0 }
field = "Speed condition", sp1speed_cond, { sp1_mode == 0 }
field = "Speed hysteresis", sp1speed_hyst, { sp1_mode == 0 }
field = "#AND"
field = "RPM threshold", sp1rpm, { sp1_mode == 0 }
field = "RPM condition", sp1rpm_cond, { sp1_mode == 0 }
field = "RPM hysteresis", sp1rpm_hyst, { sp1_mode == 0 }
field = "#AND"
field = "Load threshold", sp1load, { sp1_mode == 0 }
field = "Load condition", sp1load_cond, { sp1_mode == 0 }
field = "Load hysteresis", sp1load_hyst, { sp1_mode == 0 }
field = "#AND"
field = "Gear threshold", sp1gear, { sp1_mode == 0 }
field = "Gear condition", sp1gear_cond, { sp1_mode == 0 }
dialog = spareport2, "User Spare Port 2"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#ss"
field = "Speed threshold", sp2speed, { sp2_mode == 0 }
field = "Speed condition", sp2speed_cond, { sp2_mode == 0 }
field = "Speed hysteresis", sp2speed_hyst, { sp2_mode == 0 }
field = "#AND"
field = "RPM threshold", sp2rpm, { sp2_mode == 0 }
field = "RPM condition", sp2rpm_cond, { sp2_mode == 0 }
field = "RPM hysteresis", sp2rpm_hyst, { sp2_mode == 0 }
field = "#AND"
field = "Load threshold", sp2load, { sp2_mode == 0 }
field = "Load condition", sp2load_cond, { sp2_mode == 0 }
field = "Load hysteresis", sp2load_hyst, { sp2_mode == 0 }
field = "#AND"
field = "Gear threshold", sp2gear, { sp2_mode == 0 }
field = "Gear condition", sp2gear_cond, { sp2_mode == 0 }
dialog = canconfig, "CANbus Configuration"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#oa"
field = "#Controller Area Network (CANbus) set-up"
field = "!CANbus Usage", CAN_enabled
field = "!CANbus ID (GPIO)", trans_can_id, { CAN_enabled }
field = "!CANbus Fetch Rate", can_var_rate, { CAN_enabled }
field = "!MS-II/MS3 CAN ID (default=0)", ms2canID, { 1 } ; change to { 1 } to make editable
field = "!MS-II/MS3 outpc block (default=7)", ms2varBLK, { 1 } ; change to { 1 } to make editable
field = "!CANbus message format", can_testout, { CAN_enabled }
field = "Spark/Fuel/Idle Adjustments"
field = "!Adjustment offset (B&G=946,MSextra=512)", Adj_varoffset, { 1 } ; change to { 1 } to make editable
field = "!Adjustment block (B&G=5,MSextra=7)", Adj_blk, { 1 } ; change to { 1 } to make editable
field = "If CANbus is disabled, load is determined"
field = "from 0-5V axillary input"
field = "See 'General Settings/Non-CAN Load Configuration'"
; field = "Enable Nested Interrupts", nestINTS
dialog = canOffsetOutpc, "CANbus Offsets OUTPC"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#on"
field = "VSS offset (0 = disable)", canVSSoffset, { CAN_enabled }
field = "CANbus VSS Adjustment (1.000 = no adjustment)", CANVSSadj, { CAN_enabled && canVSSoffset }
field = "Pulse Width 1 offset (default = 2)", canPW1outpc
field = "Engine RPM offset (default = 6)", canRPMoutpc
field = "Manifold Pressure offset (default = 18)", canMAPoutpc
field = "Throttle Position offset (default = 24)", canTPSoutpc
field = "Battery Voltage offset (default = 26)", canVBATToutpc
dialog = canOffsetOutmsg, "CANbus Offsets OUTMSG"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#on"
field = "VSS offset (0 = disable)", canSPEEDOoutmsg, { CAN_enabled }
field = "CANbus VSS Adjustment (1.000 = no adjustment)", CANVSSadj, { CAN_enabled && canVSSoffset }
field = "Pulse Width 1 offset (default = 0)", canPW1outmsg
field = "Engine RPM offset (default = 2)", canRPMoutmsg
field = "Manifold Pressure offset (default = 4)", canMAPoutmsg
field = "Throttle Position offset (default = 6)", canTPSoutmsg
field = "Battery Voltage offset (default = 8)", canVBATToutmsg
dialog = debug, "Debugging Input Variables"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#od"
; field = "Inpram last value = 170", pad10
field = "Inpram debug value - volts", INdbugV
field = "Inpram debug value - ADC", INdbugADC
dialog = spiEnable, "SPI Device Enable"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#v"
field = "SPI Device 0 (MC33800)", spi_D0enable
field = "SPI Device 1 (speedo display)", spi_D1enable
field = "SPI Device 2", spi_D2enable
field = "SPI Device 3", spi_D3enable
field = "SPI Output Selection"
field = "Output 1", SPIsoln10, 0, { spi_D0enable }
field = "Output 2", SPIsoln11, 0, { spi_D0enable }
field = "Output 3", SPIsoln12, 0, { spi_D0enable }
field = "Output 4", SPIsoln13, 0, { spi_D0enable }
field = "Output 5", SPIsoln14, 0, { spi_D0enable }
field = "Output 6", SPIsoln15, 0, { spi_D0enable }
field = "Output 7", SPIsoln16, 0, { spi_D0enable }
field = "Output 8", SPIsoln17, 0, { spi_D0enable }
field = "TCC", SPIsoln21, 0, { spi_D0enable }
field = "Line Pressure", SPIsoln22, 0, { spi_D0enable }
dialog = spiD0configBR, "Device 0 SPR0BR"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#SPIbaudrate"
field = "Bit SPR0", D0SPR0, 0, { spi_D0enable }
field = "Bit SPR1", D0SPR1, 0, { spi_D0enable }
field = "Bit SPR2", D0SPR2, 0, { spi_D0enable }
field = "Bit SPPR0", D0SPPR0, 0, { spi_D0enable }
field = "Bit SPPR1", D0SPPR1, 0, { spi_D0enable }
field = "Bit SPPR2", D0SPPR2, 0, { spi_D0enable }
dialog = spiD0configCR1, "Device 0 SPR0CR1"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#SPIcr1"
field = "Bit LSBFE", D0LSBFE, 0, { spi_D0enable }
field = "Bit SS0E", D0SSOE, 0, { spi_D0enable }
field = "Bit CPHA", D0CPHA, 0, { spi_D0enable }
field = "Bit CPOL", D0CPOL, 0, { spi_D0enable }
field = "Bit MSTR", D0MSTR, 0, { spi_D0enable }
field = "Bit SPTIE", D0SPTIE, 0, { spi_D0enable }
field = "Bit SPE", D0SPE, 0, { spi_D0enable }
field = "Bit SPIE", D0SPIE, 0, { spi_D0enable }
dialog = spiD0configCR2, "Device 0 SPR0CR2"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#SPIcr2"
field = "Bit SPC0", D0SPC0, 0, { spi_D0enable }
field = "Bit SPISWAI", D0SPISWAI, 0, { spi_D0enable }
field = "Bit BIDIROE", D0BIDIROE, 0, { spi_D0enable }
field = "Bit MODFEN", D0MODFEN, 0, { spi_D0enable }
dialog = spiD1configBR, "Device 1 SPR0BR"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#SPIbaudrate"
field = "Bit SPR0", D1SPR0, 0, { spi_D1enable }
field = "Bit SPR1", D1SPR1, 0, { spi_D1enable }
field = "Bit SPR2", D1SPR2, 0, { spi_D1enable }
field = "Bit SPPR0", D1SPPR0, 0, { spi_D1enable }
field = "Bit SPPR1", D1SPPR1, 0, { spi_D1enable }
field = "Bit SPPR2", D1SPPR2, 0, { spi_D1enable }
dialog = spiD1configCR1, "Device 1 SPR0CR1"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#SPIcr1"
field = "Bit LSBFE", D1LSBFE, 0, { spi_D1enable }
field = "Bit SS0E", D1SSOE, 0, { spi_D1enable }
field = "Bit CPHA", D1CPHA, 0, { spi_D1enable }
field = "Bit CPOL", D1CPOL, 0, { spi_D1enable }
field = "Bit MSTR", D1MSTR, 0, { spi_D1enable }
field = "Bit SPTIE", D1SPTIE, 0, { spi_D1enable }
field = "Bit SPE", D1SPE, 0, { spi_D1enable }
field = "Bit SPIE", D1SPIE, 0, { spi_D1enable }
dialog = spiD1configCR2, "Device 1 SPR0CR2"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#SPIcr2"
field = "Bit SPC0", D1SPC0, 0, { spi_D1enable }
field = "Bit SPISWAI", D1SPISWAI, 0, { spi_D1enable }
field = "Bit BIDIROE", D1BIDIROE, 0, { spi_D1enable }
field = "Bit MODFEN", D1MODFEN, 0, { spi_D1enable }
dialog = spiD2configBR, "Device 2 SPR0BR"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#SPIbaudrate"
field = "Bit SPR0", D2SPR0, 0, { spi_D2enable }
field = "Bit SPR1", D2SPR1, 0, { spi_D2enable }
field = "Bit SPR2", D2SPR2, 0, { spi_D2enable }
field = "Bit SPPR0", D2SPPR0, 0, { spi_D2enable }
field = "Bit SPPR1", D2SPPR1, 0, { spi_D2enable }
field = "Bit SPPR2", D2SPPR2, 0, { spi_D2enable }
dialog = spiD2configCR1, "Device 2 SPR0CR1"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#SPIcr1"
field = "Bit LSBFE", D2LSBFE, 0, { spi_D2enable }
field = "Bit SS0E", D2SSOE, 0, { spi_D2enable }
field = "Bit CPHA", D2CPHA, 0, { spi_D2enable }
field = "Bit CPOL", D2CPOL, 0, { spi_D2enable }
field = "Bit MSTR", D2MSTR, 0, { spi_D2enable }
field = "Bit SPTIE", D2SPTIE, 0, { spi_D2enable }
field = "Bit SPE", D2SPE, 0, { spi_D2enable }
field = "Bit SPIE", D2SPIE, 0, { spi_D2enable }
dialog = spiD2configCR2, "Device 2 SPR0CR2"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#SPIcr2"
field = "Bit SPC0", D2SPC0, 0, { spi_D2enable }
field = "Bit SPISWAI", D2SPISWAI, 0, { spi_D2enable }
field = "Bit BIDIROE", D2BIDIROE, 0, { spi_D2enable }
field = "Bit MODFEN", D2MODFEN, 0, { spi_D2enable }
dialog = spiD3configBR, "Device 3 SPR0BR"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#SPIbaudrate"
field = "Bit SPR0", D3SPR0, 0, { spi_D3enable }
field = "Bit SPR1", D3SPR1, 0, { spi_D3enable }
field = "Bit SPR2", D3SPR2, 0, { spi_D3enable }
field = "Bit SPPR0", D3SPPR0, 0, { spi_D3enable }
field = "Bit SPPR1", D3SPPR1, 0, { spi_D3enable }
field = "Bit SPPR2", D3SPPR2, 0, { spi_D3enable }
dialog = spiD3configCR1, "Device 3 SPR0CR1"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#SPIcr1"
field = "Bit LSBFE", D3LSBFE, 0, { spi_D3enable }
field = "Bit SS0E", D3SSOE, 0, { spi_D3enable }
field = "Bit CPHA", D3CPHA, 0, { spi_D3enable }
field = "Bit CPOL", D3CPOL, 0, { spi_D3enable }
field = "Bit MSTR", D3MSTR, 0, { spi_D3enable }
field = "Bit SPTIE", D3SPTIE, 0, { spi_D3enable }
field = "Bit SPE", D3SPE, 0, { spi_D3enable }
field = "Bit SPIE", D3SPIE, 0, { spi_D3enable }
dialog = spiD3configCR2, "Device 3 SPR0CR2"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#SPIcr2"
field = "Bit SPC0", D3SPC0, 0, { spi_D3enable }
field = "Bit SPISWAI", D3SPISWAI, 0, { spi_D3enable }
field = "Bit BIDIROE", D3BIDIROE, 0, { spi_D3enable }
field = "Bit MODFEN", D3MODFEN, 0, { spi_D3enable }
dialog = mphBins1, "Edit Speed Bins for shift table 1"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#bm"
field = "#Speed Bins for Shift Table 1"
array1D = "", "Vehicle Speed1 %INDEX%", vss_table1
dialog = mphBins2, "Edit Speed Bins for shift table 2"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#bm"
field = "#Speed Bins for Shift Table 2"
array1D = "", "Vehicle Speed2 %INDEX%", vss_table2
dialog = mphBins3, "Edit Speed Bins for Pressure Control table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#bm"
field = "#Speed Bins for PC PWM% table"
array1D = "", "Vehicle Speed3 %INDEX%", vss_PCtable
dialog = loadBins1, "Edit Load Bins for shift table 1"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#bs"
field = "#Load Bins for shift table 1"
array1D = "", "Load1 %INDEX%", LOAD_table1
dialog = loadBins2, "Edit Load Bins for table 2"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#bs"
field = "#Load Bins for shift table 2"
array1D = "", "Load2 %INDEX%", LOAD_table2
dialog = loadBins3, "Edit Load Bins for Pressure Control table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#bs"
field = "#MAP Bins for PC table"
array1D = "", "Load3 %INDEX%", LOAD_PCtable
dialog = tempBins, "Edit Temperature Table Values"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#bt"
field = "#Temperature Bins for Warmup, etc."
array1D = "", "Temperature %INDEX%", temp_table
help = sensorHelp, "Sensor Calibration"
webHelp = "http://www.megamanual.com/megatune.htm#os"
text = "MAP Sensor Calibration
"
text = "
"
text = "For the\tMPX4115 use\t10.6 and \t121.7
"
text = "\tMPX4250\t\t10.0\t260.0
"
text = "\tMPXH6300\t1.1\t315.5
"
text = "\tGM 3-BAR\t1.1\t315.5
"
text = "\tMPXH6400\t3.5\t416.5
"
text = "
"
text = "(GM 3-bar data from Dave Hartnell, http://www.not2fast.com/electronics/component_docs/MAP_12223861.pdf)
"
text = "
"
text = "\tSensor type\tvLo\tpLo\tvHi\tpHi\tvRef
"
text = "\tMPX4115 \t0.204 v\t15 kPa\t4.794 v\t115 kPa\t5.100 v
"
text = "\tMPX4250 \t0.204 v\t20 kPa\t4.896 v\t250 kPa\t5.100 v
"
text = "\tMPXH6300\t0.306 v\t20 kPa\t4.913 v\t304 kPa\t5.100 v
"
text = "\tGM 3-BAR\t0.631 v\t40 kPa\t4.914 v\t304 kPa\t5.100 v
"
text = "\tMPXH6400\t0.200 v\t20 kPa\t4.800 v\t400 kPa\t5.000 v
"
text = "
"
text = "In general, use values derived from these equations:
"
text = "
"
text = "\tm = (pHi-pLo)/(vHi-vLo)
"
text = "\tpv1 = pLo - m * vLo
"
text = "\tpv2 = pv1 + m * vRef
"
text = "
"
text = "References:
"
text = "\thttp://www.freescale.com/files/sensors/doc/data_sheet/MPX4115A.pdf
"
text = "\thttp://www.freescale.com/files/sensors/doc/data_sheet/MPX4250A.pdf
"
text = "\thttp://www.freescale.com/files/sensors/doc/data_sheet/MPXH6300A.pdf
"
text = "\thttp://www.freescale.com/files/sensors/doc/data_sheet/MPXH6400A.pdf
"
dialog = GPIOpins, "GPIO I/O Pin Assignments with *standard build*"
topicHelp = "http://www.msgpio.com/manuals/mshift/portspins.html"
field = "OUTPUTS:"
field = "Output 1 - PE4 - VB3 - Amp 23"
field = "Output 2 - PM2 - VB4 - Amp 35"
field = "Output 3 - PT1 - PWM4 - Amp 34"
field = "Pressure Control/Spare Output 3 - PT2 - PWM3 - Amp 33"
field = "Torque Converter Clutch- PT3 - PWM2 - Amp 32"
field = "Spare Output 1 - PT7 - VB1 - Amp 11"
field = "Spare Output 2/Output 4 - PA0 - VB2 - Amp 12"
field = "LED 1 - PM4 - GPO1 - Amp 10"
field = "LED 2 - PM3 - GPO2 - Amp 7"
field = "LED 3 - PM5 - GPO3 - Amp 8"
field = "LED 4 - PB4 - GPO4 - Amp 9"
field = "Speed Out/Spare Output 0 - PT4 - PWM1 - Amp 31"
field = "-----------------------------------------------"
field = "INPUTS:"
field = "Lever Input 1 - AD0 - EGT4 - Amp 26"
field = "Lever Input 2 - AD1 - GPI2 - Amp 6"
field = "Lever Input 3 - AD3 - EGT3 - Amp 25"
field = "Lever Input 4 - PE1 - GPI1 - Amp 5"
field = "VSS - PT0 - VR1 - Amp 2"
field = "ISS - PT5 - VR3 - Amp 14"
field = "Paddle UP - PT6 - VR2 - Amp 15"
field = "Paddle DOWN - AD6 - GPI5 AMP4"
field = "Brake Sense - AD7 - GPI4 - Amp 3"
field = "Line Pressure Sense - AD4 - EGT2 - Amp27"
field = "Temperature Sense - AD2 - GPI3 - Amp 30"
field = "Table Switch - PE1 - GPI1 - Amp 5"
field = "Non-CANbus Load - AD5 - EGT1 - Amp 24"
dialog = uTCUpins, "microTCU Pin Assignments"
topicHelp = "http://www.microTCU.com/diff.htm"
field = "Output 1 - PE4 - VB3 - Amp 23"
field = "Output 2 - PM2 - VB4 - Amp 35"
field = "Output 3 - PT1 - PWM4 - Amp 34"
field = "Pressure Control/Spare Output 3 - PT2 - PWM3 - Amp 27"
field = "Torque Converter - PT3 - PWM2 - Amp 32"
field = "Input 1 - AD0 - EGT4 - Amp 26"
field = "Input 2 - AD1 - GPI2 - Amp 6"
field = "Input 3 - AD3 - EGT3 - Amp 25"
field = "Input 4 - PE1 - GPI1 - Amp 5"
field = "Spare Output 1/Output 7 - PT7 - VB1 - Amp 11"
field = "Spare Output 2/Output 4 - PA0 - VB2 - Amp 12"
field = "LED 1 - PM4 - GPO1 - Amp 10"
field = "LED 2 - PM3 - GPO2 - Amp 7"
field = "LED 3 - PM5 - GPO3 - Amp 8"
field = "LED 4 - PB4 - GPO4 - Amp 9"
field = "Speed Output/Spare Output 0 - PT4 - PWM1 - Amp 31"
help = helpGeneral, "MShift(tm) Info"
webHelp = "http://www.megamanual.com/gpio/mshift/V5tune.html"
text = "Press F1 in any menu to get context sensitive help from the web."
text = "
"
text = "Click the blue Question Mark symbol {?} to the left of any parameter"
text = "to get an explanation of that parameter."
text = "
"
text = "For the full manual, see: www.msgpio.com/manuals/mshift/v5code.html"
text = "
"
text = "For current documentation, click the Web Help link below, or for"
text = "support questions visit http://www.msgpio.com/forums/index.php"
;-------------------------------------------------------------------------------
[CurveEditor]
curve = PCtemp_adjust, "Temperature v. Line Pressure Adjustments"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#tl"
columnLabel = "Temp.", "PC%"
xAxis = -40, 220, 9
yAxis = -100, 100, 5
xBins = temp_table, clt
yBins = PCtemp
gauge = line_pressure
curve = SpeedoCorrection, "Speedometer Correction Percent"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#te"
columnLabel = "Load", "Corr%"
xAxis = 0, 250, 11
yAxis = -100, 100, 21
xBins = speedoCorrBin, speedo
yBins = speedoCorr
gauge = speedo
curve = SparePort1PWM0, "Spare Port 1 PWM%"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#s"
columnLabel = "Load", "PWM%"
xAxis = 0, 250, 11
yAxis = 0, 100, 11
xBins = sp1_pwm_index, LOAD
yBins = sp1_pwm_table
gauge = load
curve = SparePort2PWM0, "Spare Port 2 PWM%"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#s"
columnLabel = "Load", "PWM%"
xAxis = 0, 250, 11
yAxis = 0, 100, 11
xBins = sp2_pwm_index, LOAD
yBins = sp2_pwm_table
gauge = load
curve = SparePort1PWM1, "Spare Port 1 PWM%"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#s"
columnLabel = "Speed", "PWM%"
xAxis = 0, 250, 11
yAxis = 0, 100, 11
xBins = sp1_pwm_index, speedo
yBins = sp1_pwm_table
gauge = speedo
curve = SparePort2PWM1, "Spare Port 2 PWM%"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#s"
columnLabel = "Speed", "PWM%"
xAxis = 0, 250, 11
yAxis = 0, 100, 11
xBins = sp2_pwm_index, speedo
yBins = sp2_pwm_table
gauge = speedo
curve = SparePort1PWM2, "Spare Port 1 PWM%"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#s"
columnLabel = "RPM", "PWM%"
xAxis = 0, 6500, 11
yAxis = 0, 100, 11
xBins = sp1_pwm_index, engine_rpm
yBins = sp1_pwm_table
gauge = load
curve = SparePort2PWM2, "Spare Port 2 PWM%"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#s"
columnLabel = "RPM", "PWM%"
xAxis = 0, 6500, 11
yAxis = 0, 100, 11
xBins = sp2_pwm_index, engine_rpm
yBins = sp2_pwm_table
gauge = load
curve = SparePort1PWM3, "Spare Port 1 PWM%"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#s"
columnLabel = "degrees", "PWM%"
xAxis = 0, 250, 11
yAxis = 0, 100, 11
xBins = sp1_pwm_index, clt
yBins = sp1_pwm_table
gauge = load
curve = SparePort2PWM3, "Spare Port 2 PWM%"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#s"
columnLabel = "degrees", "PWM%"
xAxis = 0, 250, 11
yAxis = 0, 100, 11
xBins = sp2_pwm_index, clt
yBins = sp2_pwm_table
gauge = load
curve = SparePort1PWM4, "Spare Port 1 PWM%"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#s"
columnLabel = "Gear", "PWM%"
xAxis = 0, 250, 11
yAxis = 0, 100, 11
xBins = sp1_pwm_index, current_gear
yBins = sp1_pwm_table
gauge = load
curve = SparePort2PWM4, "Spare Port 2 PWM%"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#s"
columnLabel = "Gear", "PWM%"
xAxis = 0, 250, 11
yAxis = 0, 100, 11
xBins = sp2_pwm_index, current_gear
yBins = sp2_pwm_table
gauge = load
curve = shiftComp, "Shift Completion Delay Table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#tc"
columnLabel = "Load", "Delay"
xAxis = 0, 100, 11
yAxis = 0, 1000, 11
xBins = shiftCompBins, LOAD
yBins = shiftCompValues
gauge = load
curve = RPMshift12, "1st-2nd UPshift RPM Table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#l"
columnLabel = "Load", "RPM"
xAxis = 0, 100, 8
yAxis = 0, 7000, 8
xBins = RPMloadUPbins, LOAD_short
yBins = RPMshiftTable12
gauge = load
curve = RPMshift23, "2nd-3rd UPshift RPM Table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#l"
columnLabel = "Load", "RPM"
xAxis = 0, 100, 8
yAxis = 0, 7000, 8
xBins = RPMloadUPbins, LOAD_short
yBins = RPMshiftTable23
gauge = load
curve = RPMshift34, "3rd-4th UPshift RPM Table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#l"
columnLabel = "Load", "RPM"
xAxis = 0, 100, 8
yAxis = 0, 7000, 8
xBins = RPMloadUPbins, LOAD_short
yBins = RPMshiftTable34
gauge = load
curve = RPMshift45, "4th-5th UPshift RPM Table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#l"
columnLabel = "Load", "RPM"
xAxis = 0, 100, 8
yAxis = 0, 7000, 8
xBins = RPMloadUPbins, LOAD_short
yBins = RPMshiftTable45
gauge = load
curve = RPMshift56, "5th-6th UPshift RPM Table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#l"
columnLabel = "Load", "RPM"
xAxis = 0, 100, 8
yAxis = 0, 7000, 8
xBins = RPMloadUPbins, LOAD_short
yBins = RPMshiftTable56
gauge = load
curve = RPMshift67, "6th-7th UPshift RPM Table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#l"
columnLabel = "Load", "RPM"
xAxis = 0, 100, 8
yAxis = 0, 7000, 8
xBins = RPMloadUPbins, LOAD_short
yBins = RPMshiftTable67
gauge = load
curve = RPMshift78, "7th-8th UPshift RPM Table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#l"
columnLabel = "Load", "RPM"
xAxis = 0, 100, 8
yAxis = 0, 7000, 8
xBins = RPMloadUPbins, LOAD_short
yBins = RPMshiftTable78
gauge = load
curve = RPMshift21, "2nd-1st DOWNshift RPM Table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#l"
columnLabel = "Load", "RPM"
xAxis = 0, 100, 8
yAxis = 0, 7000, 8
xBins = RPMloadDWNbins, LOAD_short
yBins = RPMshiftTable21
gauge = load
curve = RPMshift32, "3rd-2nd DOWNshift RPM Table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#l"
columnLabel = "Load", "RPM"
xAxis = 0, 100, 8
yAxis = 0, 7000, 8
xBins = RPMloadDWNbins, LOAD_short
yBins = RPMshiftTable32
gauge = load
curve = RPMshift43, "4th-3rd DOWNshift RPM Table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#l"
columnLabel = "Load", "RPM"
xAxis = 0, 100, 8
yAxis = 0, 7000, 8
xBins = RPMloadDWNbins, LOAD_short
yBins = RPMshiftTable43
gauge = load
curve = RPMshift54, "5th-4th DOWNshift RPM Table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#l"
columnLabel = "Load", "RPM"
xAxis = 0, 100, 8
yAxis = 0, 7000, 8
xBins = RPMloadDWNbins, LOAD_short
yBins = RPMshiftTable54
gauge = load
curve = RPMshift65, "6th-5th DOWNshift RPM Table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#l"
columnLabel = "Load", "RPM"
xAxis = 0, 100, 8
yAxis = 0, 7000, 8
xBins = RPMloadDWNbins, LOAD_short
yBins = RPMshiftTable65
gauge = load
curve = RPMshift76, "7th-6th DOWNshift RPM Table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#l"
columnLabel = "Load", "RPM"
xAxis = 0, 100, 8
yAxis = 0, 7000, 8
xBins = RPMloadDWNbins, LOAD_short
yBins = RPMshiftTable76
gauge = load
curve = RPMshift87, "8th-7th DOWNshift RPM Table"
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#l"
columnLabel = "Load", "RPM"
xAxis = 0, 100, 8
yAxis = 0, 7000, 8
xBins = RPMloadDWNbins, LOAD_short
yBins = RPMshiftTable87
gauge = load
[TableEditor]
; table_id, map3d_id, "title", page
table = geartable1, gearmap, "Gear Shift Table 1", 2
; constant, variable
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#ag"
xBins = vss_table1, speedo, readonly
yBins = LOAD_table1, LOAD_short, readonly
zBins = auto_table1
upDownLabel = "UP", "DOWN"
gridHeight = 0.7
gridOrient = 230, 0, 340 ; Space 123 rotation of grid in degrees.
table = geartable2, gearmap2, "Gear Shift Table 2", 2
; constant, variable
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#ag"
xBins = vss_table2, speedo, readonly
yBins = LOAD_table2, LOAD_short, readonly
zBins = auto_table2
upDownLabel = "UP", "DOWN"
gridHeight = 0.7
gridOrient = 230, 0, 340 ; Space 123 rotation of grid in degrees.
table = pctable, pcmap, "Pressure Control Table", 2
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#ap"
xBins = vss_PCtable, speedo, readonly
yBins = LOAD_PCtable, LOAD, readonly
zBins = pc_table
upDownLabel = "+", "-"
gridHeight = 0.7
gridOrient = 220, 0, 340
table = sp0table, sp0map, "Spare port 0 PWM Table", 2
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#ap"
xBins = sp0_16Bin, sp016inx, readonly
yBins = sp0_9Bin, sp09inx, readonly
zBins = sp0_table
upDownLabel = "+", "-"
gridHeight = 0.7
gridOrient = 220, 0, 340
table = sp3table, sp3map, "Spare port 3 PWM Table", 2
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#ap"
xBins = sp3_16Bin, sp316inx, readonly
yBins = sp3_9Bin, sp39inx, readonly
zBins = sp3_table
upDownLabel = "+", "-"
gridHeight = 0.7
gridOrient = 220, 0, 340
table = TPSrpmtable, TPSloadmenu, "TPS Load Table", 2
topicHelp = "http://www.msgpio.com/manuals/mshift/V5tune.html#al"
xBins = TPSrpm, engine_rpm, readonly
yBins = TPStps, rawTPS, readonly
zBins = TPStable
upDownLabel = "+", "-"
gridHeight = 0.7
gridOrient = 220, 0, 340
;-------------------------------------------------------------------------------
[GaugeConfigurations]
;-------------------------------------------------------------------------------
; Notes on some of the gauges.
;-------------------------------------------------------------------------------
; 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
; display that gauge in a particular position.
;
; Name = Case-sensitive, user-defined name for this gauge configuration.
; Var = Case-sensitive name of variable to be displayed, see the
; OutputChannels block in this file for possible values.
; Title = Title displayed at the top of the gauge.
; Units = Units displayed below value on gauge.
; Lo = Lower scale limit of gauge.
; Hi = Upper scale limit of gauge.
; LoD = Lower limit at which danger color is used for gauge background.
; LoW = Lower limit at which warning color is used.
; HiW = Upper limit at which warning color is used.
; HiD = Upper limit at which danger color is used.
; vd = Decimal places in displayed value
; ld = Label decimal places for display of Lo and Hi, above.
;Name Var Title Units Lo Hi LoD LoW HiW HiD vd ld
auxVolts = aux_volts, "Aux. Channel Volts", "Volts", 0, 5, 0, 0, 5, 5, 3, 0
Shift Button = butADC, "Shift Button", "Volts", 0, 5, 0, 0, 5, 5, 3, 0
clock = second2, "Clock", "seconds", 0, 255, 0, 0, 253, 255, 0, 0
Slip = slip, "Slip", "%", 0, 200, -1, -1, 200, 200, 0, 0
TCC = lock_TCC, "TCC PWM%" "%", 0, 100, -1, -1, 255, 255, 0, 0
Wheel_RPM = wheel_rpm, "Wheel RPM", "", 0, 3000, -1, -1, 3000, 3000, 1, 1
Error_gauge = error, "Status", "", 0, 255, -1, -1, 255, 255, 0, 0
Input_Shaft_RPM = is_rpm, "Input Shaft RPM", "", 0, 9000, -1, -1, 6000, 6500, 0, 0
Manual_gear_gauge = manual_gear, "Manual Gear", "", -1, 4, -1, -1, 5, 5, 0, 0
Target_gear_gauge = target_gear, "Target Gear", "", 1, 4, -1, -1, 5, 5, 0, 0
#if SI_LENGTHS
FuelEfficiency = metricFE, "Fuel Effcncy", "km/liter", 0, 100, 5, 10, 99, 99, 2, 2
FuelConsumption = kmileage, "Fuel Consmptn", "l/100km", 0, 25, 2, 3, 20, 24, 2, 2
#else
FuelEfficiency = mileage, "Fuel Efficiency", "mpg", 0, 50, 5, 10, 99, 99, 2, 2
#endif
VSS_Hertz = VSS_Hz, "VSS Frequency" "Hz", 0, 5000, -1, -1, 5001, 5001, 1, 1
Current_gear_gauge = current_gear, "Current Gear", "", -1, 4, -1, -1, 5, 5, 0, 0
#if LOAD_KPA
load = LOAD, "Load", "kpa", 0, 200, -1, -1, 250, 250, 1, 0
#else
load = LOAD, "Load", "%", 0, 100, -1, -1, 100, 100, 1, 0
#endif
#if SI_LENGTHS
line_pressure = linepressure, "Line Pressure", "bar", 0, 40, 1, 5, 30, 35, 2, 2
#else
line_pressure = linepressure, "Line Pressure", "psi", 0, 500, 50, 100, 400, 480, 0, 0
#endif
#if SI_LENGTHS
odometer = odometer, "Trip Odometer", "km", 0, 100, -1, -1, 255, 255, 2, 0
#elseif
odometer = odometer, "Trip Odometer", "miles", 0, 100, -1, -1, 255, 255, 2, 0
#endif
Output_Shaft_RPM = os_rpm, "Output Shaft RPM", "", 0, 6000, -1, -1, 3000, 4500,0, 0
pcsol = PC_duty, "Pressure Control", "100-PWM%", 0, 100, -1, -1, 101, 101, 0, 0
Input1 = In1adc, "Input1", "volts", 0, 5, 0, 0, 5, 5, 3, 0
Input2 = In2adc, "Input2", "volts", 0, 5, 0, 0, 5, 5, 3, 0
Input3 = In3adc, "Input3", "volts", 0, 5, 0, 0, 5, 5, 3, 0
#if SI_LENGTHS
speedo = speedo, "Speed", "kph", 0, 300, -1, -1, 200, 270, 1, 0
#else
speedo = speedo, "Speed", "mph", 0, 200, -1, -1, 160, 180, 1, 0
#endif
tach = engine_rpm, "Tach", "rpm", 0, 8000, -1, -1, 6000, 6500, 0, 0
#if CELSIUS
trans_temp = clt, "Trans. Temp." "ºC", -40, 220, -20, -10, 200, 210, 1, 0
#else
trans_temp = clt, "Trans. Temp." "ºF", -40, 220, -20, -10, 200, 210, 1, 0
#endif
solst = solst, "Solenoids", "", 0, 4, -1, -1, 10, 10, 0, 0
; ic1_per_avg = ic1_period, "VSS Period" "msec/tooth", 0, 20, -1, -1, 20, 20,3, 3
ic1_per_avg = VSS_per, "VSS Period" "msec/tooth", 0, 20, -1, -1, 20, 20, 3, 3
ic2_per_avg = ic2_period, "ISS Period" "msec/tooth", 0, 20, -1, -1, 20, 20, 3, 3
VSS_skip = dbug, "VSS Skip Pulse", "", 0, 1000, 0, -1, 1000, 1000,0, 0
#if LOAD_KPA
load_short_gauge = LOAD_short, "Short Load", "kpa", 0, 200, -1, -1, 250, 250, 1, 0
#else
load_short_gauge = LOAD_short, "Short Load", "%", 0, 100, -1, -1, 100, 100, 1, 0
#endif
spare_port0PWM = sp0PWM, "SP0 PWM%", "%", 0, 100, -1, -1, 250, 250, 0, 0
spare_port1PWM = sp1PWM, "SP1 PWM%", "%", 0, 100, -1, -1, 250, 250, 0, 0
spare_port2PWM = sp2PWM, "SP2 PWM%", "%", 0, 100, -1, -1, 250, 250, 0, 0
spare_port3PWM = sp3PWM, "SP3 PWM%", "%", 0, 100, -1, -1, 250, 250, 0, 0
up_request = upshift_request, "UP_REQUEST", "", 0, 1, -1, 0, 1, 2, 0, 0
dwn_request = downshift_request, "DWN_REQUEST", "", 0, 1, -1, 0, 1, 2, 0, 0
TPS = rawTPS, "TPS" "%", 0, 100, -1, -1, 100, 100, 0, 0
mainloops = mloop, "Main Loops" "", 0, 100000, -1, -1, 100000,100000, 0, 0
loopfreq = mfreq, "Main Loop Freq", "Hz", 0, 6000, -1, -1, 6000, 6000, 0, 0
Decel = decel_flag, "Decel Delay", "sec", 0, 10, -1, -1, 255, 255, 1, 1
GearRatio = instant_ratio, "Instant. Ratio", ":1", 0, 10, -1, -1, 255, 255, 3, 3
EstimatedGear = estimated_gear, "Estimated Gear", "", 0, 4, -1, -1, 5, 5, 0, 0
PORTE = porte, "Port E", "", 0, 255, -1, -1, 255, 255, 0, 0
PORTA = porta, "Port A", "", 0, 255, -1, -1, 255, 255, 0, 0
hysteresis = hyst, "Hysteresis", "sec", 0, 10, -1, -1, 255, 255, 1, 1
ManifoldPressure = rawMAP, "raw MAP", "kPa", 0, 120, -1, -1, 255, 255, 1, 1
SP3_index_9 = sp39inx, "SP3 index 9", "", 0, 120, -1, -1, 255, 255, 1, 1
SP3_index_16 = sp316inx, "SP3 index 16", "", 0, 120, -1, -1, 255, 255, 1, 1
SP0_index_9 = sp09inx, "SP0 index 9", "", 0, 120, -1, -1, 255, 255, 1, 1
SP0_index_16 = sp016inx, "SP0 index 16", "", 0, 120, -1, -1, 255, 255, 1, 1
; - Regardless of the order shown here, the gauges are listed in the drop-down menu in capital/upper case
; alphabetical order, then lower case/alphabetical order (i.e., by ASCII numbering).
;-------------------------------------------------------------------------------
[FrontPage]
; Gauges are numbered left to right, top to bottom.
;
; 1 2 3 4
; 5 6 7 8
gauge1 = speedo
gauge2 = odometer
gauge3 = tach
gauge4 = FuelEfficiency
gauge5 = Current_gear_gauge
gauge7 = trans_temp
gauge6 = pcsol
gauge8 = load_short_gauge
;----------------------------------------------------------------------------
; Indicators
; expr off-label on-label, off-bg, off-fg, on-bg, on-fg
; indicator = { tpsaen }, "Not Accelerating", "AE", cyan, white, red, black
;
indicator = { upshift_request }, "", "UpShift Request", white, yellow, green, blue;
indicator = { downshift_request }, "", "DownShift Request", white, yellow, green, blue;
indicator = { downbutton }, "Downshift Not Pressed", "DownShift Pressed", white, yellow, green, blue;
indicator = { upbutton }, "Upshift Not Pressed", "UpShift Pressed", white, yellow, green, blue;
indicator = { revshiftblock }, "Shift Rev OK", "Shift Rev Blocked", white, yellow, green, blue;
indicator = { brake }, "Brakes OFF", "Brakes ON", green, black, red, white;
indicator = { lock_TCC > 0 }, "TCC Off", "TCC Applied", green, black, green, blue;
indicator = { (current_gear > 0) }, "PNR", "In Drive", white, black, blue, black;
indicator = { (current_gear < 0) }, "PND", "Reverse", white, black, red, black;
indicator = { auto_mode }, "MANUAL Mode", "AUTO Mode", green, black, blue, white;
indicator = { FWD }, "Table2", "Default Table1", white, black, green, blue;
indicator = { burnstatus }, "Burned", "Flash Burn", white, green, red, black;
indicator = { error > 1 }, "No Codes", "Error Codes!", white, black, red, black;
indicator = { In1 }, "Input1 LOW", "Input1 HIGH", cyan, red, red, white;
indicator = { In2 }, "Input2 LOW", "Input2 HIGH", cyan, red, red, white;
indicator = { In3 }, "Input3 LOW", "Input3 HIGH", cyan, red, red, white;
; indicator = { In4 }, "Input4 LOW", "Input4 HIGH", cyan, red, red, white;
indicator = { hyst > 0 }, "Hyst Clear", "Hysteresis", green, black, red, white;
indicator = { JakeBrake }, "Jake OFF", "Jake ON", cyan, red, red, white;
indicator = { VSSreset }, "VSS OK", "VSS Reset", cyan, red, red, white;
indicator = { decel_flag }, "Decel OFF", "Decel ON", cyan, black, blue, white;
;-------------------------------------------------------------------------------
[RunTime]
; barHysteresis = 2.5 ; Seconds
;-------------------------------------------------------------------------------
[Tuning]
; font = "Lucida Console", 12
; 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.
; Page 1 Page 2 Page 3 Page 4
pageButtons = "&page1", "p&age2", "pa&ge3", "pag&e4"
gauge1 = tach, tach, tach, tach
gauge2 = speedo, speedo, speedo, speedo
gauge4 = load_short_gauge, load_short_gauge, load_short_gauge, load_short_gauge
gauge5 = Current_gear_gauge, Current_gear_gauge, Current_gear_gauge, Current_gear_gauge
gauge6 = pcsol, pcsol, pcsol, pcsol
;-------------------------------------------------------------------------------
[AccelerationWizard]
; not used for trans control
;-------------------------------------------------------------------------------
[BurstMode]
getCommand = "a\x00\x06"
[OutputChannels]
; These are from the outpc. structure in the main.c file of the source code
; the size and format are the same as above
deadValue = { 0 } ; Convenient unchanging value.
ochBlockSize = 96
#if CAN_COMMANDS
; full version that works anywhere
ochGetCommand = "r\x01\x07%2o%2c"
#else
ochGetCommand = "a\x00\x06"
#endif
seconds = scalar, U16, 0, "sec", 1.000, 0.0
#if SI_LENGTHS
speedo = scalar, U16, 2, "kph", 0.16093, 0.0
odometer = scalar, U32, 4, "km", 0.00161, 0.0
#else
speedo = scalar, U16, 2, "mph", 0.100, 0.0
odometer = scalar, U32, 4, "miles", 0.001, 0.0
#endif
auto_mode = scalar, U08, 8, " ", 1.000, 0.0
downbutton = bits, U08, 9, [0:0]
upbutton = bits, U08, 9, [1:1]
downshift_request = bits, U08, 9, [2:2]
upshift_request = bits, U08, 9, [3:3]
error = scalar, U08, 10, " ", 1.000, 0.0
serialComm = bits, U08, 10, [0:0]
CAN error = bits, U08, 10, [1:1]
revshiftblock = bits, U08, 10, [2:2]
VSSreset = bits, U08, 10, [3:3]
VSSerr = bits, U08, 10, [4:4]
gearRangeErr = bits, U08, 10, [5:5]
lowVolts = bits, U08, 10, [6:6]
noBrake = bits, U08, 10, [7:7]
manual_gear = scalar, S08, 11, " ", 1.000, 0.0
current_gear = scalar, S08, 12, " ", 1.000, 0.0
target_gear = scalar, S08, 13, " ", 1.000, 0.0
engine_rpm = scalar, U16, 14, "rpm", 1.000, 0.0
#if LOAD_KPA
LOAD = scalar, S16, 16, "kpa", 0.100, 0.0
#else
LOAD = scalar, S16, 16, "%", 0.100, 0.0
#endif
#if CELSIUS
clt = scalar, S16, 18, "ºC", 0.055556, -320.0
#else
clt = scalar, S16, 18, "ºF", 0.100, 0.0
#endif
#if SI_LENGTHS
linepressure = scalar, S16, 20, "bar", 0.0068947, 0.0
#else
linepressure = scalar, S16, 20, "psi", 0.10, 0.0
#endif
lock_TCC = scalar, U08, 22, "%", 1.000, 0.0
brake = bits, U08, 23, [0:0]
burnstatus = bits, U08, 23, [1:1]
FWD = bits, U08, 23, [2:2]
forceUP = bits, U08, 23, [3:3]
forceDWN = bits, U08, 23, [4:4]
JakeBrake = bits, U08, 23, [5:5]
baudERR = bits, U08, 23, [6:6]
#if LOAD_KPA
LOAD_short = scalar, U16, 24, "kpa", 0.100, 0.0
#else
LOAD_short = scalar, U16, 24, "%", 0.100, 0.0
#endif
aux_volts = scalar, U16, 26, "V", 0.00488, 0.0
PC_duty = scalar, U08, 28, "%", 1.000, 0.0
slip = scalar, U08, 29, "%", 1.000, 0.0
dbug = scalar, U16, 30, " ", 1.000, 0.0
In1adc = scalar, U16, 32, "volts", 0.00488, 0.0
In2adc = scalar, U16, 34, "volts", 0.00488, 0.0
In3adc = scalar, U16, 36, "volts", 0.00488, 0.0
solst = scalar, U16, 38, " ", 1.000, 0.0
Output1 = bits, U16, 38, [0:0]
Output2 = bits, U16, 38, [1:1]
Output3 = bits, U16, 38, [2:2]
Output4 = bits, U16, 38, [3:3]
Output5 = bits, U16, 38, [4:4]
Output6 = bits, U16, 38, [5:5]
Output7 = bits, U16, 38, [6:6]
Output8 = bits, U16, 38, [7:7]
Output9 = bits, U16, 38, [8:8]
chcksum = scalar, U08, 40, " ", 1.000, 0.0
mileage = scalar, U16, 41, "mpg", 0.010, 0.0
FuelAdj = scalar, S16, 43, "%", 0.100, 0.0
SpkAdj = scalar, S16, 45, "°", 0.100, 0.0
IdleAdj = scalar, S16, 47, " ", 1.000, 0.0
SprAdj = scalar, S16, 49, " ", 1.000, 0.0
In1 = bits, U08, 51, [0:0]
In2 = bits, U08, 51, [1:1]
In3 = bits, U08, 51, [2:2]
In4 = bits, U08, 51, [3:3]
leverError = bits, U08, 51, [7:7]
sp1PWM = scalar, U08, 52, "%", 1.000, 0.0
is_rpm = scalar, U16, 53, "rpm", 1.000, 0.0
butADC = scalar, U16, 55, "volts", 0.00488, 0.0
sp2PWM = scalar, U08, 57, "%", 1.000, 0.0
TCC_count = scalar, U08, 58, "sec", 0.100, 0.0
sp0PWM = scalar, U08, 59, "%", 1.000, 0.0
sp09inx = scalar, S16, 60, ""' 0.100, 0.0
sp016inx = scalar, S16, 62, ""' 0.100, 0.0
sp3PWM = scalar, U08, 64, "%", 1.000, 0.0
sp39inx = scalar, S16, 65, ""' 0.100, 0.0
sp316inx = scalar, S16, 67, ""' 0.100, 0.0
rawMAP = scalar, U16, 69, "", 0.100, 0.0
rawTPS = scalar, U16, 71, "", 0.100, 0.0
hyst = scalar, U08, 73, "sec", 0.100, 0.0
mloop = scalar, U32, 74, "", 1.000, 0.0
Slip_Adjust = scalar, U08, 78, "%", 1.000, 0.0
LED1 = bits, U08, 79, [0:0]
LED2 = bits, U08, 79, [1:1]
LED3 = bits, U08, 79, [2:2]
LED4 = bits, U08, 79, [3:3]
; 80 bytes to here
porta = scalar, U08, 80, "", 1.000, 0.0
porte = scalar, U08, 81, "", 1.000, 0.0
estimated_gear = scalar, S08, 82, "", 1.000, 0.0
RPM_short = scalar, U16, 83, "", 1.000, 0.0
cruise_flag = scalar, U16, 85, "", 1.000, 0.0
ashiftrevs = scalar, U16, 87, "", 1.000, 0.0
decel_flag = scalar, U08, 89, "", 0.100, 0.0
VSS_per = scalar, U32, 90, "", 0.001, 0.0
instant_ratio = scalar, U16, 94, ":1", 0.001, 0.0
; pageSize = 94 + U16 = 96
; total page size must not be a (multiple of 8) plus 1; i.e. 17, 25, ... 57, 65, etc.
; Derived Values
secl = {(timeNow % 256) - (timeNow % 1) }, "sec" ; to keep TS happy despite CANbus delays
second2 = { seconds % 256 }, "sec" ; for clock gauge to see resets
time = { timeNow }, "sec" ; system time from PC
kmileage = { 235.2/mileage }, "l/100km"
#if SI_LENGTHS
os_rpm = { ((speedo*axle_ratio*inter_ratio*530.516)/tire_diam) }, "";
wheel_rpm = { speedo * (530.516/tire_diam) }, "rpm";
#else
os_rpm = { ((speedo*axle_ratio*inter_ratio*336.133)/tire_diam) }, "";
wheel_rpm = { speedo * (336.133/tire_diam) }, "rpm";
#endif
metricFE = { (mileage*0.43) }, "km/l";
VSS_Hz = { (1000/VSS_per) }, "Hz";
ic1_period = { 1000/(VSS_Hz) }, "msec";
ic2_period = { 60/(is_rpm * iss_divider ) }, "";
mfreq = { mloop/seconds }
;-------------------------------------------------------------------------------
;-- The entries are saved in the datalog file in the order in which they --
;-- appear in the list below. --
;-- --
;-- Channel - Case sensitive name of output channel to be logged. --
;-- Label - String written to header line of log. --
;-- Type - Data type of output, converted before writing. --
;-- Format - C-style output format of data. --
[Datalog]
; Channel Label Type Format
; -------------- ---------- ----- ------
entry = time, "Time", float, "%.3f"
entry = seconds, "Seconds", int, "%d"
entry = auto_mode, "Mode", int, "%d"
entry = speedo, "Speed", float, "%.1f"
entry = dbug, "VSerr", int, "%d"
entry = VSSreset, "VSrst", int, "%d"
entry = engine_rpm, "RPM", int, "%d"
#if SI_LENGTHS
entry = odometer, "kms", float, "%.3f"
#else
entry = odometer, "miles", float, "%.3f"
#endif
entry = LOAD, "load", float, "%.1f"
entry = LOAD_short, "avload", float, "%.1f"
entry = decel_flag, "decel", int, "%d"
entry = rawTPS, "TPS", float, "%.1f"
entry = rawMAP, "rMAP", float, "%.1f"
entry = ashiftrevs, "arev", int, "%d"
entry = mileage, "mpg", float, "%.2f"
entry = In1adc, "in1adc", float, "%.3f"
entry = In2adc, "in2adc", float, "%.3f"
entry = In3adc, "in3adc", float, "%.3f"
entry = In1, "swA", int, "%d"
entry = In2, "swB", int, "%d"
entry = In3, "swC", int, "%d"
entry = In4, "swD", int, "%d"
entry = leverError, "lverr", int, "%d"
entry = solst, "soln", int, "%d"
entry = Output1, "Out1", int, "%d"
entry = Output2, "Out2", int, "%d"
entry = Output3, "Out3", int, "%d"
entry = Output4, "Out4", int, "%d"
entry = Output5, "Out5", int, "%d"
entry = Output6, "Out6", int, "%d"
entry = Output7, "Out7", int, "%d"
entry = Output8, "Out8", int, "%d"
entry = Output9, "Out9", int, "%d"
entry = upbutton, "UP", int, "%d"
entry = downbutton, "DWN", int, "%d"
entry = downshift_request, "Dreq", int, "%d"
entry = upshift_request, "Ureq", int, "%d"
entry = hyst, "hyst", int, "%.1f"
entry = LED1, "led1", int, "%d"
entry = LED2, "led2", int, "%d"
entry = LED3, "led3", int, "%d"
entry = LED4, "led4", int, "%d"
entry = revshiftblock, "block", int, "%d"
entry = forceUP, "fUP", int, "%d"
entry = forceDWN, "fDWN", int, "%d"
entry = JakeBrake, "Jake", int, "%d"
entry = baudERR, "buadERR", int, "%d"
entry = butADC, "shftBut", float, "%.3f"
entry = current_gear, "cGear", int, "%d"
entry = target_gear, "tGear", int, "%d"
entry = manual_gear, "mGear", int, "%d"
entry = estimated_gear, "eGear", int, "%d"
entry = gearRangeErr, "gErr", int, "%d"
entry = lock_TCC, "TCC", int, "%d"
entry = TCC_count, "TCChyst", int, "%.1f"
entry = brake, "Brake", int, "%d"
entry = VSS_Hz, "VSSHz", int, "%d"
entry = os_rpm, "OS", int, "%d"
entry = is_rpm, "IS", int, "%d"
entry = slip, "slip", int, "%d"
#if CELSIUS
entry = clt, "cltC", float, "%.1f"
#else
entry = clt, "cltF", float, "%.1f"
#endif
entry = linepressure, "line", int, "%.1f"
entry = aux_volts, "auxCH", float, "%.3f"
entry = error, "Error", int, "%d"
entry = PC_duty, "PC%", int, "%d"
entry = sp0PWM, "Sp0%", int, "%d"
entry = sp1PWM, "Sp1%", int, "%d"
entry = sp2PWM, "Sp2%", int, "%d"
entry = sp3PWM, "Sp3%", int, "%d"
entry = dbug, "dbug", int, "%d"
entry = burnstatus, "burn", int, "%d"
entry = FWD, "4WD", int, "%d"
entry = sp016inx, "sp0x", float, "%.1f"
entry = sp09inx, "sp0y", float, "%.1f"
entry = sp316inx, "sp3x", float, "%.1f"
entry = sp39inx, "sp3y", float, "%.1f"
entry = porta, "ptA", int, "%d"
entry = porte, "ptE", int, "%d"
entry = RPM_short, "srpm", int, "%d"
entry = cruise_flag, "cruz", int, "%d"
entry = VSS_per, "Vper", float, "%.3f"
entry = instant_ratio, "iRat", float, "%.3f"
entry = wheel_rpm, "wRPM", int, "%.1f"
entry = IdleAdj, "idlAdj", int, "%d"
entry = SpkAdj, "spkAdj", int, "%.1f"
; -----------------------------------------------------------
[SettingContextHelp]
InputCaptureEdge = "VSS input signal capture edge: 0 = rising edge, 1 falling."
vss_table1 = "Vehicle speed bins for shift table 1."
vss_table2 = "Vehicle speed bins for shift table 2."
vss_PCtable = "Vehicle speed bins for line pressure control table."
LOAD_table1 = "Load bin values for shift table 1."
LOAD_table2 = "Load bin values for shift table 2."
LOAD_PCtable = "Load bin values for line pressure control table."
temp_table = "Temperature bin values for tables."
gear_table = "Gear ratio for reverse and forward gears."
CAN_enabled = "CAN connected, 0=no, 1=yes."
noTCC_temp = "TCC will not lock below this temperature (to aid warm-up)."
minTCC_gear = "Lowest gear in which the TCC can lock. Locking TCC at low speed and in low gears can result in harsh drive-line reactions."
noTCC_load = "TCC normally will not lock above this load. If it is locked, it will unlock above this load."
PulseTol = "Percentage tolerance for next input pulse."
axle_ratio = "Final drive ratio for FWD; Rear axle ratio for RWD."
tire_diam = "Tire rolling diameter."
under_rev_limit = "Do not allow upshift if it we result in rpm less than this value."
shift_mode = "This is the start-up shifting mode."
error_check = "Choose whether to enable error checking: 0 = no error checking (this is especially useful for testing with a stim), 1 = take action on reported errors."
rpm_limit = "Maximum engine RPM for downshift."
num_teeth = "Divide factor to convert VSS pulses to revolutions. It is the number of teeth on the output shaft tone ring."
TCC_PWM_Pd = "TCC PWM period - keep between 10-25 KHz (100-40 us)."
PC_PWM_Pd = "PC PWM period - keep between 10-25 KHz (100-40 us)."
OUT3_PWM_Pd = "Output3 PWM period."
BatFac = "Battery PWM correction factor for pressure control output."
ms2canID = "The CAN ID of the engine controller. Usually 0 for MegaSquirt code."
ms2varBLK = "Code specific CANbus variables location on the engine controller. It is the block number for outpc (7) from tableDescriptor."
PCneutral = "Pressure control output duty cycle in neutral."
baud = "Serial communications baud rate. 115200 for MShift(tm) controller."
board_type = "Board type of this board. Usually 4 for MShift(tm) controller."
trans_can_id = "CANbus id (address) of this board. Usually 1 for MShift(tm) controller."
can_var_rate = "Rate at which to get CANbus variables from MS-II."
auto_table1 = "The primary target gear for each load and mph when the 2/4WD input is NOT grounded."
auto_table2 = "The alternate target gear for each load and mph when the 2/4WD input is grounded."
pc_table = "The PWM% for PC solenoid by load and mph."
trans_temp_limit = "Apply TCC in all applicable gears above this temp, regardless of load. Applying TCC reduces heat from TCC slippage."
pulse_mile = "Pulses per mile for speedometer output."
rpm_check = "Choose whether to check RPM. Force shift if RPM gets too high or too low while running. Block shifts if RPM will be too high or too low after shift."
gear_hyst = "Minimum amount speed must change after last shift before a new shift is allowed. Prevents hunting gears."
max_shift_press = "Maximum shift line pressure allowed during a shift. If the pressure is higher, it will be lowered before the shift."
pressure_delay = "Time to delay for line pressure to change before shift."
LOADshortcount = "This is a factor used to average the load readings to help get a true sense of the driving style and thus help prevent the transmission from 'hunting' gears. It can be from 1 to 4000. Higher numbers result in longer averaging periods (and less fluctuation)."
LOADlongcount = "Long term load filtering factor."
LOADmult = "Multiplier for converting non-CANbus voltage to load."
LOADzero = "Y-axis intercept for non-CANbus conversion of volts to load."
minTCCspeed = "Minimum speed for the TCC to be allowed to lock."
PCtemp = "Temperature adjustments for line pressure."
out3dc = "Output3 duty cycle when ON."
sp1speed = "Spare port 1 speed threshold."
sp1speed_hyst = "Spare port 1 speed hysteresis."
sp1speed_cond = "Spare port 1 speed logic condition"
sp1rpm = "Spare port 1 RPM threshold."
sp1rpm_hyst = "Spare port 1 RPM hysteresis."
sp1rpm_cond = "Spare port 1 RPM logic condition."
sp1load = "Spare port 1 load threshold."
sp1load_hyst = "Spare port 1 load hysteresis."
sp1load_cond = "Spare port 1 load logic condition."
sp1gear = "Spare port 1 gear threshold."
sp1gear_cond = "Spare port 1 gear logic conditions."
sp2speed = "Spare port 2 speed threshold."
sp2speed_hyst = "Spare port 2 speed hysteresis."
sp2speed_cond = "Spare port 2 speed logic condition."
sp2rpm = "Spare port 2 RPM threshold."
sp2rpm_hyst = "Spare port 2 RPM condition."
sp2rpm_cond = "Spare port 2 RPM logic condition."
sp2load = "Spare port 2 load threshold."
sp2load_hyst = "Spare port 2 load hysteresis."
sp2load_cond = "Spare port 2 logic condition."
sp2gear = "Spare port 2 gear threshold."
sp2gear_cond = "Spare port 2 gear conditions."
mlever_vP = "If voltage based shifter, this is the voltage in Park."
mlever_vR = "If voltage based shifter, this is the voltage in Reverse."
mlever_vN = "If voltage based shifter, this is the voltage in Neutral."
mlever_v4 = "If voltage based shifter, this is the voltage in 4th."
mlever_v3 = "If voltage based shifter, this is the voltage in 3rd."
mlever_v2 = "If voltage based shifter, this is the voltage in 2nd."
mlever_v1 = "If voltage based shifter, this is the, voltage in 1st."
In4_OD = "0 if using lever for fourth, 1 if separate switch (ground for 4th)."
clutch11u = "If spare port 1 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch12u = "If spare port 1 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch13u = "If spare port 1 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch14u = "If spare port 1 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch15u = "If spare port 1 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch16u = "If spare port 1 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch17u = "If spare port 1 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch18u = "If spare port 1 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch21u = "If spare port 2 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch22u = "If spare port 2 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch23u = "If spare port 2 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch24u = "If spare port 2 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch25u = "If spare port 2 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch26u = "If spare port 2 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch27u = "If spare port 2 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch28u = "If spare port 2 used as clutch output, you can set which upshifts spare port 1 is activated"
clutch11d = "If spare port 1 used as clutch output, you can set which downshifts spare port 1 is activated."
clutch12d = "If spare port 1 used as clutch output, you can set which downshifts spare port 1 is activated."
clutch13d = "If spare port 1 used as clutch output, you can set which downshifts spare port 1 is activated."
clutch14d = "If spare port 1 used as clutch output, you can set which downshifts spare port 1 is activated."
clutch15d = "If spare port 1 used as clutch output, you can set which downshifts spare port 1 is activated."
clutch16d = "If spare port 1 used as clutch output, you can set which downshifts spare port 1 is activated."
clutch17d = "If spare port 1 used as clutch output, you can set which downshifts spare port 1 is activated."
clutch18d = "If spare port 1 used as clutch output, you can set which downshifts spare port 1 is activated."
clutch21d = "If spare port 2 used as clutch output, you can set which downshifts spare port 1 is activated"
clutch22d = "If spare port 2 used as clutch output, you can set which downshifts spare port 1 is activated"
clutch23d = "If spare port 2 used as clutch output, you can set which downshifts spare port 1 is activated"
clutch24d = "If spare port 2 used as clutch output, you can set which downshifts spare port 1 is activated"
clutch25d = "If spare port 2 used as clutch output, you can set which downshifts spare port 1 is activated"
clutch26d = "If spare port 2 used as clutch output, you can set which downshifts spare port 1 is activated"
clutch27d = "If spare port 2 used as clutch output, you can set which downshifts spare port 1 is activated"
clutch28d = "If spare port 2 used as clutch output, you can set which downshifts spare port 1 is activated"
FWD_factor = "Speedo adjustment ratio when 4WD pin is low (in four wheel drive). This adjustment is applied when the 2/4WD input is grounded. If you are using that input only to switch shift tables, not to engage a different final drive ratio, set this value to 1.000."
upshift_retard = "Timing retard sent to engine controller during an upshift. Will be subtracted from engine's controllers calculated value."
dwnshift_retard = "Timing retard sent to engine controller during a downshift. Will be subtracted from engine's controllers calculated value"
gear2_retard = "Second gear timing retard when above specified load."
gear3_retard = "Third gear retard when above specified load."
gear4_retard = "Fourth gear retard when above specified load."
Tretard_load = "Only retard timing if load is above this specified load."
LUF_off = "Lock-up feel solenoid pulse width modulation percentage when nominally OFF."
LUF_loLoad = "Lock-up feel low load (for low state PWM percent)."
LUF_hiLoad = "Lock-up feel high load (for high state PWM percent)."
LUF_loPWM = "Lock-up feel PWM percent at low load."
LUF_hiPWM = "Lock-up feel PWM percent at high load."
digital_threshold = "ADC to digital ON/OFF threshold. Values below this number are considered OFF, values above it are considered ON."
shftr_accum = "Shifter accumulator - sets shift button sensitivity (lower is more sensitive)."
hyst_enable_speed = "Shift hysteresis is disabled below this speed (x10)."
vss_mask = "VSS input masking to reduce noise. Low numbers mean more filtering, high numbers mean less filtering. Set to 0 (zero) to disable. If non-zero, set to at least 50."
LUF_on = "PWM percent when Lock-up feel is ON."
min_speed = "Minimum speed, will set to zero below this speed. Helps filter VSS signal noise."
vss_skip_max = "Number of VSS errors allowed before VSS computations are reset."
line_units = "Line pressure input usage (use table or report ADC or use 2 point calcs)."
inj_flow = "Injector flow rate (lbs/hour) x10 for ALL injectors for mileage calcs."
open_time = "Injector open time (msecX100) for mileage calcs."
fuel_density = "The engine's fuel density."
nSquirts = "Number of squirts (divide by 2 if alternating)."
refresh_int = "The interval time between dithers for output1 and output2."
refresh_dur = "The 100% duty cycle time for refreshing the PWM on output1 and output2."
dither_intPC = "The interval time between dither pulses for the pressure control output."
dither_durPC = "The 100% duty cycle dither pulse duration for the pressure control output."
out1_pwm_off = "Output1 and output2 OFF duration. The PWM period is the OFF duration plus the ON duration. The frequency is 1/period."
out1_pwm_on = "Output1 and output2 ON duration. The PWM period is the OFF duration plus the ON duration. The frequency is 1/period."
out2_pwm_off = "Output1 and output2 OFF duration. The PWM period is the OFF duration plus the ON duration. The frequency is 1/period."
out2_pwm_on = "Output1 and output2 ON duration. The PWM period is the OFF duration plus the ON duration. The frequency is 1/period."
brake_ON_polarity = "Select whether a grounded signal (~0V) means the brakes are ON or OFF."
WOT_tps_threshold = "WOT TPS threshold as a percent of 1024 ADC counts."
iss_mask = "ISS input masking to reduce noise. Low numbers mean more filtering, high numbers mean less filtering. Set to 0 (zero) to disable. If non-zero, set to at least 50. When you actually have an ISS sensor, it is used to calculate the ISS rpm (if you don't have an ISS sensor, it is calculated from the VSS and gear ratios). However, some filtering (aka. "input masking") is done on the signal to reject false signals. If the masking is set too low, the number of teeth appears to decreases, and this would likely be worse at higher speeds."
ic2_usage = "Choose how to use the second timer input channel. Select from: not used, Input Speed Sensor, or Tach."
iss_divider = "ISS/tach divider (number of teeth/rev)."
activate_xrate = "CANbus transmission rate for CANbus message transmission."
num_gears = "Number of forward gears. Does not include Park, Neutral or Reverse. Ex. for the 4L60E, this is 4."
gear5_retard = "Fifth gear timing advance retard sent to MS-II."
gear6_retard = "Sixth gear timing advance retard sent to MS-II."
gear7_retard = "Seventh gear timing advance retard sent to MS-II."
gear8_retard = "Eighth gear timing advance retard sent to MS-II."
mlever_v5 = "If mlever_mode=1, voltage in 5th."
mlever_v6 = "If mlever_mode=1, voltage in 6th."
mlever_v7 = "If mlever_mode=1, voltage in 7th."
mlever_v8 = "If mlever_mode=1, voltage in 8th."
Adj_blk = "Fuel/Spark/Idle block on MS-II. Normally 5 for MS-II."
Adj_varoffset = "Fuel/Spark/Idle variable offset on MS-II. Normally 946 for MS-II."
LED11 = "LED 1 bit output patterns."
LED12 = "LED 1 bit output patterns."
LED13 = "LED 1 bit output patterns."
LED14 = "LED 1 bit output patterns."
LED15 = "LED 1 bit output patterns."
LED16 = "LED 1 bit output patterns."
LED17 = "LED 1 bit output patterns."
LED18 = "LED 1 bit output patterns."
LED21 = "LED 2 bit output patterns."
LED22 = "LED 2 bit output patterns."
LED23 = "LED 2 bit output patterns."
LED24 = "LED 2 bit output patterns."
LED25 = "LED 2 bit output patterns."
LED26 = "LED 2 bit output patterns."
LED27 = "LED 2 bit output patterns."
LED28 = "LED 2 bit output patterns."
LED31 = "LED 3 bit output patterns."
LED32 = "LED 3 bit output patterns."
LED33 = "LED 3 bit output patterns."
LED34 = "LED 3 bit output patterns."
LED35 = "LED 3 bit output patterns."
LED36 = "LED 3 bit output patterns."
LED37 = "LED 3 bit output patterns."
LED38 = "LED 3 bit output patterns."
LED41 = "LED 4 bit output patterns."
LED42 = "LED 4 bit output patterns."
LED43 = "LED 4 bit output patterns."
LED44 = "LED 4 bit output patterns."
LED45 = "LED 4 bit output patterns."
LED46 = "LED 4 bit output patterns."
LED47 = "LED 4 bit output patterns."
LED48 = "LED 4 bit output patterns."
LEDN1 = "LED bit pattern in neutral."
LEDN2 = "LED bit pattern in neutral."
LEDN3 = "LED bit pattern in neutral."
LEDN4 = "LED bit pattern in neutral."
LEDR1 = "LED bit pattern in reverse."
LEDR2 = "LED bit pattern in reverse."
LEDR3 = "LED bit pattern in reverse."
LEDR4 = "LED bit pattern in reverse."
IACAdjngear = "IAC step/percent adjustment sent to MS-II when gear==1 and VSS==0 and TPS==0. Can help prevent stalling in gear."
AdvAdjngear = "Timing advance adjustment sent to MS=II when gear==1 and VSS==0 and TPS==0. Can help prevent stalling in gear."
idle_tps_adc = "Idle TPS percentage of full ADC count for idle-up adjustments."
can_testout = "CANbus mode to get MS-II outpc variables: get entire outpc., or get only outmsg variables."
min_manual_speed = "minimum speed in manual mode before switch to auto mode (can be 0, or negative to disable)."
shft_btn_polarity = "shift button polarity 0=low, 1=high."
TCC_PWM = "TCC pulse width modulation mode: ON/OFF, or PWM'd."
spareInputs = "Spare inputs usage if mlever_mode is variable voltages: use as ADCs, use as shift outputs or use Input1 as shift output, Input2 as shift solenoid output."
Output5 = "Binary output pattern for output5."
Output6 = "Binary output pattern for output6."
PWM_enable = "Set whether PWM is enabled for shift solenoids."
maxSpeed = "Maximum speed for VSS signal. Signals indicating speeds above this will be rejected, resulting in a smoother speedometer."
resetTime = "Period to disable VSS filtering on reset. Allows time for VSS pattern to be established before filtering."
TCC_counter = "Period to disable TCC lock-up again after unlocking. Prevents cycling of TCC."
STCC_rpm = "Minimum RPM to apply full time torque converter clutch (TCC)."
STCC_gear = "Minimum gear to apply full time torque converter clutch (TCC)."
STCC_ULrpm = "RPM to unlock the torque converter clutch in full-time TCC mode."
VSSsmoothFactor = "Smoothing factor for VSS."
TCCupshift = "Torque Converter Clutch (TCC) upshift lock-up behavior."
maxUPpressure2 = "Maximum line pressure PWM percent when shifting up to the specified gear. If the pre-shift pressure is lower than the maximum, it will be used."
maxUPpressure3 = "Maximum line pressure PWM percent when shifting up to the specified gear. If the pre-shift pressure is lower than the maximum, it will be used."
maxUPpressure4 = "Maximum line pressure PWM percent when shifting up to the specified gear. If the pre-shift pressure is lower than the maximum, it will be used."
maxUPpressure5 = "Maximum line pressure PWM percent when shifting up to the specified gear. If the pre-shift pressure is lower than the maximum, it will be used."
maxUPpressure6 = "Maximum line pressure PWM percent when shifting up to the specified gear. If the pre-shift pressure is lower than the maximum, it will be used."
maxUPpressure7 = "Maximum line pressure PWM percent when shifting up to the specified gear. If the pre-shift pressure is lower than the maximum, it will be used."
maxUPpressure8 = "Maximum line pressure PWM percent when shifting up to the specified gear. If the pre-shift pressure is lower than the maximum, it will be used."
maxDWNpressure1 = "Maximum line pressure PWM percent when shifting down to the specified gear. If the pre-shift pressure is lower than the maximum, it will be used."
maxDWNpressure2 = "Maximum line pressure PWM percent when shifting down to the specified gear. If the pre-shift pressure is lower than the maximum, it will be used."
maxDWNpressure3 = "Maximum line pressure PWM percent when shifting down to the specified gear. If the pre-shift pressure is lower than the maximum, it will be used."
maxDWNpressure4 = "Maximum line pressure PWM percent when shifting down to the specified gear. If the pre-shift pressure is lower than the maximum, it will be used."
maxDWNpressure5 = "Maximum line pressure PWM percent when shifting down to the specified gear. If the pre-shift pressure is lower than the maximum, it will be used."
maxDWNpressure6 = "Maximum line pressure PWM percent when shifting down to the specified gear. If the pre-shift pressure is lower than the maximum, it will be used."
maxDWNpressure7 = "Maximum line pressure PWM percent when shifting down to the specified gear. If the pre-shift pressure is lower than the maximum, it will be used."
solCupshiftPWM1 = "Individual upshift PWM% for output3."
solCupshiftPWM2 = "Individual upshift PWM% for output3."
solCupshiftPWM3 = "Individual upshift PWM% for output3."
solCupshiftPWM4 = "Individual upshift PWM% for output3."
solCupshiftPWM5 = "Individual upshift PWM% for output3."
solCupshiftPWM6 = "Individual upshift PWM% for output3."
solCupshiftPWM7 = "Individual upshift PWM% for output3."
solCdwnshiftPWM1 = "Individual downshift PWM% for output3."
solCdwnshiftPWM2 = "Individual downshift PWM% for output3."
solCdwnshiftPWM3 = "Individual downshift PWM% for output3."
solCdwnshiftPWM4 = "Individual downshift PWM% for output3."
solCdwnshiftPWM5 = "Individual downshift PWM% for output3."
solCdwnshiftPWM6 = "Individual downshift PWM% for output3."
solCdwnshiftPWM7 = "Individual downshift PWM% for output3."
debounce = "Threshold for switch manifold debounce. Higher values filter the signal more reliably, but slows their response slightly."
WOT_dur = "WOT hysteresis is blocked for this time period."
mlever_mode = "Select whether you want to use multiple digital inputs, or a variable voltage signal to read the manual shift lever position."
shftbut_mode = "shift button mode 0 = two grounded inputs, 1 = single ADC."
no_button_V = "Volts for neither button pressed (ADC count)."
up_button_V = "Volts for sw1 button pressed (ADC count)."
dwn_button_V = "Volts for sw2 button pressed (ADC count)."
both_button_V = "Volts for both buttons pressed (ADC count)."
tol_button_V = "Volts for both buttons pressed."
hardware = "Select GPIO Board or microTCU to match your controller hardware. You must CYCLE THE POWER Off/On after changing this parameter."
sp0_mode = "SP0 mode 0 = speedometer output, 1 = PWM, 2 = TCC, 3 = shift solenoid."
sp1_mode = "SP1 mode 0 = spare port, 1 = PWM, 2 = TCC, 3 = shift solenoid."
sp2_mode = "SP2 mode 0 = spare port, 1 = PWM, 2 = TCC, 3 = shift solenoid."
sp3_mode = "SP3 mode 0 = line pressure output, 1 = PWM, 2 = TCC, 3 = shift solenoid."
sp0_table = "PWM lookup table for SP0."
sp1_pwm_table = "PWM lookup table for SP1."
sp2_pwm_table = "PWM lookup table for SP2."
sp3_table = "PWM lookup table for SP3."
sp0_9Bin = "PWM lookup table 9-element index for SP0."
sp0_16Bin = "PWM lookup table 16-element index for SP0."
sp3_9Bin = "PWM lookup table 9-element index for SP3."
sp3_16Bin = "PWM lookup table 16-element index for SP3."
sp1_pwm_index = "PWM lookup table index for SP1."
sp2_pwm_index = "PWM lookup table index for SP2."
sp0_9index_mode = "Value to compare to the 9-element index table when looking up the PWM% in the 16x9 table. Choose from: load, speed, rpm, clt, MAP, TPS, or current gear."
sp0_16index_mode = "Value to compare to the 16-element index table when looking up the PWM% in the 16x9 table. Choose from: load, speed, rpm, clt, MAP, TPS, or current gear."
sp3_9index_mode = "Value to compare to the 9-element index table when looking up the PWM% in the 16x9 table. Choose from: load, speed, rpm, clt, MAP, TPS, or current gear."
sp3_16index_mode = "Value to compare to the 16-element index table when looking up the PWM% in the 16x9 table. Choose from: load, speed, rpm, clt, MAP, TPS, or current gear."
sp1_index_mode = "Value to compare to sp1_pwm_index. Choose from: load, speed, engine rpm, coolant temperature, or current gear."
sp2_index_mode = "Value to compare to sp2_pwm_index. Choose from: load, speed, engine rpm, coolant temperature, or current gear."
sp0_active = "If SP0 is PWM, 0 - always on, 1 - on except shifting, 2 on only during shift."
sp1_active = "If SP1 is PWM, 0 - always on, 1 - on except shifting, 2 on only during shift."
sp2_active = "If SP2 is PWM, 0 - always on, 1 - on except shifting, 2 on only during shift."
sp3_active = "If SP3 is PWM, 0 - always on, 1 - off if RPM is less than 300."
LPshiftOptn = "0=Use table at all times, 1=Use OFF value for PWM% while shifting, 2=Use higher of table PWM% or 100-shift limit while shifting".
sp0_off = "If SP0 is PWM, this is the 'off state' PWM%."
sp1_off = "If SP1 is PWM, this is the 'off state' PWM%."
sp2_off = "If SP2 is PWM, this is the 'off state' PWM%."
sp3_off = "If SP3 is PWM, this is the 'off state' PWM%."
sp0_per = "Spare port 1 pulse width modulation period. Set the period (the inverse of the frequency) in milliseconds. The frequency in Hertz is 1000 divided by the period in milliseconds."
sp1_pwm_per = "Spare port 1 pulse width modulation period. Must be set in multiples of 0.128 ms clock tics."
sp2_pwm_per = "Spare port 2 pulse width modulation period. Must be set in multiples of 0.128 ms clock tics."
sp3_per = "Spare port 3 pulse width modulation period. Set the period (the inverse of the frequency) in milliseconds. The frequency in Hertz is 1000 divided by the period in milliseconds."
Output7 = "Binary output pattern for output7."
speedoCorr = "Speedometer correction factors to account for VSS noise, tire growth or slippage at high speeds, etc.."
speedoCorrBin = "Raw speed values for speedometer correction values. Can be up to plus or minus 100%."
volt1 = "Voltage for first pressure point"
press1 = "Pressure for first point (PSI, or any other units as long as you are consistent)."
volt2 = "Voltage for 2nd pressure point"
press2 = "Pressure for 2nd point (PSI, or any other units as long as you are consistent)."
FlashLEDs = "Choose whether to have the LEDs flash once per second in forward gears when the controller is in manual shift mode."
SlipOptn = "Choose whether to report/log the slip in the torque converter, or the slip in the bands inside the transmission (only available if you have enabled the ISS input)."
mleverdead = "The voltage range between the mid-point of set points for which no gear will be determined. This should be a large enough value for the controller not to fluctuate between gears when the lever is not moved, but small enough to make sure a gear is selected under all conditions."
PCreverse = "Line pressure 100-PWM % in reverse"
PCrvrseOptn = "Line pressure option for reverse: 0 = User specified, 1 = Use 16x9 table"
PCntrlOptn = "Line pressure option for neutral: 0 = User specified, 1 = Use 16x9 table"
menuDisplay = "Choose whether to: show all menus; show only those required for tuning (shift tables, line pressure settings/tables, etc.); or show only those required for configuration (input and output states in each gear, VSS set-up, etc.)."
maxDeltaLever = "This is the maximum number of lever positions that are considered valid (in forward gears only)."
leverErr = "Choose whether to completely ignore lever errors, or to check and report lever errors after the delay period has expired."
lever_timer = "If the "Report Lever Errors" option is selected, they will still be ignored for the period specified here (in seconds), to prevent the code from acting on momentary glitches."
minADCLeverVolts = "Set the minimum valid voltage for the voltage-based lever. Any signal voltage below this will be ignored, and the last valid voltage used."
maxADCLeverVolts = "Set the maximum valid voltage for the voltage-based lever. Any signal voltage above this will be ignored, and the last valid voltage used."
canVSSoffset = "The offset within the external CANbus controller's output block where the VSS signal is located. Set to zero (0) to use the internal GPIO VSS input."
TCC_hyst = "Load hysteresis for TCC unlock (TCC unlocks when the load is below the lock level MINUS this value)."
speedoutDC = "This parameter sets the pulse width modulation percentage for the speedometer output signal (from 1% to 99%), where the percentage is the time 'high' when the signal from the processor is used to control a PNP transistor with a pull-up circuit (i.e. the standard build)."
follow_mode = "Choose 'Normal Auto Mode' for normal mode (manual gear lever sets HIGHEST forward gear) OR enable burnout mode to 'Use Lever Position Only (burnout mode)' when the manual shift lever is placed in a gear at or less than the user specified value for Burnout Mode Highest Gear. Using burn-out mode can help when doing burnouts in a water box to warm slicks when drag racing. Only functions when in auto mode."
gear_indic_perP = "Set the PWM period in milliseconds for the gear indicator output (on spare port 2) in Park. The frequency is 1000/period in milliseconds. The value can be from 0.512 milliseconds (1953 Hertz) to 819.1 milliseconds (1.2 Hertz) in 0.128 millisecond steps (TunerStudio will round the entered value as required.)"
gear_indic_perN = "Set the PWM period in milliseconds for the gear indicator output (on spare port 2) in Neutral. The frequency is 1000/period in milliseconds. The value can be from 0.512 milliseconds (1953 Hertz) to 819.1 milliseconds (1.2 Hertz) in 0.128 millisecond steps (TunerStudio will round the entered value as required.)"
gear_indic_perR = "Set the PWM period in milliseconds for the gear indicator output (on spare port 2) in Reverse. The frequency is 1000/period in milliseconds. The value can be from 0.512 milliseconds (1953 Hertz) to 819.1 milliseconds (1.2 Hertz) in 0.128 millisecond steps (TunerStudio will round the entered value as required.)"
gear_indic_per1 = "Set the PWM period in milliseconds for the gear indicator output (on spare port 2) in First gear. The frequency is 1000/period in milliseconds. The value can be from 0.512 milliseconds (1953 Hertz) to 819.1 milliseconds (1.2 Hertz) in 0.128 millisecond steps (TunerStudio will round the entered value as required.)"
gear_indic_per2 = "Set the PWM period in milliseconds for the gear indicator output (on spare port 2) in Second gear. The frequency is 1000/period in milliseconds. The value can be from 0.512 milliseconds (1953 Hertz) to 819.1 milliseconds (1.2 Hertz) in 0.128 millisecond steps (TunerStudio will round the entered value as required.)"
gear_indic_per3 = "Set the PWM period in milliseconds for the gear indicator output (on spare port 2) in Third gear. The frequency is 1000/period in milliseconds. The value can be from 0.512 milliseconds (1953 Hertz) to 819.1 milliseconds (1.2 Hertz) in 0.128 millisecond steps (TunerStudio will round the entered value as required.)"
gear_indic_per4 = "Set the PWM period in milliseconds for the gear indicator output (on spare port 2) in Fourth gear. The frequency is 1000/period in milliseconds. The value can be from 0.512 milliseconds (1953 Hertz) to 819.1 milliseconds (1.2 Hertz) in 0.128 millisecond steps (TunerStudio will round the entered value as required.)"
gear_indic_per5 = "Set the PWM period in milliseconds for the gear indicator output (on spare port 2) in Fifth gear. The frequency is 1000/period in milliseconds. The value can be from 0.512 milliseconds (1953 Hertz) to 819.1 milliseconds (1.2 Hertz) in 0.128 millisecond steps (TunerStudio will round the entered value as required.)"
gear_indic_per6 = "Set the PWM period in milliseconds for the gear indicator output (on spare port 2) in Sixth gear. The frequency is 1000/period in milliseconds. The value can be from 0.512 milliseconds (1953 Hertz) to 819.1 milliseconds (1.2 Hertz) in 0.128 millisecond steps (TunerStudio will round the entered value as required.)"
gear_indic_per7 = "Set the PWM period in milliseconds for the gear indicator output (on spare port 2) in Seventh gear. The frequency is 1000/period in milliseconds. The value can be from 0.512 milliseconds (1953 Hertz) to 819.1 milliseconds (1.2 Hertz) in 0.128 millisecond steps (TunerStudio will round the entered value as required.)"
gear_indic_per8 = "Set the PWM period in milliseconds for the gear indicator output (on spare port 2) in Eighth gear. The frequency is 1000/period in milliseconds. The value can be from 0.512 milliseconds (1953 Hertz) to 819.1 milliseconds (1.2 Hertz) in 0.128 millisecond steps (TunerStudio will round the entered value as required.)"
gear_indic_dcP = "Set the PWM duty cycle in percent for the gear indicator output (on spare port 2) in Park. The value can be from 0% to 100%. Note that higher frequencies will have less resolution on the PWM percentage. In some case the PWM% can be inverted by the particular circuit's layout and components, so use caution in implementing this control (you may need to set the value to 100% minus your desired percentage)."
gear_indic_dcN = "Set the PWM duty cycle in percent for the gear indicator output (on spare port 2) in Neutral. The value can be from 0% to 100%. Note that higher frequencies will have less resolution on the PWM percentage. In some case the PWM% can be inverted by the particular circuit's layout and components, so use caution in implementing this control (you may need to set the value to 100% minus your desired percentage)."
gear_indic_dcR = "Set the PWM duty cycle in percent for the gear indicator output (on spare port 2) in Reverse. The value can be from 0% to 100%. Note that higher frequencies will have less resolution on the PWM percentage. In some case the PWM% can be inverted by the particular circuit's layout and components, so use caution in implementing this control (you may need to set the value to 100% minus your desired percentage)."
gear_indic_dc1 = "Set the PWM duty cycle in percent for the gear indicator output (on spare port 2) in First gear. The value can be from 0% to 100%. Note that higher frequencies will have less resolution on the PWM percentage. In some case the PWM% can be inverted by the particular circuit's layout and components, so use caution in implementing this control (you may need to set the value to 100% minus your desired percentage)."
gear_indic_dc2 = "Set the PWM duty cycle in percent for the gear indicator output (on spare port 2) in Second gear. The value can be from 0% to 100%. Note that higher frequencies will have less resolution on the PWM percentage. In some case the PWM% can be inverted by the particular circuit's layout and components, so use caution in implementing this control (you may need to set the value to 100% minus your desired percentage)."
gear_indic_dc3 = "Set the PWM duty cycle in percent for the gear indicator output (on spare port 2) in Third gear. The value can be from 0% to 100%. Note that higher frequencies will have less resolution on the PWM percentage. In some case the PWM% can be inverted by the particular circuit's layout and components, so use caution in implementing this control (you may need to set the value to 100% minus your desired percentage)."
gear_indic_dc4 = "Set the PWM duty cycle in percent for the gear indicator output (on spare port 2) in Fourth gear. The value can be from 0% to 100%. Note that higher frequencies will have less resolution on the PWM percentage. In some case the PWM% can be inverted by the particular circuit's layout and components, so use caution in implementing this control (you may need to set the value to 100% minus your desired percentage)."
gear_indic_dc5 = "Set the PWM duty cycle in percent for the gear indicator output (on spare port 2) in Fifth gear. The value can be from 0% to 100%. Note that higher frequencies will have less resolution on the PWM percentage. In some case the PWM% can be inverted by the particular circuit's layout and components, so use caution in implementing this control (you may need to set the value to 100% minus your desired percentage)."
gear_indic_dc6 = "Set the PWM duty cycle in percent for the gear indicator output (on spare port 2) in Sixth gear. The value can be from 0% to 100%. Note that higher frequencies will have less resolution on the PWM percentage. In some case the PWM% can be inverted by the particular circuit's layout and components, so use caution in implementing this control (you may need to set the value to 100% minus your desired percentage)."
gear_indic_dc7 = "Set the PWM duty cycle in percent for the gear indicator output (on spare port 2) in Seventh gear. The value can be from 0% to 100%. Note that higher frequencies will have less resolution on the PWM percentage. In some case the PWM% can be inverted by the particular circuit's layout and components, so use caution in implementing this control (you may need to set the value to 100% minus your desired percentage)."
gear_indic_dc8 = "Set the PWM duty cycle in percent for the gear indicator output (on spare port 2) in Eighth gear. The value can be from 0% to 100%. Note that higher frequencies will have less resolution on the PWM percentage. In some case the PWM% can be inverted by the particular circuit's layout and components, so use caution in implementing this control (you may need to set the value to 100% minus your desired percentage)."
gearIndctrMode = "Select whether to use the current gear or the manual lever position to drive the PWM duty cycle and frequency on spare port 2 in gear indicator mode. The default is 'Use Current Gear' and the other option is 'Use Manual Lever Position'."
ISSratioR = "Enter Tach/ISS ratio for Reverse gear. Typically 1.000:1"
ISSratio1 = "Enter Tach/ISS ratio for First gear. Typically 1.000:1"
ISSratio2 = "Enter Tach/ISS ratio for Second gear. Typically 1.000:1"
ISSratio3 = "Enter Tach/ISS ratio for Third gear. Typically 1.000:1"
ISSratio4 = "Enter Tach/ISS ratio for Fourth gear. Should be 0.750 for the GM 4L80E transmission, typically 1.000 for others."
ISSratio5 = "Enter Tach/ISS ratio for Fifth gear. Typically 1.000:1"
ISSratio6 = "Enter Tach/ISS ratio for Sixth gear. Typically 1.000:1"
ISSratio7 = "Enter Tach/ISS ratio for Seventh gear. Typically 1.000:1"
ISSratio8 = "Enter Tach/ISS ratio for Eighth gear. Typically 1.000:1"
follow_maxgear = "The highest gear for which the lever will act to keep the transmission in the selected position when burnout mode is active".
decel_Delay = "The time period to prevent downshifts after decel mode from the last time the TPS and speed met the criteria set above."
decel_TPS = "The maximum TPS value which the current TPS value must be below in order to activate decel mode (default is 12%)."
decel_Load = "When the decel mode is active (there is an indicator in TunerStudio) the short-term average load (used in the shift table lookup) will be restrained to be less than or equal to the user setting."
VSS_location = "If your vehicle speed sensor is mounted on the transmission's output shaft , i.e. 0 = between the trans. and the final drive (typically rear wheel drive), then select 'Between Transmission and Final Drive (typ. RWD)'. If your sensor is mounted so that its ring turns as the same speed as the wheel (and half-shaft) then choose 'Between Final Drive and Wheel (typ. FWD)'."
inter_ratio = "Many FWD transmissions have a set of intermediate gears between the gear cluster/output shaft and the pinion shaft. If your trans-axle has such a gear (or you have a 'quick-change' rear axle), enter the ratio here. The number is the reduction ratio. So if your intermediate gears reduce the speed to 1/2, enter 2.000. If you do not have intermediate gearing, enter 1.000."
CANVSSadj = "Set multiplier for the incoming value on CAN from 0 to 20 (in 0.001 increments) to adjust for differing units (meters/sec or kilometres per hour, for example) to convert to MShifts native MPH units and to adjust for scaling differences (x10, x100, x1000, for example)."
VSS_ISR = "The choices are: "Use old VSS ISR" which is the algorithm used in all code up to 5.096, or "Use new beta VSS ISR" which has been in place for the last few codes. The new algorithm is more sophisticated, but less developed. While the new code works well on the bench, users are reporting some issues in field testing. So we have made it an option while we develop this latest code. The default is to use the old code."
TCC_highGear = "Choose whether to use the normal control limits for the TCC in high gear, or to have the TCC always ON in the highest gear (useful for some transmissions where the TCC control is a combination of a lock up device to improve efficiency and a shift solenoid). This choice forces the TCC to apply during shifts to the highest gear as well as when the highest gear is engaged."
hyst_delay = "The time after a shift in which another shift will not be allowed (unless the vehicle speed also changes by more than the shift speed hysteresis value)."
tps_adj = "When the TPS is above the wide open throttle (WOT) threshold above, selecting 'Rise quickly w/ high TPS values' will cause the short-term load average will rise very quickly, much faster than the normal rate. However, the short-term load average will fall at the normal rate set by the Load Smoothing Factor (below). This allows the shift table to respond very quickly to increases in load, and makes the gear shift strategy much more aggressive."
brake_adj = "Selecting 'Slow load smooth rate w/ braking' ensures that when braking, the short-term load average will change more slowly, based on the Percentage Load Smoothing when Braking setting below. This allows the short term load average to stay high while braking, keeping the transmission's shift strategy more aggressive. This may be especially useful on a road race track, where you will be braking hard for a corner, and wanting the highest possible gear once the braking period ends."
rise_adj = "Selecting 'Rise quickly w/ increasing load' ensures when the current instant load value is above the current short term load average, the short-term load average will rise to the instant load value very quickly, much faster than the normal rate. However, the short-term load average will fall at the normal rate set by the Load Smoothing Factor (below). This allows the shift table to respond very quickly to increases in load, and makes the gear shift strategy much more aggressive."
decel_adj = "Limit max. load w/ decel when set will limit short term average load to 'Max. sLoad in Decel Mode' when in decel mode. Enabling this option, or setting the 'Max. sLoad in Decel Mode' parameter too low, can result in shift oscillations."
NAGmode = "This setting lets the users specify a transmission type so that all the known constants for that trans will be used and the corresponding menu elements will be 'greyed out' in TunerStudio. Users can revert back to 'Set All Parameters' to expose all the settings for editing at any time, of course."
TMP_cfg = "Choose whether to use the temperature input (PAD02/GPI3/Amp30) to 'Log only' for those transmissions that don't have a temperature sensor, or to 'Use as trans temperature'."
TMP_adc = "Choose whether to log the raw analog-digital converter count by selecting 'Log ADC count', otherwise 'Log temperature' as determined from the ADC count processed through the temperature table."
FWD_cfg = "Choose whether to use the table switching/4WD input (PE1/GPI1/Amp5) to 'Log only' or to use this input to 'Switch shift tables/4th lever input'. You will choose between the table switching and a 4th lever input in the next setting."
In4_cfg = "Choose between using the table switching/4WD input (PE1/GPI1/Amp5) for 'Speedo Switch/Logging' or using it as an 'Additional Lever Input'."
ignoreLever = "You can chose to 'Use lever inputs' as normal to determine the shift lever position, or ignore the lever inputs and 'Assume always in Drive'."
canPW1outpc = "Enter the memory location offset in the engine controller's OUTPC memory structure (aka. {OutputChannels}) of the variable PW1 (pulse width 1). Default is 2. Used when 'Get all vars' is selected for 'CANbus message format'."
canRPMoutpc = "Enter the memory location offset in the engine controller's OUTPC memory structure (aka. {OutputChannels}) of the variable RPM (engine speed). Default is 6. Used when 'Get all vars' is selected for 'CANbus message format'."
canMAPoutpc = "Enter the memory location offset in the engine controller's OUTPC memory structure (aka. {OutputChannels}) of the variable MAP (manifold absolute pressure). Default is 18. Used when 'Get all vars' is selected for 'CANbus message format'."
canTPSoutpc = "Enter the memory location offset in the engine controller's OUTPC memory structure (aka. {OutputChannels}) of the variable TPS (throttle position sensor). Default is 24. Used when 'Get all vars' is selected for 'CANbus message format'."
canVBATToutpc = "Enter the memory location offset in the engine controller's OUTPC memory structure (aka. {OutputChannels}) of the variable VBATT (battery voltage). Default is 26. Used when 'Get all vars' is selected for 'CANbus message format'."
canPW1outmsg = "Enter the memory location offset in the engine controller's OUTMSG memory structure of the variable PW1 (pulse width 1). Default is 0. Used when 'Get only required vars' is selected for 'CANbus message format'."
canRPMoutmsg = "Enter the memory location offset in the engine controller's OUTMSG memory structure of the variable RPM (engine speed). Default is 2. Used when 'Get only required vars' is selected for 'CANbus message format'."
canMAPoutmsg = "Enter the memory location offset in the engine controller's OUTMSG memory structure of the variable MAP (manifold absolute pressure). Default is 4. Used when 'Get only required vars' is selected for 'CANbus message format'."
canTPSoutmsg = "Enter the memory location offset in the engine controller's OUTMSG memory structure of the variable TPS (throttle position sensor). Default is 6. Used when 'Get only required vars' is selected for 'CANbus message format'."
canVBATToutmsg = "Enter the memory location offset in the engine controller's OUTMSG memory structure of the variable VBATT (battery voltage). Default is 8. Used when 'Get only required vars' is selected for 'CANbus message format'."
canSPEEDOoutmsg = "Enter the memory location offset in the engine controller's OUTMSG memory structure of the vehicle speed variable. Default is apparently 332 with MS3."
TCC_follow_sp1dur = "This is the time duration for which the spare port 1 will be activated after the TCC is activated. This value can range from 0.00 to 2.50 seconds in 0.01 second steps, the default is 1.00 second"
TCC_follow_sp11 = "Choose whether to 'Don't apply SP1 with TCC in 1st' (the default) OR 'Apply SP1 with TCC in 1st' for the Activation Period above after the TCC is initially engaged."
TCC_follow_sp12 = "Choose whether to 'Don't apply SP1 with TCC in 2nd' (the default) OR 'Apply SP1 with TCC in 2nd' for the Activation Period above after the TCC is initially engaged."
TCC_follow_sp13 = "Choose whether to 'Don't apply SP1 with TCC in 3rd' (the default) OR 'Apply SP1 with TCC in 3rd' for the Activation Period above after the TCC is initially engaged."
TCC_follow_sp14 = "Choose whether to 'Don't apply SP1 with TCC in 4th' (the default) OR 'Apply SP1 with TCC in 4th' for the Activation Period above after the TCC is initially engaged."
TCC_follow_sp15 = "Choose whether to 'Don't apply SP1 with TCC in 5th' (the default) OR 'Apply SP1 with TCC in 5th' for the Activation Period above after the TCC is initially engaged."
TCC_follow_sp16 = "Choose whether to 'Don't apply SP1 with TCC in 6th' (the default) OR 'Apply SP1 with TCC in 6th' for the Activation Period above after the TCC is initially engaged."
TCC_follow_sp17 = "Choose whether to 'Don't apply SP1 with TCC in 7th' (the default) OR 'Apply SP1 with TCC in 7th' for the Activation Period above after the TCC is initially engaged."
TCC_follow_sp18 = "Choose whether to 'Don't apply SP1 with TCC in 8th' (the default) OR 'Apply SP1 with TCC in 8th' for the Activation Period above after the TCC is initially engaged."
TCC_follow_sp2dur = "This is the time duration for which the spare port 2 will be activated after the TCC is activated. This value can range from 0.00 to 2.50 seconds in 0.01 second steps, the default is 1.00 second"
TCC_follow_sp21 = "Choose whether to 'Don't apply SP2 with TCC in 1st' (the default) OR 'Apply SP2 with TCC in 1st' for the Activation Period above after the TCC is initially engaged."
TCC_follow_sp22 = "Choose whether to 'Don't apply SP2 with TCC in 2nd' (the default) OR 'Apply SP2 with TCC in 2nd' for the Activation Period above after the TCC is initially engaged."
TCC_follow_sp23 = "Choose whether to 'Don't apply SP2 with TCC in 3rd' (the default) OR 'Apply SP2 with TCC in 3rd' for the Activation Period above after the TCC is initially engaged."
TCC_follow_sp24 = "Choose whether to 'Don't apply SP2 with TCC in 4th' (the default) OR 'Apply SP2 with TCC in 4th' for the Activation Period above after the TCC is initially engaged."
TCC_follow_sp25 = "Choose whether to 'Don't apply SP2 with TCC in 5th' (the default) OR 'Apply SP2 with TCC in 5th' for the Activation Period above after the TCC is initially engaged."
TCC_follow_sp26 = "Choose whether to 'Don't apply SP2 with TCC in 6th' (the default) OR 'Apply SP2 with TCC in 6th' for the Activation Period above after the TCC is initially engaged."
TCC_follow_sp27 = "Choose whether to 'Don't apply SP2 with TCC in 7th' (the default) OR 'Apply SP2 with TCC in 7th' for the Activation Period above after the TCC is initially engaged."
TCC_follow_sp28 = "Choose whether to 'Don't apply SP2 with TCC in 8th' (the default) OR 'Apply SP2 with TCC in 8th' for the Activation Period above after the TCC is initially engaged."
; SPIsoln1 = "bit 0 = Output 1 (1=use SPI)."
; = "bit 1 = Output 2 (1=use SPI)."
; = "bit 2 = Output 3 (1=use SPI)."
; = "bit 3 = Output 4 (1=use SPI)."
; = "bit 4 = Output 5 (1=use SPI)."
; = "bit 5 = Output 6 (1=use SPI)."
; = "bit 6 = Output 7 (1=use SPI)."
; = "bit 7 = Output 8 (1=use SPI)."
; SPIsoln2 = "bit 0 = Output 1 (1=use SPI)."
; = "bit 1 = Output 2 (1=use SPI)."
; = "bit 2 = Output 3 (1=use SPI)."
; = "bit 3 = Output 4 (1=use SPI)."
; = "bit 4 = Output 5 (1=use SPI)."
; = "bit 5 = Output 6 (1=use SPI)."
; = "bit 6 = Output 7 (1=use SPI)."
; = "bit 7 = Output 8 (1=use SPI)."
; D0BR = "SPI0BR baud rate for device 0."
; = "set up SPI for MC33800."
; = "SPICR1."
; = "bit 0: LSBFE = 0."
; = "bit 1: SSOE = 1 (turn on slave select output enable (requires MODFEN == 1))."
; = "bit 2: CPHA = 0."
; = "bit 3: CPOL = 0."
; = "bit 4: MSTR = 1 (Master mode)."
; = "bit 5: SPTIE = 0."
; = "bit 6: SPE = 1 (SPI enabled, port pins are dedicated to SPI functions.)."
; = "bit 7: SPIE = 0."
; = "SPICR2."
; = "bit 0: SPC0 = 0."
; = "bit 1: SPISWAI = 1 (SPI clock operates normally in wait mode)."
; = "bit 2: 0 = 0."
; = "bit 3: BIDIROE = 0."
; = "bit 4: MODFEN = 1 (Use SS pin)."
; = "bit 5: 0 = 0."
; = "bit 6: 0 = 0."
; = "bit 7: 0 = 0."
; D0CR1 = "SPI0CR1 for device 0."
; D0CR2 = "SPI0CR2 for device 0."
; D1BR = "SPI0BR baud rate for device 1."
; D1CR1 = "SPI0CR1 for device 1."
; D1CR2 = "SPI0CR2 for device 1."
; D2BR = "SPI0BR baud rate for device 2."
; D2CR1 = "SPI0CR1 for device 2."
; D2CR2 = "SPI0CR2 for device 2."
; D3BR = "SPI0BR baud rate for device 3."
; D3CR1 = "SPI0CR1 for device 3."
; D3CR2 = "SPI0CR2 for device 3."
; -----------------------------------------------------------
[ConstantsExtensions]
requiresPowerCycle = hardware
requiresPowerCycle = num_teeth
requiresPowerCycle = pulse_mile
requiresPowerCycle = maxSpeed
requiresPowerCycle = tire_diam
requiresPowerCycle = axle_ratio
requiresPowerCycle = out3dc
requiresPowerCycle = VSS_location
requiresPowerCycle = inter_ratio