; This is a TunerStudio project for the RusEFI.com engine management system ; ; This file has been generated by invoking gen_config.bat. ; The input files are ; rusefi.input the common template ; rusefi_config.txt the project specific file ; ; In TunerStudio some fields have little question mark on the left of the name for additional field tips. ; Those tips are defined in ../integration/rusefi_config.txt ; ; For example ; ; float bias_resistor;+Pull-up resistor value on your board;"Ohm" ; here 'bias_resistor' is internal field name and the text between semicolons is what produces the tooltip ; Note that '+' sign is required after first semicolon for tooltop to appear in TunerStudio ; ; ; ; this should stop TS from looking for the CAN ID in the 2nd byte location and allow the page reads to work correctly. enable2ndByteCanID = false ;#unset tuneByMAF [SettingGroups] ; the referenceName will over-ride previous, so if you are creating a ; settingGroup with a reference name of lambdaSensor, it will replace the ; setting group defined in the settingGroups.xml of the TunerStudio config ; folder. If is is an undefined referenceName, it will be added. ; keyword = referenceName, DisplayName settingGroup = tuneVeMode, "VE Autotune Mode" settingOption = tuneByTPS, "TPS-Based (See Injection -> Inj.Settings)" settingOption = tuneByMAF, "MAF-Based" settingOption = tuneByLoad, "Load-Based (Default)" ; settingGroup = fAlgorithmSetting, "Fuel Logic / Tables" ; settingOption = FA_PLAIN_MAF, "Plain MAF" ; settingOption = FA_TPS, "AlphaN/TPS" ; settingOption = DEFAULT, "Speed Density" ; DEFAULT will be over looked and this will fall into the #else block of the statement. [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. signature = "rusEFI v1.07" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC messageEnvelopeFormat = msEnvelope_1.0 endianness = little nPages = 1 pageIdentifier = "\x00\x00" pageReadCommand = "R\x00\x00%2o%2c" burnCommand = "B\x00\x00" pageActivate = "P\x00\x00" pageValueWrite = "W\x00\x00%2o%v" pageChunkWrite = "C\x00\x00%2o%2c%v" ; crc32CheckCommand = "k%2i%2o\xB8\x36" ; ; TODO: interesting - 0x36B8 equals 14008 which looks like pageSize at some point in the past? is this a defect here - should ; we have current pageSize or (pageSize + 8) here? ; crc32CheckCommand = "k\x00\x00\x00\x00\x36\xB8" ;communication settings pageActivationDelay = 500 ; Milliseconds delay after burn command. See https://sourceforge.net/p/rusefi/tickets/77/ ;e.g. put writeblocks off and add an interwrite delay writeBlocks = on interWriteDelay = 10 blockReadTimeout = 3000; Milliseconds general timeout ; delayAfterPortOpen = 500 blockingFactor = 400 ; max chunk size ;end communication settings ; name = bits, type, offset, bits ; name = array, type, offset, shape, units, scale, translate, lo, hi, digits ; name = scalar, type, offset, units, scale, translate, lo, hi, digits ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START ; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/rusefi_config.txt Mon Dec 02 20:26:18 EST 2019 pageSize = 20000 page = 1 engineType = bits, S32, 0, [0:7], "AUDI_AAN", "DODGE_NEON_1995", "FORD_ASPIRE_1996", "FORD_FIESTA", "NISSAN_PRIMERA", "HONDA_ACCORD", "FORD_INLINE_6_1995", "GY6_139QMB" engineSnifferRpmThreshold = scalar, S32, 4, "RPM", 1, 0, 0,30000, 0 injector_flow = scalar, F32, 8, "cm3/min", 1, 0, 0, 99999, 2 injector_battLagCorrBins = array, F32, 12, [8], "volts", 1, 0, 0.0, 20.0, 2 injector_battLagCorr = array, F32, 44, [8], "ms", 1, 0, 0.0, 50.0, 2 directSelfStimulation = bits, U32, 76, [0:0], "false", "true" activateAuxPid1 = bits, U32, 76, [1:1], "false", "true" isVerboseAuxPid1 = bits, U32, 76, [2:2], "false", "true" activateAuxPid2 = bits, U32, 76, [3:3], "false", "true" isVerboseAuxPid2 = bits, U32, 76, [4:4], "false", "true" activateAuxPid3 = bits, U32, 76, [5:5], "false", "true" isVerboseAuxPid3 = bits, U32, 76, [6:6], "false", "true" activateAuxPid4 = bits, U32, 76, [7:7], "false", "true" isVerboseAuxPid4 = bits, U32, 76, [8:8], "false", "true" useBiQuadAnalogFiltering= bits, U32, 76, [9:9], "false", "true" cj125isUaDivided = bits, U32, 76, [10:10], "false", "true" cj125isLsu49 = bits, U32, 76, [11:11], "false", "true" etb_use_two_wires = bits, U32, 76, [12:12], "false", "true" unusedHereo_wires = bits, U32, 76, [13:13], "false", "true" showSdCardWarning = bits, U32, 76, [14:14], "false", "true" cj125isUrDivided = bits, U32, 76, [15:15], "false", "true" useTLE8888_hall_mode = bits, U32, 76, [16:16], "false", "true" useTLE8888_cranking_hack= bits, U32, 76, [17:17], "false", "true" useInstantRpmForIdle = bits, U32, 76, [18:18], "false", "true" absoluteFuelPressure = bits, U32, 76, [19:19], "false", "true" issue_294_21 = bits, U32, 76, [20:20], "false", "true" issue_294_22 = bits, U32, 76, [21:21], "false", "true" issue_294_23 = bits, U32, 76, [22:22], "false", "true" issue_294_24 = bits, U32, 76, [23:23], "false", "true" issue_294_25 = bits, U32, 76, [24:24], "false", "true" issue_294_26 = bits, U32, 76, [25:25], "false", "true" issue_294_27 = bits, U32, 76, [26:26], "false", "true" issue_294_28 = bits, U32, 76, [27:27], "false", "true" issue_294_29 = bits, U32, 76, [28:28], "false", "true" issue_294_30 = bits, U32, 76, [29:29], "false", "true" issue_294_31 = bits, U32, 76, [30:30], "false", "true" tpsMin = scalar, S16, 80, "ADC", 1, 0, 0, 1023, 0 tpsMax = scalar, S16, 82, "ADC", 1, 0, 0, 1023, 0 tpsErrorDetectionTooLow = scalar, S16, 84, "%", 1, 0, -40, 200, 0 tpsErrorDetectionTooHigh = scalar, S16, 86, "%", 1, 0, -40, 200, 0 cranking_baseFuel = scalar, F32, 88, "ms", 1, 0, 0, 200, 1 cranking_rpm = scalar, S16, 92, "RPM", 1, 0, 0, 3000, 0 ;no TS info - skipping cranking_alignmentFill offset 94 primingSquirtDurationMs = scalar, F32, 96, "*C", 1, 0, -40, 200, 1 ignitionDwellForCrankingMs = scalar, F32, 100, "ms", 1, 0, 0, 200, 1 crankingChargeAngle = scalar, F32, 104, "deg", 1, 0, 0, 3000.0, 0 map_samplingAngleBins = array, F32, 108, [8], "", 1, 0, 0.0, 18000, 2 map_samplingAngle = array, F32, 140, [8], "deg", 1, 0, -720, 720, 2 map_samplingWindowBins = array, F32, 172, [8], "", 1, 0, 0.0, 18000, 2 map_samplingWindow = array, F32, 204, [8], "deg", 1, 0, -720, 720, 2 map_sensor_lowValue = scalar, F32, 236, "kpa", 1, 0, -400, 800, 2 map_sensor_highValue = scalar, F32, 240, "kpa", 1, 0, -400, 800, 2 map_sensor_type = bits, U32, 244, [0:7] "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "3 Bar", "MPX4100", "Toyota 89420-02010", "MPX4250A", "INVALID" map_sensor_hwChannel = bits, U08, 248, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" ;no TS info - skipping map_sensor_align offset 249 clt_tempC_1 = scalar, F32, 252, "*C", 1, 0, -40, 200, 1 clt_tempC_2 = scalar, F32, 256, "*C", 1, 0, -40, 200, 1 clt_tempC_3 = scalar, F32, 260, "*C", 1, 0, -40, 200, 1 clt_resistance_1 = scalar, F32, 264, "Ohm", 1, 0, 0, 200000, 1 clt_resistance_2 = scalar, F32, 268, "Ohm", 1, 0, 0, 200000, 1 clt_resistance_3 = scalar, F32, 272, "Ohm", 1, 0, 0, 200000, 1 clt_bias_resistor = scalar, F32, 276, "Ohm", 1, 0, 0, 200000, 1 clt_adcChannel = bits, U08, 280, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" ;no TS info - skipping clt_alignmentFill offset 281 iat_tempC_1 = scalar, F32, 284, "*C", 1, 0, -40, 200, 1 iat_tempC_2 = scalar, F32, 288, "*C", 1, 0, -40, 200, 1 iat_tempC_3 = scalar, F32, 292, "*C", 1, 0, -40, 200, 1 iat_resistance_1 = scalar, F32, 296, "Ohm", 1, 0, 0, 200000, 1 iat_resistance_2 = scalar, F32, 300, "Ohm", 1, 0, 0, 200000, 1 iat_resistance_3 = scalar, F32, 304, "Ohm", 1, 0, 0, 200000, 1 iat_bias_resistor = scalar, F32, 308, "Ohm", 1, 0, 0, 200000, 1 iat_adcChannel = bits, U08, 312, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" ;no TS info - skipping iat_alignmentFill offset 313 step1rpm = scalar, S32, 316, "rpm", 1, 0, 0, 20000.0, 2 step1timing = scalar, S32, 320, "deg", 1, 0, -180, 180, 2 hip9011PrescalerAndSDO = scalar, S32, 324, "integer", 1, 0.0, 0.0, 32, 0 knockBandCustom = scalar, F32, 328, "kHz", 1, 0.0, 0.0, 10.0, 2 sparkDwellRpmBins = array, F32, 332, [8], "RPM", 1, 0.0, 0.0, 18000, 2 sparkDwellValues = array, F32, 364, [8], "ms", 1, 0.0, 0.0, 30.0, 2 displacement = scalar, F32, 396, "L", 1, 0, 0, 1000.0, 2 cylindersCount = bits, U32, 400, [0:7], "INVALID", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, "INVALID", "INVALID", "INVALID" firingOrder = bits, U32, 404, [0:7], "One Cylinder", "1-3-4-2", "1-2-4-3", "1-3-2-4", "1-5-3-6-2-4", "1-8-4-3-6-5-7-2", "1-2-4-5-3", "1-4-2-5-3-6", "1-2", "1_2_3_4_5_6", "1-2-3", "1-8-7-2-6-5-4-3", "1-5-4-2-6-3-7-8", "1-6-3-2-5-4", "1-10-9-4-3-6-5-8-7_2", "1-7-5-11-3-9-6-12-2-8-4-10", "1-7-4-10-2-8-6-12-3-9-5-11", "1-4-3-2", "1-12-5-8-3-10-6-7-2-11-4-9", "1-2-7-8-4-5-6-3", "fo20", "fo21", "fo22", "INVALID" cylinderBore = scalar, F32, 408, "mm", 1, 0, 0, 20000.0, 2 sensorSnifferRpmThreshold = scalar, S32, 412, "RPM", 1, 0, 0,30000, 0 rpmHardLimit = scalar, S32, 416, "rpm", 1, 0, 0, 20000.0, 2 fuelAlgorithm = bits, U32, 420, [0:7], "MAF", "Alpha-N/TPS", "MAP", "SPEED DENSITY", "MAF Air Charge" crankingInjectionMode = bits, U32, 424, [0:7], "Simultaneous", "Sequential", "Batch", "Single Point" injectionMode = bits, U32, 428, [0:7], "Simultaneous", "Sequential", "Batch", "Single Point" extraInjectionOffset = scalar, F32, 432, "deg", 1, 0.0, -720, 720, 2 crankingTimingAngle = scalar, F32, 436, "deg", 1, 0.0, -360, 360, 2 ignitionMode = bits, U32, 440, [0:7], "One coil", "Individual Coils", "Wasted", "Two distributors" ignitionOffset = scalar, F32, 444, "RPM", 1, 0, 0, 3000.0, 0 timingMode = bits, U32, 448 [0:0], "dynamic", "fixed" fixedModeTiming = scalar, F32, 452, "RPM", 1, 0, 0, 3000.0, 0 globalTriggerAngleOffset = scalar, F32, 456, "deg", 1, 0, -720, 720, 0 analogInputDividerCoefficient = scalar, F32, 460, "coef", 1, 0, 0.01, 10.0, 2 vbattDividerCoeff = scalar, F32, 464, "coef", 1, 0, 0.01, 99.0, 2 fanOnTemperature = scalar, F32, 468, "*C", 1, 0, 0, 1000.0, 0 fanOffTemperature = scalar, F32, 472, "*C", 1, 0, 0, 1000.0, 0 vehicleSpeedCoef = scalar, F32, 476, "coef", 1, 0, 0.01, 2000.0, 2 canNbcType = bits, U32, 480, [0:7], "BMW", "FIAT", "VAG" , "MAZDA RX8" canSleepPeriodMs = scalar, S32, 484, "ms", 1, 0, 0, 1000.0, 2 ambiguousOperationMode = bits, U32, 488, [0:7], "INVALID", "4 stroke without cam sensor", "4 stroke with cam sensor", "2 stroke", "4 stroke with symmetrical crank (requires VVT input)", "INVALID", "INVALID", "INVALID" displayMode = bits, U32, 492, [0:7], "none", "hd44780", "hd44780 over pcf8574", "INVALID" logFormat = bits, U32, 496, [0:0], "native", "Mega Log Viewer" byFirmwareVersion = scalar, S32, 500, "index", 1, 0, 0, 300, 0 HD44780width = scalar, S32, 504, "index", 1, 0, 0, 300, 0 HD44780height = scalar, S32, 508, "index", 1, 0, 0, 300, 0 tps1_1AdcChannel = bits, U08, 512, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" vbattAdcChannel = bits, U08, 513, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" fuelLevelSensor = bits, U08, 514, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" tps2_1AdcChannel = bits, U08, 515, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" ;no TS info - skipping overrideCrankingIgnition offset 516 sensorChartFrequency = scalar, S32, 520, "index", 1, 0, 0, 300, 0 ; size 4 trigger_type = bits, U32, 524, [0:7], "custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "Miata NB", "GM_7X", "Cooper R50", "Mazda SOHC 4", "60/2", "36/1", "Honda 4+24+1", "Mitsubishi", "Honda 4+24", "Honda 1+4+24", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "1+60/2", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Honda 1+24", "Dodge Stratus", "36_2_2_2", "Nissan Primera", "2JZ", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped" , "Dodge Neon 2003 crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "Jeep 18-2-2-2", "WIP", "Dodge Neon 1995 crank only", "Jeep XJ 4 cyl", "FiatIAQ_P8", "Mazda Z5", "trg43", "trg44", "trg45", "INVALID" trigger_unusedCustomIsSynchronizationNeeded= bits, U32, 528, [0:0], "false", "true" trigger_unusedCustomNeedSecondTriggerInput= bits, U32, 528, [1:1], "false", "true" trigger_useOnlyFirstChannel= bits, U32, 528, [2:2], "false", "true" trigger_customTotalToothCount = scalar, S32, 532, "number", 1, 0.0, 0, 500.0, 0 trigger_customSkippedToothCount = scalar, S32, 536, "number", 1, 0.0, 0, 500.0, 0 hip9011SpiDevice = bits,U32, 540, [0:7], "Off", "SPI1", "SPI2", "SPI3", "SPI4" high_fuel_pressure_sensor_1 = bits, U08, 541, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" high_fuel_pressure_sensor_2 = bits, U08, 542, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" mafAdcChannel = bits, U08, 543, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" globalFuelCorrection = scalar, F32, 544, "coef", 1, 0.0, 0, 1000.0, 2 adcVcc = scalar, F32, 548, "volts", 1, 0.0, 0, 6.0, 3 ;no TS info - skipping maxKnockSubDeg offset 552 camInputs1 = bits, U08, 556, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" camInputs2 = bits, U08, 557, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" camInputs3 = bits, U08, 558, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" camInputs4 = bits, U08, 559, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" afr_hwChannel = bits, U08, 560, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" ;no TS info - skipping afr_alignAf offset 561 afr_v1 = scalar, F32, 564, "volts", 1, 0.0, 0, 10.0, 2 afr_value1 = scalar, F32, 568, "AFR", 1, 0.0, 0, 1000.0, 2 afr_v2 = scalar, F32, 572, "volts", 1, 0.0, 0, 10.0, 2 afr_value2 = scalar, F32, 576, "AFR", 1, 0.0, 0, 1000.0, 2 throttlePedalPositionAdcChannel = bits, U08, 580, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" tle6240_cs = bits, U08, 581, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" tle6240_csPinMode = bits, U08, 582, [0:7], "default", "default inverted", "open collector", "open collector inverted" throttlePedalUpPin = bits, U08, 583, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" baroSensor_lowValue = scalar, F32, 584, "kpa", 1, 0, -400, 800, 2 baroSensor_highValue = scalar, F32, 588, "kpa", 1, 0, -400, 800, 2 baroSensor_type = bits, U32, 592, [0:7] "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "3 Bar", "MPX4100", "Toyota 89420-02010", "MPX4250A", "INVALID" baroSensor_hwChannel = bits, U08, 596, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" ;no TS info - skipping baroSensor_align offset 597 idle_solenoidFrequency = scalar, S32, 600, "Hz", 1, 0, 0, 3000, 0 idle_solenoidPin = bits, U08, 604, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" idle_stepperDirectionPin = bits, U08, 605, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" idle_stepperStepPin = bits, U08, 606, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" idle_solenoidPinMode = bits, U08, 607, [0:7], "default", "default inverted", "open collector", "open collector inverted" manIdlePosition = scalar, F32, 608, "%", 1, 0, 0, 100, 0 mapFrequency0Kpa = scalar, F32, 612, "Hz", 1, 0, 0, 100000, 2 mapFrequency100Kpa = scalar, F32, 616, "Hz", 1, 0, 0, 100000, 2 triggerSimulatorFrequency = scalar, S32, 620, "Rpm", 1, 0, 0,30000, 0 injectionPins1 = bits, U08, 624, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" injectionPins2 = bits, U08, 625, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" injectionPins3 = bits, U08, 626, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" injectionPins4 = bits, U08, 627, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" injectionPins5 = bits, U08, 628, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" injectionPins6 = bits, U08, 629, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" injectionPins7 = bits, U08, 630, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" injectionPins8 = bits, U08, 631, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" injectionPins9 = bits, U08, 632, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" injectionPins10 = bits, U08, 633, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" injectionPins11 = bits, U08, 634, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" injectionPins12 = bits, U08, 635, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" ignitionPins1 = bits, U08, 636, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" ignitionPins2 = bits, U08, 637, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" ignitionPins3 = bits, U08, 638, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" ignitionPins4 = bits, U08, 639, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" ignitionPins5 = bits, U08, 640, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" ignitionPins6 = bits, U08, 641, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" ignitionPins7 = bits, U08, 642, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" ignitionPins8 = bits, U08, 643, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" ignitionPins9 = bits, U08, 644, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" ignitionPins10 = bits, U08, 645, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" ignitionPins11 = bits, U08, 646, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" ignitionPins12 = bits, U08, 647, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" injectionPinMode = bits, U08, 648, [0:7], "default", "default inverted", "open collector", "open collector inverted" ignitionPinMode = bits, U08, 649, [0:7], "default", "default inverted", "open collector", "open collector inverted" HD44780_rs = bits, U08, 650, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" HD44780_e = bits, U08, 651, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" HD44780_db4 = bits, U08, 652, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" HD44780_db5 = bits, U08, 653, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" HD44780_db6 = bits, U08, 654, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" HD44780_db7 = bits, U08, 655, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" gps_rx_pin = bits, U08, 656, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" gps_tx_pin = bits, U08, 657, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fuelPumpPin = bits, U08, 658, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fuelPumpPinMode = bits, U08, 659, [0:7], "default", "default inverted", "open collector", "open collector inverted" malfunctionIndicatorPin = bits, U08, 660, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" malfunctionIndicatorPinMode = bits, U08, 661, [0:7], "default", "default inverted", "open collector", "open collector inverted" fanPinMode = bits, U08, 662, [0:7], "default", "default inverted", "open collector", "open collector inverted" fanPin = bits, U08, 663, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" clutchDownPin = bits, U08, 664, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" alternatorControlPin = bits, U08, 665, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" alternatorControlPinMode = bits, U08, 666, [0:7], "default", "default inverted", "open collector", "open collector inverted" clutchDownPinMode = scalar, U08, 667, "todo", 1, 0, 0, 20, 1 digitalPotentiometerChipSelect1 = bits, U08, 668, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" digitalPotentiometerChipSelect2 = bits, U08, 669, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" digitalPotentiometerChipSelect3 = bits, U08, 670, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" digitalPotentiometerChipSelect4 = bits, U08, 671, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" electronicThrottlePin1Mode = bits, U08, 672, [0:7], "default", "default inverted", "open collector", "open collector inverted" wboHeaterPin = bits, U08, 673, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" cj125CsPin = bits, U08, 674, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" max31855spiDevice = bits,U32, 675, [0:7], "Off", "SPI1", "SPI2", "SPI3", "SPI4" debugTriggerSync = bits, U08, 676, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" digitalPotentiometerSpiDevice = bits,U32, 677, [0:7], "Off", "SPI1", "SPI2", "SPI3", "SPI4" mc33972_cs = bits, U08, 678, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" mc33972_csPinMode = bits, U08, 679, [0:7], "default", "default inverted", "open collector", "open collector inverted" auxFastSensor1_adcChannel = bits, U08, 680, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" ;no TS info - skipping unused556 offset 681 fuelLevelEmptyTankVoltage = scalar, F32, 684, "V", 1, 0, 0,10, 2 fuelLevelFullTankVoltage = scalar, F32, 688, "V", 1, 0, 0,10, 2 afr_type = bits, S32, 692, [0:7], "BPSX", "Innovate", "14Point7", "Narrow", "PLX", "Custom" fuelClosedLoopAfrLowThreshold = scalar, F32, 696, "ratio", 1, 0, 0, 100, 1 triggerInputPins1 = bits, U08, 700, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" triggerInputPins2 = bits, U08, 701, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" triggerInputPins3 = bits, U08, 702, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" hip9011CsPinMode = bits, U08, 703, [0:7], "default", "default inverted", "open collector", "open collector inverted" tachOutputPin = bits, U08, 704, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" tachOutputPinMode = bits, U08, 705, [0:7], "default", "default inverted", "open collector", "open collector inverted" mainRelayPin = bits, U08, 706, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" sdCardCsPin = bits, U08, 707, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" canTxPin = bits, U08, 708, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" canRxPin = bits, U08, 709, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" throttlePedalUpPinMode = scalar, U08, 710, "todo", 1, 0, 0, 20, 1 debugTimerCallback = bits, U08, 711, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" ;no TS info - skipping idleThreadPeriodMs offset 712 ;no TS info - skipping consoleLoopPeriodMs offset 716 ;no TS info - skipping lcdThreadPeriodMs offset 720 ;no TS info - skipping generalPeriodicThreadPeriodMs offset 724 tunerStudioSerialSpeed = scalar, U32, 728, "BPs", 1, 0, 0,1000000, 0 canDeviceMode = bits, U32, 732, [0:7], "v0", "v1" triggerSimulatorPins1 = bits, U08, 736, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" triggerSimulatorPins2 = bits, U08, 737, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" triggerSimulatorPins3 = bits, U08, 738, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" triggerSimulatorPinModes1 = bits, U08, 739, [0:7], "default", "default inverted", "open collector", "open collector inverted" triggerSimulatorPinModes2 = bits, U08, 740, [0:7], "default", "default inverted", "open collector", "open collector inverted" triggerSimulatorPinModes3 = bits, U08, 741, [0:7], "default", "default inverted", "open collector", "open collector inverted" o2heaterPin = bits, U08, 742, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" o2heaterPinModeTodO = bits, U08, 743, [0:7], "default", "default inverted", "open collector", "open collector inverted" is_enabled_spi_1 = bits, U32, 744, [0:0], "false", "true" is_enabled_spi_2 = bits, U32, 744, [1:1], "false", "true" is_enabled_spi_3 = bits, U32, 744, [2:2], "false", "true" isSdCardEnabled = bits, U32, 744, [3:3], "false", "true" isFastAdcEnabled = bits, U32, 744, [4:4], "false", "true" isEngineControlEnabled = bits, U32, 744, [5:5], "false", "true" isHip9011Enabled = bits, U32, 744, [6:6], "false", "true" isVerboseAlternator = bits, U32, 744, [7:7], "false", "true" useSerialPort = bits, U32, 744, [8:8], "false", "true" useStepperIdle = bits, U32, 744, [9:9], "false", "true" enabledStep1Limiter = bits, U32, 744, [10:10], "false", "true" useTpicAdvancedMode = bits, U32, 744, [11:11], "false", "true" useLcdScreen = bits, U32, 744, [12:12], "false", "true" unusedAnotherOne = bits, U32, 744, [13:13], "false", "true" unusedOldWarmupAfr = bits, U32, 744, [14:14], "false", "true" onOffAlternatorLogic = bits, U32, 744, [15:15], "false", "true" isCJ125Enabled = bits, U32, 744, [16:16], "false", "true" vvtCamSensorUseRise = bits, U32, 744, [17:17], "false", "true" measureMapOnlyInOneCylinder= bits, U32, 744, [18:18], "false", "true" stepperForceParkingEveryRestart= bits, U32, 744, [19:19], "false", "true" isFasterEngineSpinUpEnabled= bits, U32, 744, [20:20], "false", "true" coastingFuelCutEnabled = bits, U32, 744, [21:21], "false", "true" useIacTableForCoasting = bits, U32, 744, [22:22], "false", "true" useNoiselessTriggerDecoder= bits, U32, 744, [23:23], "false", "true" useIdleTimingPidControl = bits, U32, 744, [24:24], "false", "true" useTPSBasedVeTable = bits, U32, 744, [25:25], "false", "true" is_enabled_spi_4 = bits, U32, 744, [26:26], "false", "true" pauseEtbControl = bits, U32, 744, [27:27], "false", "true" alignEngineSnifferAtTDC = bits, U32, 744, [28:28], "false", "true" useETBforIdleControl = bits, U32, 744, [29:29], "false", "true" idleIncrementalPidCic = bits, U32, 744, [30:30], "false", "true" unused_board_984_31 = bits, U32, 744, [31:31], "false", "true" logicAnalyzerPins1 = bits, U08, 748, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" logicAnalyzerPins2 = bits, U08, 749, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" logicAnalyzerPins3 = bits, U08, 750, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" logicAnalyzerPins4 = bits, U08, 751, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" mainRelayPinMode = bits, U08, 752, [0:7], "default", "default inverted", "open collector", "open collector inverted" hip9011CsPin = bits, U08, 753, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" hip9011IntHoldPin = bits, U08, 754, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" hip9011IntHoldPinMode = bits, U08, 755, [0:7], "default", "default inverted", "open collector", "open collector inverted" ;no TS info - skipping logicAnalyzerMode offset 756 ;no TS info - skipping unrealisticRpmThreashold offset 760 gpioPinModes1 = bits, U08, 764, [0:7], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes2 = bits, U08, 765, [0:7], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes3 = bits, U08, 766, [0:7], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes4 = bits, U08, 767, [0:7], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes5 = bits, U08, 768, [0:7], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes6 = bits, U08, 769, [0:7], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes7 = bits, U08, 770, [0:7], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes8 = bits, U08, 771, [0:7], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes9 = bits, U08, 772, [0:7], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes10 = bits, U08, 773, [0:7], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes11 = bits, U08, 774, [0:7], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes12 = bits, U08, 775, [0:7], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes13 = bits, U08, 776, [0:7], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes14 = bits, U08, 777, [0:7], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes15 = bits, U08, 778, [0:7], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes16 = bits, U08, 779, [0:7], "default", "default inverted", "open collector", "open collector inverted" fsioOutputPins1 = bits, U08, 780, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioOutputPins2 = bits, U08, 781, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioOutputPins3 = bits, U08, 782, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioOutputPins4 = bits, U08, 783, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioOutputPins5 = bits, U08, 784, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioOutputPins6 = bits, U08, 785, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioOutputPins7 = bits, U08, 786, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioOutputPins8 = bits, U08, 787, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioOutputPins9 = bits, U08, 788, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioOutputPins10 = bits, U08, 789, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioOutputPins11 = bits, U08, 790, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioOutputPins12 = bits, U08, 791, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioOutputPins13 = bits, U08, 792, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioOutputPins14 = bits, U08, 793, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioOutputPins15 = bits, U08, 794, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioOutputPins16 = bits, U08, 795, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" max31855_cs1 = bits, U08, 796, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" max31855_cs2 = bits, U08, 797, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" max31855_cs3 = bits, U08, 798, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" max31855_cs4 = bits, U08, 799, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" max31855_cs5 = bits, U08, 800, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" max31855_cs6 = bits, U08, 801, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" max31855_cs7 = bits, U08, 802, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" max31855_cs8 = bits, U08, 803, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" sdCardPeriodMs = scalar, S16, 804, "ms", 1, 0, 0, 30000, 0 debugSetTimer = bits, U08, 806, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" debugMapAveraging = bits, U08, 807, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" starterRelayPin = bits, U08, 808, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" starterRelayPinMode = bits, U08, 809, [0:7], "default", "default inverted", "open collector", "open collector inverted" ;no TS info - skipping unuseduartPadding1 offset 810 mapMinBufferLength = scalar, S32, 812, "count", 1, 0, 0, 24, 0 idlePidDeactivationTpsThreshold = scalar, S16, 816, "%", 1, 0, 0, 100.0, 0 stepperParkingExtraSteps = scalar, S16, 818, "%", 1, 0, 0, 3000.0, 0 miataNb2VVTRatioFrom = scalar, F32, 820, "value", 1, 0, 0, 1000, 5 miataNb2VVTRatioTo = scalar, F32, 824, "value", 1, 0, 0, 1000, 5 triggerErrorPin = bits, U08, 828, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" triggerErrorPinMode = bits, U08, 829, [0:7], "default", "default inverted", "open collector", "open collector inverted" acRelayPin = bits, U08, 830, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" acRelayPinMode = bits, U08, 831, [0:7], "default", "default inverted", "open collector", "open collector inverted" fsioFrequency1 = scalar, U16, 832, "Hz", 1, 0, 0, 3000, 0 fsioFrequency2 = scalar, U16, 834, "Hz", 1, 0, 0, 3000, 0 fsioFrequency3 = scalar, U16, 836, "Hz", 1, 0, 0, 3000, 0 fsioFrequency4 = scalar, U16, 838, "Hz", 1, 0, 0, 3000, 0 fsioFrequency5 = scalar, U16, 840, "Hz", 1, 0, 0, 3000, 0 fsioFrequency6 = scalar, U16, 842, "Hz", 1, 0, 0, 3000, 0 fsioFrequency7 = scalar, U16, 844, "Hz", 1, 0, 0, 3000, 0 fsioFrequency8 = scalar, U16, 846, "Hz", 1, 0, 0, 3000, 0 fsioFrequency9 = scalar, U16, 848, "Hz", 1, 0, 0, 3000, 0 fsioFrequency10 = scalar, U16, 850, "Hz", 1, 0, 0, 3000, 0 fsioFrequency11 = scalar, U16, 852, "Hz", 1, 0, 0, 3000, 0 fsioFrequency12 = scalar, U16, 854, "Hz", 1, 0, 0, 3000, 0 fsioFrequency13 = scalar, U16, 856, "Hz", 1, 0, 0, 3000, 0 fsioFrequency14 = scalar, U16, 858, "Hz", 1, 0, 0, 3000, 0 fsioFrequency15 = scalar, U16, 860, "Hz", 1, 0, 0, 3000, 0 fsioFrequency16 = scalar, U16, 862, "Hz", 1, 0, 0, 3000, 0 fsio_setting1 = scalar, F32, 864, "Val", 1, 0, 0, 18000, 4 fsio_setting2 = scalar, F32, 868, "Val", 1, 0, 0, 18000, 4 fsio_setting3 = scalar, F32, 872, "Val", 1, 0, 0, 18000, 4 fsio_setting4 = scalar, F32, 876, "Val", 1, 0, 0, 18000, 4 fsio_setting5 = scalar, F32, 880, "Val", 1, 0, 0, 18000, 4 fsio_setting6 = scalar, F32, 884, "Val", 1, 0, 0, 18000, 4 fsio_setting7 = scalar, F32, 888, "Val", 1, 0, 0, 18000, 4 fsio_setting8 = scalar, F32, 892, "Val", 1, 0, 0, 18000, 4 fsio_setting9 = scalar, F32, 896, "Val", 1, 0, 0, 18000, 4 fsio_setting10 = scalar, F32, 900, "Val", 1, 0, 0, 18000, 4 fsio_setting11 = scalar, F32, 904, "Val", 1, 0, 0, 18000, 4 fsio_setting12 = scalar, F32, 908, "Val", 1, 0, 0, 18000, 4 fsio_setting13 = scalar, F32, 912, "Val", 1, 0, 0, 18000, 4 fsio_setting14 = scalar, F32, 916, "Val", 1, 0, 0, 18000, 4 fsio_setting15 = scalar, F32, 920, "Val", 1, 0, 0, 18000, 4 fsio_setting16 = scalar, F32, 924, "Val", 1, 0, 0, 18000, 4 spi1mosiPin = bits, U08, 928, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" spi1misoPin = bits, U08, 929, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" spi1sckPin = bits, U08, 930, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" spi2mosiPin = bits, U08, 931, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" spi2misoPin = bits, U08, 932, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" spi2sckPin = bits, U08, 933, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" spi3mosiPin = bits, U08, 934, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" spi3misoPin = bits, U08, 935, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" spi3sckPin = bits, U08, 936, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" cdmInputPin = bits, U08, 937, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" joystickCenterPin = bits, U08, 938, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" joystickAPin = bits, U08, 939, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" joystickBPin = bits, U08, 940, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" joystickCPin = bits, U08, 941, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" joystickDPin = bits, U08, 942, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" consoleUartDevice = bits,U32, 943, [0:7], "Off", "UART1", "UART2", "UART3" sensorChartMode = bits, S32, 944, [0:7], "none", "trigger", "MAP", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" mafSensorType = bits, S32, 948, [0:7], "v0", "v1", "v2", "v3" fsioDigitalInputs1 = bits, U08, 952, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioDigitalInputs2 = bits, U08, 953, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioDigitalInputs3 = bits, U08, 954, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioDigitalInputs4 = bits, U08, 955, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioDigitalInputs5 = bits, U08, 956, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioDigitalInputs6 = bits, U08, 957, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioDigitalInputs7 = bits, U08, 958, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioDigitalInputs8 = bits, U08, 959, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioDigitalInputs9 = bits, U08, 960, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioDigitalInputs10 = bits, U08, 961, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioDigitalInputs11 = bits, U08, 962, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioDigitalInputs12 = bits, U08, 963, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioDigitalInputs13 = bits, U08, 964, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioDigitalInputs14 = bits, U08, 965, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioDigitalInputs15 = bits, U08, 966, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" fsioDigitalInputs16 = bits, U08, 967, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" vehicleSpeedSensorInputPin = bits, U08, 968, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" clutchUpPin = bits, U08, 969, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" frequencyReportingMapInputPin = bits, U08, 970, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" clutchUpPinMode = scalar, U08, 971, "todo", 1, 0, 0, 20, 1 ;no TS info - skipping unused offset 972 todoClutchUpPinInverted = bits, U32, 976, [0:0], "false", "true" todoClutchDownPinInverted= bits, U32, 976, [1:1], "false", "true" etbIo1_directionPin1 = bits, U08, 980, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" etbIo1_directionPin2 = bits, U08, 981, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" etbIo1_controlPin1 = bits, U08, 982, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" etbIo1_controlPinMode = bits, U08, 983, [0:7], "default", "default inverted", "open collector", "open collector inverted" etbIo2_directionPin1 = bits, U08, 984, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" etbIo2_directionPin2 = bits, U08, 985, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" etbIo2_controlPin1 = bits, U08, 986, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" etbIo2_controlPinMode = bits, U08, 987, [0:7], "default", "default inverted", "open collector", "open collector inverted" ;no TS info - skipping unusedAtOldBoardConfigurationEnd offset 988 vvtDisplayInverted = bits, U32, 1464, [0:0], "false", "true" fuelClosedLoopCorrectionEnabled= bits, U32, 1464, [1:1], "false", "true" isVerboseIAC = bits, U32, 1464, [2:2], "false", "true" isVerboseETB = bits, U32, 1464, [3:3], "false", "true" useConstantDwellDuringCranking= bits, U32, 1464, [4:4], "false", "true" isEngineChartEnabled = bits, U32, 1464, [5:5], "false", "true" silentTriggerError = bits, U32, 1464, [6:6], "false", "true" useLinearCltSensor = bits, U32, 1464, [7:7], "false", "true" canReadEnabled = bits, U32, 1464, [8:8], "false", "true" canWriteEnabled = bits, U32, 1464, [9:9], "false", "true" useLinearIatSensor = bits, U32, 1464, [10:10], "false", "true" useFSIO16ForTimingAdjustment= bits, U32, 1464, [11:11], "false", "true" tachPulseDurationAsDutyCycle= bits, U32, 1464, [12:12], "false", "true" isAlternatorControlEnabled= bits, U32, 1464, [13:13], "false", "true" invertPrimaryTriggerSignal= bits, U32, 1464, [14:14], "false", "true" invertSecondaryTriggerSignal= bits, U32, 1464, [15:15], "false", "true" cutFuelOnHardLimit = bits, U32, 1464, [16:16], "false", "true" cutSparkOnHardLimit = bits, U32, 1464, [17:17], "false", "true" step1fuelCutEnable = bits, U32, 1464, [18:18], "false", "true" step1SparkCutEnable = bits, U32, 1464, [19:19], "false", "true" hasFrequencyReportingMapSensor= bits, U32, 1464, [20:20], "false", "true" useFSIO8ForServo1 = bits, U32, 1464, [21:21], "false", "true" useFSIO9ForServo2 = bits, U32, 1464, [22:22], "false", "true" useFSIO10ForServo3 = bits, U32, 1464, [23:23], "false", "true" useFSIO11ForServo4 = bits, U32, 1464, [24:24], "false", "true" useFSIO12ForServo5 = bits, U32, 1464, [25:25], "false", "true" useFSIO15ForIdleRpmAdjustment= bits, U32, 1464, [26:26], "false", "true" useFSIO5ForCriticalIssueEngineStop= bits, U32, 1464, [27:27], "false", "true" useFSIO4ForSeriousEngineWarning= bits, U32, 1464, [28:28], "false", "true" useFSIO12ForIdleOffset = bits, U32, 1464, [29:29], "false", "true" useFSIO13ForIdleMinValue= bits, U32, 1464, [30:30], "false", "true" useFSIO6ForRevLimiter = bits, U32, 1464, [31:31], "false", "true" hipOutputChannel = bits, U08, 1468, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" acSwitchAdc = bits, U08, 1469, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" vRefAdcChannel = bits, U08, 1470, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" etbNeutralPosition = scalar, U08, 1471, "%", 1, 0, 0, 100, 0 idleMode = bits, U32, 1472, [0:0], "Automatic", "Manual" isInjectionEnabled = bits, U32, 1476, [0:0], "false", "true" isIgnitionEnabled = bits, U32, 1476, [1:1], "false", "true" isCylinderCleanupEnabled= bits, U32, 1476, [2:2], "false", "true" secondTriggerChannelEnabled= bits, U32, 1476, [3:3], "false", "true" needSecondTriggerInputDeprecated= bits, U32, 1476, [4:4], "false", "true" isMapAveragingEnabled = bits, U32, 1476, [5:5], "false", "true" overrideCrankingIacSetting= bits, U32, 1476, [6:6], "false", "true" useSeparateAdvanceForIdle= bits, U32, 1476, [7:7], "false", "true" isTunerStudioEnabled = bits, U32, 1476, [8:8], "false", "true" isWaveAnalyzerEnabled = bits, U32, 1476, [9:9], "false", "true" useSeparateVeForIdle = bits, U32, 1476, [10:10], "false", "true" verboseTriggerSynchDetails= bits, U32, 1476, [11:11], "false", "true" isManualSpinningMode = bits, U32, 1476, [12:12], "false", "true" twoWireBatchInjection = bits, U32, 1476, [13:13], "false", "true" useOnlyRisingEdgeForTrigger= bits, U32, 1476, [14:14], "false", "true" twoWireBatchIgnition = bits, U32, 1476, [15:15], "false", "true" useFixedBaroCorrFromMap = bits, U32, 1476, [16:16], "false", "true" useSeparateAdvanceForCranking= bits, U32, 1476, [17:17], "false", "true" useAdvanceCorrectionsForCranking= bits, U32, 1476, [18:18], "false", "true" useTPSAdvanceTable = bits, U32, 1476, [19:19], "false", "true" etbCalibrationOnStart = bits, U32, 1476, [20:20], "false", "true" unused_1484_bit_21 = bits, U32, 1476, [21:21], "false", "true" unused_1484_bit_22 = bits, U32, 1476, [22:22], "false", "true" unused_1484_bit_23 = bits, U32, 1476, [23:23], "false", "true" unused_1484_bit_24 = bits, U32, 1476, [24:24], "false", "true" unused_1484_bit_25 = bits, U32, 1476, [25:25], "false", "true" unused_1484_bit_26 = bits, U32, 1476, [26:26], "false", "true" unused_1484_bit_27 = bits, U32, 1476, [27:27], "false", "true" unused_1484_bit_28 = bits, U32, 1476, [28:28], "false", "true" unused_1484_bit_29 = bits, U32, 1476, [29:29], "false", "true" unused_1484_bit_30 = bits, U32, 1476, [30:30], "false", "true" unused_1484_bit_31 = bits, U32, 1476, [31:31], "false", "true" engineChartSize = scalar, U32, 1480, "count", 1, 0, 0, 300, 0 idlePidRpmUpperLimit = scalar, S16, 1484, "RPM", 1, 0, 0, 9000, 0 primeInjFalloffTemperature = scalar, S16, 1486, "*C", 1, 0, 0, 1000.0, 0 ignMathCalculateAtIndex = scalar, S32, 1488, "index", 1, 0, 0, 7000, 0 ;no TS info - skipping acCutoffLowRpm offset 1492 ;no TS info - skipping acCutoffHighRpm offset 1494 ;no TS info - skipping acIdleRpmBump offset 1496 warningPeriod = scalar, S16, 1498, "seconds", 1, 0, 0, 60, 0 knockDetectionWindowStart = scalar, F32, 1500, "angle", 1, 0, -1000, 1000, 2 knockDetectionWindowEnd = scalar, F32, 1504, "angle", 1, 0, -1000, 1000, 2 idleStepperReactionTime = scalar, F32, 1508, "ms", 1, 0, 1, 300, 0 knockVThreshold = scalar, F32, 1512, "V", 1, 0, 1, 5, 2 fsioInputModes1 = scalar, U08, 1516, "todo", 1, 0, 0, 20, 1 fsioInputModes2 = scalar, U08, 1517, "todo", 1, 0, 0, 20, 1 fsioInputModes3 = scalar, U08, 1518, "todo", 1, 0, 0, 20, 1 fsioInputModes4 = scalar, U08, 1519, "todo", 1, 0, 0, 20, 1 fsioInputModes5 = scalar, U08, 1520, "todo", 1, 0, 0, 20, 1 fsioInputModes6 = scalar, U08, 1521, "todo", 1, 0, 0, 20, 1 fsioInputModes7 = scalar, U08, 1522, "todo", 1, 0, 0, 20, 1 fsioInputModes8 = scalar, U08, 1523, "todo", 1, 0, 0, 20, 1 fsioInputModes9 = scalar, U08, 1524, "todo", 1, 0, 0, 20, 1 fsioInputModes10 = scalar, U08, 1525, "todo", 1, 0, 0, 20, 1 fsioInputModes11 = scalar, U08, 1526, "todo", 1, 0, 0, 20, 1 fsioInputModes12 = scalar, U08, 1527, "todo", 1, 0, 0, 20, 1 fsioInputModes13 = scalar, U08, 1528, "todo", 1, 0, 0, 20, 1 fsioInputModes14 = scalar, U08, 1529, "todo", 1, 0, 0, 20, 1 fsioInputModes15 = scalar, U08, 1530, "todo", 1, 0, 0, 20, 1 fsioInputModes16 = scalar, U08, 1531, "todo", 1, 0, 0, 20, 1 idleStepperTotalSteps = scalar, S32, 1532, "count", 1, 0, 5, 3000, 0 noAccelAfterHardLimitPeriodSecs = scalar, F32, 1536, "sec", 1, 0, 0, 60, 0 mapAveragingSchedulingAtIndex = scalar, S32, 1540, "index", 1, 0, 0, 7000, 0 baroCorrPressureBins = array, F32, 1544, [4], "kPa", 1, 0, 0.0, 200, 2 baroCorrRpmBins = array, F32, 1560, [4], "RPM", 1, 0, 0.0, 18000, 2 baroCorrTable = array, F32, 1576, [4x4],"ratio", 1, 0, 0, 2.0, 2 crankingTpsCoef = array, F32, 1640, [8], "Ratio", 1, 0, 0.0, 700.0, 2 crankingTpsBins = array, F32, 1672, [8], "%", 1, 0, 0.0, 100.0, 2 tachPulseDuractionMs = scalar, F32, 1704, "ms", 1, 0, 0.0, 100.0, 2 tachPulseTriggerIndex = scalar, S32, 1708, "index", 1, 0, 0.0, 360.0, 0 wwaeTau = scalar, F32, 1712, "Seconds", 1, 0, 0.0, 3.0, 2 alternatorControl_pFactor = scalar, F32, 1716, "", 1, 0, -10000, 10000, 4 alternatorControl_iFactor = scalar, F32, 1720, "", 1, 0, -10000, 10000, 4 alternatorControl_dFactor = scalar, F32, 1724, "", 1, 0, -10000, 10000, 4 alternatorControl_offset = scalar, S16, 1728, "", 1, 0, -1000, 1000, 0 alternatorControl_periodMs = scalar, S16, 1730, "ms", 1, 0, 0, 3000, 0 alternatorControl_minValue = scalar, S16, 1732, "", 1, 0, -30000, 30000.0, 0 alternatorControl_maxValue = scalar, S16, 1734, "", 1, 0, -30000, 30000.0, 0 etb_pFactor = scalar, F32, 1736, "", 1, 0, -10000, 10000, 4 etb_iFactor = scalar, F32, 1740, "", 1, 0, -10000, 10000, 4 etb_dFactor = scalar, F32, 1744, "", 1, 0, -10000, 10000, 4 etb_offset = scalar, S16, 1748, "", 1, 0, -1000, 1000, 0 etb_periodMs = scalar, S16, 1750, "ms", 1, 0, 0, 3000, 0 etb_minValue = scalar, S16, 1752, "", 1, 0, -30000, 30000.0, 0 etb_maxValue = scalar, S16, 1754, "", 1, 0, -30000, 30000.0, 0 fuelRailPressure = scalar, F32, 1756, "kPa", 1, 0.0, 0, 1000.0, 2 alternator_derivativeFilterLoss = scalar, F32, 1760, "x", 1, 0.0, -1000000, 1000000, 4 alternator_antiwindupFreq = scalar, F32, 1764, "x", 1, 0.0, -1000000, 1000000, 4 ;no TS info - skipping unusedFormerWarmupAfrPid offset 1768 mapErrorDetectionTooLow = scalar, F32, 1776, "kPa", 1, 0, -100.0, 100.0, 2 mapErrorDetectionTooHigh = scalar, F32, 1780, "kPa", 1, 0, -100.0, 800.0, 2 step1RpmWindow = scalar, S32, 1784, "rpm", 1, 0, 0, 3000.0, 2 idleRpmPid_pFactor = scalar, F32, 1788, "", 1, 0, -10000, 10000, 4 idleRpmPid_iFactor = scalar, F32, 1792, "", 1, 0, -10000, 10000, 4 idleRpmPid_dFactor = scalar, F32, 1796, "", 1, 0, -10000, 10000, 4 idleRpmPid_offset = scalar, S16, 1800, "", 1, 0, -1000, 1000, 0 idleRpmPid_periodMs = scalar, S16, 1802, "ms", 1, 0, 0, 3000, 0 idleRpmPid_minValue = scalar, S16, 1804, "", 1, 0, -30000, 30000.0, 0 idleRpmPid_maxValue = scalar, S16, 1806, "", 1, 0, -30000, 30000.0, 0 wwaeBeta = scalar, F32, 1808, "Fraction", 1, 0, 0.0, 1.0, 2 communicationLedPin = bits, U08, 1812, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" runningLedPin = bits, U08, 1813, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" binarySerialTxPin = bits, U08, 1814, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" binarySerialRxPin = bits, U08, 1815, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" auxValves1 = bits, U08, 1816, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" auxValves2 = bits, U08, 1817, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" consoleSerialTxPin = bits, U08, 1818, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" consoleSerialRxPin = bits, U08, 1819, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" knockNoise = array, F32, 1820, [8], "v", 1, 0, 0.0, 10, 2 knockNoiseRpmBins = array, F32, 1852, [8], "RPM", 1, 0, 0.0, 18000, 2 throttlePedalUpVoltage = scalar, F32, 1884, "voltage", 1, 0, -6, 6, 2 throttlePedalWOTVoltage = scalar, F32, 1888, "voltage", 1, 0, -6, 6, 2 startUpFuelPumpDuration = scalar, S16, 1892, "seconds", 1, 0, 0, 6000, 0 idlePidRpmDeadZone = scalar, S16, 1894, "RPM", 1, 0, 0, 1000, 0 cltIdleRpmBins = array, F32, 1896, [16], "C", 1, 0, -100.0, 250.0, 2 cltIdleRpm = array, F32, 1960, [16], "", 1, 0, 0.0, 8000.0, 0 targetVBatt = scalar, F32, 2024, "Volts", 1, 0, 0,30, 1 alternatorOffAboveTps = scalar, F32, 2028, "%", 1, 0, 0, 200, 2 startOfCrankingPrimingPulse = scalar, F32, 2032, "ms", 1, 0, 0, 200, 1 afterCrankingIACtaperDuration = scalar, S16, 2036, "cycles", 1, 0, 0, 5000, 0 iacByTpsTaper = scalar, S16, 2038, "percent", 1, 0, 0, 500, 0 unusedErrorPin = bits, U08, 2040, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" warningLedPin = bits, U08, 2041, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" unused1234234 = bits, U08, 2042, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" LIS302DLCsPin = bits, U08, 2043, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" tpsAccelLength = scalar, S32, 2044, "cycles", 1, 0, 1, 200, 0 tpsAccelEnrichmentThreshold = scalar, F32, 2048, "roc", 1, 0, 0, 200, 3 vvtOffset = scalar, F32, 2052, "value", 1, 0, -720, 1000, 1 engineLoadAccelLength = scalar, S32, 2056, "cycles", 1, 0, 1, 200, 0 engineLoadDecelEnleanmentThreshold = scalar, F32, 2060, "roc", 1, 0, 0, 200, 3 engineLoadDecelEnleanmentMultiplier = scalar, F32, 2064, "coeff", 1, 0, 0, 200, 3 engineLoadAccelEnrichmentThreshold = scalar, F32, 2068, "roc", 1, 0, 0, 200, 3 engineLoadAccelEnrichmentMultiplier = scalar, F32, 2072, "coeff", 1, 0, 0, 200, 3 uartConsoleSerialSpeed = scalar, U32, 2076, "BPs", 1, 0, 0,1000000, 0 tpsDecelEnleanmentThreshold = scalar, F32, 2080, "roc", 1, 0, 0, 200, 3 tpsDecelEnleanmentMultiplier = scalar, F32, 2084, "coeff", 1, 0, 0, 200, 3 slowAdcAlpha = scalar, F32, 2088, "coeff", 1, 0, 0, 200, 3 debugMode = bits, U32, 2092, [0:7], "Alternator PID", "TPS acceleration enrichment", "INVALID", "Idle Control", "Engine Load accl enrich", "Trigger Counters", "FSIO_ADC", "AUX_PID_1", "VVT input", "Cranking", "Timing", "Closed-loop fuel corr PID", "VSS", "SD card", "sr5", "Knock", "Trigger Sync", "Electronic Throttle", "Executor", "Bench Test / TS commands", "Aux Valves", "Analog inputs #1", "INSTANT_RPM", "FSIO_EXPRESSION", "Status", "CJ125", "CAN", "MAP", "Metrics", "ETB#2", "Ion Sense", "TLE8888", "Analog inputs #2", "Dwell Metric", "Aux Temperature", "ETB Logic" ;no TS info - skipping unused_former_warmup_target_afr offset 2096 boostCutPressure = scalar, F32, 2132, "kPa", 1, 0, 0, 500, 0 mapAccelTaperBins = array, F32, 2136, [8], "counter", 1, 0, 0.0, 300, 0 mapAccelTaperMult = array, F32, 2168, [8], "mult", 1, 0, 0.0, 300, 2 fsioAdc1 = bits, U08, 2200, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" fsioAdc2 = bits, U08, 2201, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" fsioAdc3 = bits, U08, 2202, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" fsioAdc4 = bits, U08, 2203, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" fixedTiming = scalar, F32, 2204, "deg", 1, 0, -720, 720, 2 mapLowValueVoltage = scalar, F32, 2208, "v", 1, 0, 0.0, 10, 2 mapHighValueVoltage = scalar, F32, 2212, "v", 1, 0, 0.0, 10, 2 egoValueShift = scalar, F32, 2216, "value", 1, 0, -10.0, 10, 2 auxPidPins1 = bits, U08, 2220, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" auxPidPins2 = bits, U08, 2221, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" auxPidPins3 = bits, U08, 2222, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" auxPidPins4 = bits, U08, 2223, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" cj125SpiDevice = bits,U32, 2224, [0:7], "Off", "SPI1", "SPI2", "SPI3", "SPI4" cj125CsPinMode = bits, U08, 2225, [0:7], "default", "default inverted", "open collector", "open collector inverted" dizzySparkOutputPin = bits, U08, 2226, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" dizzySparkOutputPinMode = bits, U08, 2227, [0:7], "default", "default inverted", "open collector", "open collector inverted" crankingIACposition = scalar, S32, 2228, "percent", 1, 0, -100.0, 100, tChargeMinRpmMinTps = scalar, F32, 2232, "mult", 1, 0, 0, 3, 4 tChargeMinRpmMaxTps = scalar, F32, 2236, "mult", 1, 0, 0, 3, 4 tChargeMaxRpmMinTps = scalar, F32, 2240, "mult", 1, 0, 0, 3, 4 tChargeMaxRpmMaxTps = scalar, F32, 2244, "mult", 1, 0, 0, 3, 4 auxPidFrequency1 = scalar, U16, 2248, "Hz", 1, 0, 0, 3000, 0 auxPidFrequency2 = scalar, U16, 2250, "Hz", 1, 0, 0, 3000, 0 auxPidFrequency3 = scalar, U16, 2252, "Hz", 1, 0, 0, 3000, 0 auxPidFrequency4 = scalar, U16, 2254, "Hz", 1, 0, 0, 3000, 0 alternatorPwmFrequency = scalar, S32, 2256, "Hz", 1, 0, 0, 3000.0, 0 storageMode = bits, U32, 2260, [0:7], "Auto", "Always", "Never" narrowToWideOxygenBins = array, F32, 2264, [8], "V", 1, 0, -10.0, 10.0, 3 narrowToWideOxygen = array, F32, 2296, [8], "ratio", 1, 0, -40.0, 40.0, 2 vvtMode = bits, U32, 2328, [0:7], "First half", "Second half", "2GZ", "Miata NB2", "mode4", "mode5", "mode6", "mode7" biQuad_a0 = scalar, F32, 2332, "v", 1, 0, -1000, 1000, 9 biQuad_a1 = scalar, F32, 2336, "v", 1, 0, -1000, 1000, 9 biQuad_a2 = scalar, F32, 2340, "v", 1, 0, -1000, 1000, 9 biQuad_b1 = scalar, F32, 2344, "v", 1, 0, -1000, 1000, 9 biQuad_b2 = scalar, F32, 2348, "v", 1, 0, -1000, 1000, 9 cltTimingBins = array, F32, 2352, [8], "C", 1, 0, -100.0, 250.0, 1 cltTimingExtra = array, F32, 2384, [8], "degree", 1, 0, -400.0, 400.0, 0 nbVvtIndex = scalar, S32, 2416, "index", 1, 0, 0, 4.0, 0 ;no TS info - skipping autoTuneCltThreshold offset 2420 ;no TS info - skipping autoTuneTpsRocThreshold offset 2424 ;no TS info - skipping autoTuneTpsQuietPeriod offset 2428 postCrankingTargetClt = scalar, F32, 2432, "C", 1, 0, 0, 100, 0 postCrankingFactor = scalar, F32, 2436, "mult", 1, 0, 0, 100, 4 postCrankingDurationSec = scalar, F32, 2440, "seconds", 1, 0, 0, 100, 2 auxTempSensor1_tempC_1 = scalar, F32, 2444, "*C", 1, 0, -40, 200, 1 auxTempSensor1_tempC_2 = scalar, F32, 2448, "*C", 1, 0, -40, 200, 1 auxTempSensor1_tempC_3 = scalar, F32, 2452, "*C", 1, 0, -40, 200, 1 auxTempSensor1_resistance_1 = scalar, F32, 2456, "Ohm", 1, 0, 0, 200000, 1 auxTempSensor1_resistance_2 = scalar, F32, 2460, "Ohm", 1, 0, 0, 200000, 1 auxTempSensor1_resistance_3 = scalar, F32, 2464, "Ohm", 1, 0, 0, 200000, 1 auxTempSensor1_bias_resistor = scalar, F32, 2468, "Ohm", 1, 0, 0, 200000, 1 auxTempSensor1_adcChannel = bits, U08, 2472, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" ;no TS info - skipping auxTempSensor1_alignmentFill offset 2473 auxTempSensor2_tempC_1 = scalar, F32, 2476, "*C", 1, 0, -40, 200, 1 auxTempSensor2_tempC_2 = scalar, F32, 2480, "*C", 1, 0, -40, 200, 1 auxTempSensor2_tempC_3 = scalar, F32, 2484, "*C", 1, 0, -40, 200, 1 auxTempSensor2_resistance_1 = scalar, F32, 2488, "Ohm", 1, 0, 0, 200000, 1 auxTempSensor2_resistance_2 = scalar, F32, 2492, "Ohm", 1, 0, 0, 200000, 1 auxTempSensor2_resistance_3 = scalar, F32, 2496, "Ohm", 1, 0, 0, 200000, 1 auxTempSensor2_bias_resistor = scalar, F32, 2500, "Ohm", 1, 0, 0, 200000, 1 auxTempSensor2_adcChannel = bits, U08, 2504, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" ;no TS info - skipping auxTempSensor2_alignmentFill offset 2505 fuelClosedLoopCltThreshold = scalar, S16, 2508, "C", 1, 0, 0, 100, 0 fuelClosedLoopTpsThreshold = scalar, S16, 2510, "%", 1, 0, 0, 100, 0 fuelClosedLoopRpmThreshold = scalar, S16, 2512, "rpm", 1, 0, 0, 5000, 0 etbFreq = scalar, S16, 2514, "Hz", 1, 0, 0, 30000, 0 fuelClosedLoopPid_pFactor = scalar, F32, 2516, "", 1, 0, -10000, 10000, 4 fuelClosedLoopPid_iFactor = scalar, F32, 2520, "", 1, 0, -10000, 10000, 4 fuelClosedLoopPid_dFactor = scalar, F32, 2524, "", 1, 0, -10000, 10000, 4 fuelClosedLoopPid_offset = scalar, S16, 2528, "", 1, 0, -1000, 1000, 0 fuelClosedLoopPid_periodMs = scalar, S16, 2530, "ms", 1, 0, 0, 3000, 0 fuelClosedLoopPid_minValue = scalar, S16, 2532, "", 1, 0, -30000, 30000.0, 0 fuelClosedLoopPid_maxValue = scalar, S16, 2534, "", 1, 0, -30000, 30000.0, 0 fuelClosedLoopAfrHighThreshold = scalar, F32, 2536, "ratio", 1, 0, 0, 100, 1 timing_offset_cylinder1 = scalar, F32, 2540, "Val", 1, 0, -20000000, 20000000, 1 timing_offset_cylinder2 = scalar, F32, 2544, "Val", 1, 0, -20000000, 20000000, 1 timing_offset_cylinder3 = scalar, F32, 2548, "Val", 1, 0, -20000000, 20000000, 1 timing_offset_cylinder4 = scalar, F32, 2552, "Val", 1, 0, -20000000, 20000000, 1 timing_offset_cylinder5 = scalar, F32, 2556, "Val", 1, 0, -20000000, 20000000, 1 timing_offset_cylinder6 = scalar, F32, 2560, "Val", 1, 0, -20000000, 20000000, 1 timing_offset_cylinder7 = scalar, F32, 2564, "Val", 1, 0, -20000000, 20000000, 1 timing_offset_cylinder8 = scalar, F32, 2568, "Val", 1, 0, -20000000, 20000000, 1 timing_offset_cylinder9 = scalar, F32, 2572, "Val", 1, 0, -20000000, 20000000, 1 timing_offset_cylinder10 = scalar, F32, 2576, "Val", 1, 0, -20000000, 20000000, 1 timing_offset_cylinder11 = scalar, F32, 2580, "Val", 1, 0, -20000000, 20000000, 1 timing_offset_cylinder12 = scalar, F32, 2584, "Val", 1, 0, -20000000, 20000000, 1 idlePidActivationTime = scalar, F32, 2588, "seconds", 1, 0, 0, 60, 1 sdCardSpiDevice = bits,U32, 2592, [0:7], "Off", "SPI1", "SPI2", "SPI3", "SPI4" ;no TS info - skipping unusedSpiPadding4 offset 2593 spi1SckMode = bits, U08, 2596, [0:7], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN" spi1MosiMode = bits, U08, 2597, [0:7], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN" spi1MisoMode = bits, U08, 2598, [0:7], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN" spi2SckMode = bits, U08, 2599, [0:7], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN" spi2MosiMode = bits, U08, 2600, [0:7], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN" spi2MisoMode = bits, U08, 2601, [0:7], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN" spi3SckMode = bits, U08, 2602, [0:7], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN" spi3MosiMode = bits, U08, 2603, [0:7], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN" spi3MisoMode = bits, U08, 2604, [0:7], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN" stepperEnablePinMode = bits, U08, 2605, [0:7], "default", "default inverted", "open collector", "open collector inverted" mc33816_rstb = bits, U08, 2606, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" mc33816_driven = bits, U08, 2607, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" brakePedalPin = bits, U08, 2608, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "N/A", "N/A", "PA10", "PA11", "PA12", "PA13", "N/A", "N/A", "N/A", "N/A", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "N/A", "N/A", "N/A", "N/A", "PB12", "PB13", "N/A", "N/A", "N/A", "N/A", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "N/A", "N/A", "N/A", "N/A", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "PD15", "PD16", "N/A", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A" cj125ua = bits, U08, 2609, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" cj125ur = bits, U08, 2610, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" brakePedalPinMode = scalar, U08, 2611, "todo", 1, 0, 0, 20, 1 auxPid1_pFactor = scalar, F32, 2612, "", 1, 0, -10000, 10000, 4 auxPid1_iFactor = scalar, F32, 2616, "", 1, 0, -10000, 10000, 4 auxPid1_dFactor = scalar, F32, 2620, "", 1, 0, -10000, 10000, 4 auxPid1_offset = scalar, S16, 2624, "", 1, 0, -1000, 1000, 0 auxPid1_periodMs = scalar, S16, 2626, "ms", 1, 0, 0, 3000, 0 auxPid1_minValue = scalar, S16, 2628, "", 1, 0, -30000, 30000.0, 0 auxPid1_maxValue = scalar, S16, 2630, "", 1, 0, -30000, 30000.0, 0 auxPid2_pFactor = scalar, F32, 2632, "", 1, 0, -10000, 10000, 4 auxPid2_iFactor = scalar, F32, 2636, "", 1, 0, -10000, 10000, 4 auxPid2_dFactor = scalar, F32, 2640, "", 1, 0, -10000, 10000, 4 auxPid2_offset = scalar, S16, 2644, "", 1, 0, -1000, 1000, 0 auxPid2_periodMs = scalar, S16, 2646, "ms", 1, 0, 0, 3000, 0 auxPid2_minValue = scalar, S16, 2648, "", 1, 0, -30000, 30000.0, 0 auxPid2_maxValue = scalar, S16, 2650, "", 1, 0, -30000, 30000.0, 0 auxPid3_pFactor = scalar, F32, 2652, "", 1, 0, -10000, 10000, 4 auxPid3_iFactor = scalar, F32, 2656, "", 1, 0, -10000, 10000, 4 auxPid3_dFactor = scalar, F32, 2660, "", 1, 0, -10000, 10000, 4 auxPid3_offset = scalar, S16, 2664, "", 1, 0, -1000, 1000, 0 auxPid3_periodMs = scalar, S16, 2666, "ms", 1, 0, 0, 3000, 0 auxPid3_minValue = scalar, S16, 2668, "", 1, 0, -30000, 30000.0, 0 auxPid3_maxValue = scalar, S16, 2670, "", 1, 0, -30000, 30000.0, 0 auxPid4_pFactor = scalar, F32, 2672, "", 1, 0, -10000, 10000, 4 auxPid4_iFactor = scalar, F32, 2676, "", 1, 0, -10000, 10000, 4 auxPid4_dFactor = scalar, F32, 2680, "", 1, 0, -10000, 10000, 4 auxPid4_offset = scalar, S16, 2684, "", 1, 0, -1000, 1000, 0 auxPid4_periodMs = scalar, S16, 2686, "ms", 1, 0, 0, 3000, 0 auxPid4_minValue = scalar, S16, 2688, "", 1, 0, -30000, 30000.0, 0 auxPid4_maxValue = scalar, S16, 2690, "", 1, 0, -30000, 30000.0, 0 oilPressure_hwChannel = bits, U08, 2692, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" ;no TS info - skipping oilPressure_align offset 2693 oilPressure_v1 = scalar, F32, 2696, "volts", 1, 0.0, 0, 10.0, 2 oilPressure_value1 = scalar, F32, 2700, "kPa", 1, 0.0, 0, 1000.0, 2 oilPressure_v2 = scalar, F32, 2704, "volts", 1, 0.0, 0, 10.0, 2 oilPressure_value2 = scalar, F32, 2708, "kPa", 1, 0.0, 0, 1000.0, 2 accelerometerSpiDevice = bits,U32, 2712, [0:7], "Off", "SPI1", "SPI2", "SPI3", "SPI4" ;no TS info - skipping unusedSpiPadding5 offset 2713 fsioCurve1Bins = array, F32, 2716, [16], "x", 1, 0, -999, 1000.0, 3 fsioCurve1 = array, F32, 2780, [16], "y", 1, 0, -999, 1000.0, 3 fsioCurve2Bins = array, F32, 2844, [16], "x", 1, 0, -999, 1000.0, 3 fsioCurve2 = array, F32, 2908, [16], "y", 1, 0, -999, 1000.0, 3 fsioCurve3Bins = array, F32, 2972, [8], "x", 1, 0, -999, 1000.0, 3 fsioCurve3 = array, F32, 3004, [8], "y", 1, 0, -999, 1000.0, 3 fsioCurve4Bins = array, F32, 3036, [8], "x", 1, 0, -999, 1000.0, 3 fsioCurve4 = array, F32, 3068, [8], "y", 1, 0, -999, 1000.0, 3 ;no TS info - skipping unusedFlexFuelSensor offset 3100 test557pin = bits, U08, 3101, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" stepperDirectionPinMode = bits, U08, 3102, [0:7], "default", "default inverted", "open collector", "open collector inverted" externalKnockSenseAdc = bits, U08, 3103, [0:7] "PA2", "PA3", "INVALID", "PD3", "INVALID", "INVALID", "INVALID", "PB12", "PB13", "INVALID", "PE2", "INVALID", "PC14", "PC15", "PC16", "PC17", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" stepperEnablePin = bits, U08, 3104, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" tle8888_cs = bits, U08, 3105, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" tle8888_csPinMode = bits, U08, 3106, [0:7], "default", "default inverted", "open collector", "open collector inverted" mc33816_cs = bits, U08, 3107, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" crankingAdvanceBins = array, F32, 3108, [4], "RPM", 1, 0, 0.0, 18000, 2 crankingAdvance = array, F32, 3124, [4], "deg", 1, 0, -20, 90, 2 servoOutputPins1 = bits, U08, 3140, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" servoOutputPins2 = bits, U08, 3141, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" servoOutputPins3 = bits, U08, 3142, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" servoOutputPins4 = bits, U08, 3143, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" servoOutputPins5 = bits, U08, 3144, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" servoOutputPins6 = bits, U08, 3145, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" servoOutputPins7 = bits, U08, 3146, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" servoOutputPins8 = bits, U08, 3147, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PA16", "PA17", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PB16", "PB17", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PC16", "PC17", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PE16", "PE17", "TLE6240_1", "TLE6240_2", "TLE6240_3", "TLE6240_4", "TLE6240_5", "TLE6240_6", "TLE6240_7", "TLE6240_8", "TLE6240_9", "TLE6240_10", "TLE6240_11", "TLE6240_12", "TLE6240_13", "TLE6240_14", "TLE6240_15", "TLE6240_16" coastingFuelCutRpmHigh = scalar, S16, 3148, "rpm", 1, 0, 0, 5000, 0 coastingFuelCutRpmLow = scalar, S16, 3150, "rpm", 1, 0, 0, 5000, 0 coastingFuelCutTps = scalar, S16, 3152, "%", 1, 0, 0, 100, 1 coastingFuelCutClt = scalar, S16, 3154, "C", 1, 0, -100, 100, 0 pidExtraForLowRpm = scalar, S16, 3156, "%", 1, 0, 0, 100, 0 coastingFuelCutMap = scalar, S16, 3158, "kPa", 1, 0, 0, 250, 0 iacCoastingBins = array, F32, 3160, [16], "C", 1, 0, -100.0, 250.0, 2 iacCoasting = array, F32, 3224, [16], "%", 1, 0, 0.0, 100.0, 2 ignitionTpsTable = array, S16, 3288, [16x16],"deg", 0.01, 0, -20, 90, 2 ignitionTpsBins = array, F32, 3800, [16], "TPS", 1, 0.0, 0, 100.0, 2 tChargeAirCoefMin = scalar, F32, 3864, "Min tCharge Coeff.", 1, 0, 0.0, 1.0, 4 tChargeAirCoefMax = scalar, F32, 3868, "Max tCharge Coeff.", 1, 0, 0.0, 1.0, 4 tChargeAirFlowMax = scalar, F32, 3872, "Max Air Flow, kg/h", 1, 0, 0.0, 1000.0, 1 tChargeAirIncrLimit = scalar, F32, 3876, "tChange Increment Limit, deg/sec", 1, 0, 0.0, 100.0, 1 tChargeAirDecrLimit = scalar, F32, 3880, "tChange Decrement Limit, deg/sec", 1, 0, 0.0, 100.0, 1 tChargeMode = bits, U32, 3884, [0:0], "RPM+TPS (Default)", "Air Mass Interpolation" etbBiasBins = array, F32, 3888, [8], "target TPS position", 1, 0.0, 0, 100.0, 0 etbBiasValues = array, F32, 3920, [8], "ETB duty cycle bias", 1, 0.0, -100, 100.0, 2 ;no TS info - skipping hip9011Gain offset 3952 etb_iTermMin = scalar, S16, 3956, "", 1, 0, -30000, 30000.0, 0 etb_iTermMax = scalar, S16, 3958, "", 1, 0, -30000, 30000.0, 0 etbDeadband = scalar, F32, 3960, "", 1, 0, 0, 100.0, 2 ;no TS info - skipping unused1059 offset 3964 idleTimingPid_pFactor = scalar, F32, 3968, "", 1, 0, -10000, 10000, 4 idleTimingPid_iFactor = scalar, F32, 3972, "", 1, 0, -10000, 10000, 4 idleTimingPid_dFactor = scalar, F32, 3976, "", 1, 0, -10000, 10000, 4 idleTimingPid_offset = scalar, S16, 3980, "", 1, 0, -1000, 1000, 0 idleTimingPid_periodMs = scalar, S16, 3982, "ms", 1, 0, 0, 3000, 0 idleTimingPid_minValue = scalar, S16, 3984, "", 1, 0, -30000, 30000.0, 0 idleTimingPid_maxValue = scalar, S16, 3986, "", 1, 0, -30000, 30000.0, 0 idleTimingPidWorkZone = scalar, S16, 3988, "RPM", 1, 0, 0, 1000, 0 idleTimingPidDeadZone = scalar, S16, 3990, "RPM", 1, 0, 0, 1000, 0 idlePidFalloffDeltaRpm = scalar, S16, 3992, "RPM", 1, 0, 0, 1000, 0 tpsAccelFractionPeriod = scalar, S16, 3994, "cycles", 1, 0, 0, 500, 0 tpsAccelFractionDivisor = scalar, F32, 3996, "coef", 1, 0, 0, 100, 2 tle8888spiDevice = bits,U32, 4000, [0:7], "Off", "SPI1", "SPI2", "SPI3", "SPI4" mc33816spiDevice = bits,U32, 4001, [0:7], "Off", "SPI1", "SPI2", "SPI3", "SPI4" idlerpmpid_iTermMin = scalar, S16, 4002, "", 1, 0, -30000, 30000.0, 0 tle6240spiDevice = bits,U32, 4004, [0:7], "Off", "SPI1", "SPI2", "SPI3", "SPI4" ;no TS info - skipping unusedSpiPadding7 offset 4005 idlerpmpid_iTermMax = scalar, S16, 4006, "", 1, 0, -30000, 30000.0, 0 mc33972spiDevice = bits,U32, 4008, [0:7], "Off", "SPI1", "SPI2", "SPI3", "SPI4" ;no TS info - skipping unusedSpiPadding8 offset 4009 etbIdleThrottleRange = scalar, F32, 4012, "%", 1, 0, 0, 15, 0 ;no TS info - skipping unusuedvref offset 4016 ;no TS info - skipping unusuedsw offset 4020 ;no TS info - skipping alFIn offset 4024 ;no TS info - skipping unusedSpiPadding3 offset 4036 idleRpmPid2_pFactor = scalar, F32, 4040, "", 1, 0, -10000, 10000, 4 idleRpmPid2_iFactor = scalar, F32, 4044, "", 1, 0, -10000, 10000, 4 idleRpmPid2_dFactor = scalar, F32, 4048, "", 1, 0, -10000, 10000, 4 idleRpmPid2_offset = scalar, S16, 4052, "", 1, 0, -1000, 1000, 0 idleRpmPid2_periodMs = scalar, S16, 4054, "ms", 1, 0, 0, 3000, 0 idleRpmPid2_minValue = scalar, S16, 4056, "", 1, 0, -30000, 30000.0, 0 idleRpmPid2_maxValue = scalar, S16, 4058, "", 1, 0, -30000, 30000.0, 0 iacPidMultTable = array, U08, 4060, [8x8],"%", 1, 0, 0, 999, 2 iacPidMultLoadBins = array, U08, 4124, [8], "Load", 1, 0.0, 0, 500.0, 2 iacPidMultRpmBins = array, U08, 4132, [8], "RPM", 50, 0, 0.0, 12000.0, 0 ;no TS info - skipping mainUnusedEnd offset 4140 pedalToTpsTable = array, U08, 6400, [8x8],"deg", 1, 0, -720, 720, 2 pedalToTpsPedalBins = array, U08, 6464, [8], "%", 1, 0, 0.0, 120.0, 0 pedalToTpsRpmBins = array, U08, 6472, [8], "RPM", 50, 0, 0.0, 12000.0, 0 cltCrankingCorrBins = array, F32, 6480, [8], "C", 1, 0, -100.0, 250.0, 2 cltCrankingCorr = array, F32, 6512, [8], "%", 1, 0, 0.0, 500.0, 2 idleAdvanceBins = array, F32, 6544, [8], "RPM", 1, 0, 0.0, 18000, 2 idleAdvance = array, F32, 6576, [8], "deg", 1, 0, -20, 90, 2 idleVeBins = array, F32, 6608, [8], "RPM", 1, 0, 0.0, 18000, 2 idleVe = array, F32, 6640, [8], ,"%", 1, 0, 0, 999.0, 2 fsioFormulas1 = string, ASCII, 6672, 200 fsioFormulas2 = string, ASCII, 6872, 200 fsioFormulas3 = string, ASCII, 7072, 200 fsioFormulas4 = string, ASCII, 7272, 200 fsioFormulas5 = string, ASCII, 7472, 200 fsioFormulas6 = string, ASCII, 7672, 200 fsioFormulas7 = string, ASCII, 7872, 200 fsioFormulas8 = string, ASCII, 8072, 200 fsioFormulas9 = string, ASCII, 8272, 200 fsioFormulas10 = string, ASCII, 8472, 200 fsioFormulas11 = string, ASCII, 8672, 200 fsioFormulas12 = string, ASCII, 8872, 200 fsioFormulas13 = string, ASCII, 9072, 200 fsioFormulas14 = string, ASCII, 9272, 200 fsioFormulas15 = string, ASCII, 9472, 200 fsioFormulas16 = string, ASCII, 9672, 200 timingMultiplier = string, ASCII, 9872, 200 timingAdditive = string, ASCII, 10072, 200 cltFuelCorrBins = array, F32, 10272, [16], "C", 1, 0, -100.0, 250.0, 2 cltFuelCorr = array, F32, 10336, [16], "ratio", 1, 0, 0.0, 5.0, 2 iatFuelCorrBins = array, F32, 10400, [16], "C", 1, 0, -100.0, 250.0, 2 iatFuelCorr = array, F32, 10464, [16], "ratio", 1, 0, 0.0, 5.0, 2 crankingFuelCoef = array, F32, 10528, [8], "ratio", 1, 0, 0.1, 50.0, 2 crankingFuelBins = array, F32, 10560, [8], "C", 1, 0, -80.0, 170.0, 2 crankingCycleCoef = array, F32, 10592, [8], "ratio", 1, 0, 0.0, 5.0, 2 crankingCycleBins = array, F32, 10624, [8], "counter", 1, 0, -80.0, 170.0, 0 cltIdleCorrBins = array, F32, 10656, [16], "C", 1, 0, -100.0, 250.0, 2 cltIdleCorr = array, F32, 10720, [16], "ratio", 1, 0, 0.0, 10.0, 2 mafDecoding = array, F32, 10784, [256], "kg/hour", 1, 0, -500.0, 4000.0, 2 mafDecodingBins = array, F32, 11808, [256], "V", 1, 0, -5.0, 150.0, 2 ignitionIatCorrTable = array, F32, 12832, [16x16],"deg", 1, 0, -720, 720, 2 ignitionIatCorrLoadBins = array, F32, 13856, [16], "Temperature", 1, 0.0, 0, 500.0, 2 ignitionIatCorrRpmBins = array, F32, 13920, [16], "RPM", 1, 0.0, 0, 18000.0, 2 injectionPhase = array, F32, 13984, [16x16],"deg", 1, 0, -720, 720, 2 injPhaseLoadBins = array, F32, 15008, [16], "Load", 1, 0.0, 0, 500.0, 2 injPhaseRpmBins = array, F32, 15072, [16], "RPM", 1, 0.0, 0, 18000.0, 2 fuelTable = array, F32, 15136, [16x16],"ms", 1, 0, 0.0, 500.0, 2 fuelLoadBins = array, F32, 16160, [16], "V", 1, 0, 0.0, 500.0, 2 fuelRpmBins = array, F32, 16224, [16], "RPM", 1, 0, 0.0, 25500.0, 2 ignitionTable = array, F32, 16288, [16x16],"deg", 1, 0, -20, 90, 2 ignitionLoadBins = array, F32, 17312, [16], "Load", 1, 0.0, 0, 500.0, 2 ignitionRpmBins = array, F32, 17376, [16], "RPM", 1, 0.0, 0, 18000.0, 2 veTable = array, F32, 17440, [16x16],"%", 1, 0, 0, 999.0, 2 veLoadBins = array, F32, 18464, [16], "kPa", 1, 0.0, 0, 400.0, 2 veRpmBins = array, F32, 18528, [16], "RPM", 1, 0.0, 0, 18000.0, 2 afrTable = array, U08, 18592, [16x16],"deg", 0.1, 0, 0, 25.0, 1 afrLoadBins = array, F32, 18848, [16], "", 1, 0.0, 0, 500.0, 2 afrRpmBins = array, F32, 18912, [16], "RPM", 1, 0.0, 0, 18000.0, 2 tpsTpsAccelTable = array, F32, 18976, [8x8],"value", 1, 0, 0.0, 30000.0, 2 tpsTpsAccelFromRpmBins = array, F32, 19232, [8], "from", 1, 0, 0.0, 30000.0, 2 tpsTpsAccelToRpmBins = array, F32, 19264, [8], "to", 1, 0, 0.0, 25500.0, 2 fsioTable1 = array, F32, 19296, [8x8],"value", 1, 0, 0.0, 30000.0, 2 fsioTable1LoadBins = array, F32, 19552, [8], "L", 1, 0, 0.0, 30000.0, 2 fsioTable1RpmBins = array, F32, 19584, [8], "RPM", 1, 0, 0.0, 25500.0, 2 fsioTable2 = array, U08, 19616, [8x8],"value", 1, 0, 0.0, 255.0, 0 fsioTable2LoadBins = array, F32, 19680, [8], "L", 1, 0, 0.0, 255, 0 fsioTable2RpmBins = array, F32, 19712, [8], "RPM", 1, 0, 0.0, 25500.0, 2 fsioTable3 = array, U08, 19744, [8x8],"value", 1, 0, 0.0, 255.0, 0 fsioTable3LoadBins = array, F32, 19808, [8], "L", 1, 0, 0.0, 255, 0 fsioTable3RpmBins = array, F32, 19840, [8], "RPM", 1, 0, 0.0, 25500.0, 2 fsioTable4 = array, U08, 19872, [8x8],"value", 1, 0, 0.0, 255.0, 0 fsioTable4LoadBins = array, F32, 19936, [8], "L", 1, 0, 0.0, 255, 0 fsioTable4RpmBins = array, F32, 19968, [8], "RPM", 1, 0, 0.0, 25500.0, 2 ; total TS size = 20000 [SettingContextHelp] injector_flow = "This is your injector flow at the fuel pressure used in the vehicle. cc/min, cubic centimetre per minute\nBy the way, g/s = 0.125997881 * (lb/hr)\ng/s = 0.125997881 * (cc/min)/10.5\ng/s = 0.0119997981 * cc/min" directSelfStimulation = "Should trigger emulator push data right into trigger handling logic, eliminating the need for physical jumper wires?\nSee also triggerSimulatorPins\nPS: Funny name, right? :)" absoluteFuelPressure = "If your fuel regulator does not have vacuum line" tpsErrorDetectionTooLow = "TPS error detection, what TPS % value is unrealistically low" tpsErrorDetectionTooHigh = "TPS error detection, what TPS % value is unrealistically high" cranking_baseFuel = "Base duration of the fuel injection during cranking, this is modified by the multipliers for CLT, IAT, TPS ect, to give the final cranking pulse width." cranking_rpm = "This sets the RPM limit below which the ECU will use cranking fuel and ignition logic, typically this is around 350-450rpm. \nset cranking_rpm X" crankingChargeAngle = "While cranking (which causes battery voltage to drop) we can calculate dwell time in shaft\ndegrees, not in absolute time as in running mode.\nset cranking_charge_angle X" clt_bias_resistor = "Pull-up resistor value on your board" iat_bias_resistor = "Pull-up resistor value on your board" hip9011PrescalerAndSDO = "value '6' for 8MHz hw osc\nread hip9011 datasheet for details\ntodo split into two bit fields" knockBandCustom = "We calculate knock band based of cylinderBore\n Use this to override - kHz knock band override" cylinderBore = "Cylinder diameter, in mm." sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" fuelAlgorithm = "This setting controls which fuel quantity control algorithm is used.\nSee also useTPSAdvanceTable\nset algorithm X" crankingInjectionMode = "This is the injection strategy during engine start. See Fuel/Injection settings for more detail. It is suggested to use "Simultaneous"." injectionMode = "This is where the fuel injection type is defined: "Simultaneous" means all injectors will fire together at once. "Sequential" fires the injectors on a per cylinder basis, which requires individually wired injectors. "Batched" will fire the injectors in groups. If your injectors are individually wired you will also need to enable "Two wire batch emulation". \nset injection_mode X\nSee also twoWireBatchInjection" extraInjectionOffset = "this is about deciding when the injector starts it's squirt\nSee also injectionPhase map\ntodo: do we need even need this since we have the map anyway?" crankingTimingAngle = "Ignition advance angle used during engine cranking, 5-10 degrees will work as a base setting for most engines.\nset cranking_timing_angle X" ignitionMode = ""One Coil" is for use on distributed ignition system. "Individual Coils" is to be used when you have one coil per cylinder (COP or similar). "Wasted" means one coil is driving two spark plugs in two cylinders, with one of the sparks not doing anything since it's happening on the exhaust cycle\nset ignition_mode X" ignitionOffset = "this value could be used to offset the whole ignition timing table by a constant" timingMode = "Dynamic uses the timing map to decide the ignition timing, Static timing fixes the timing to the value set below (only use for checking static timing)." fixedModeTiming = "This value is the ignition timing used when in 'fixed timing' mode, i.e. constant timing\nThis mode is useful when adjusting distributor location." globalTriggerAngleOffset = "Angle between Top Dead Center (TDC) and the first trigger event.\nKnowing this angle allows us to control timing and other angles in reference to TDC.\nset global_trigger_offset_angle X" analogInputDividerCoefficient = "Coefficient of input voltage dividers on your PCB" vbattDividerCoeff = "This is the ratio of the resistors for the battery voltage, measure the voltage at the battery and then adjust this number until the gauge matches the reading." fanOnTemperature = "Cooling fan turn-on temperature threshold, in Celsius" fanOffTemperature = "Cooling fan turn-off temperature threshold, in Celsius" vehicleSpeedCoef = "This coefficient translates vehicle speed input frequency (in Hz) into vehicle speed, km/h" ambiguousOperationMode = "'Some triggers could be mounted differently. Most well-known triggers imply specific sensor setup. 4 stroke with symmetrical crank' is a pretty special case for example on Miata NB2\nSee engineCycle\nset operation_mode X" vbattAdcChannel = "This is the processor input pin that the battery voltage circuit is connected to, if you are unsure of what pin to use, check the schematic that corresponds to your PCB." fuelLevelSensor = "This is the processor pin that your fuel level sensor in connected to. This is a non standard input so will need to be user defined." trigger_useOnlyFirstChannel = "This option could be used if your second trigger channel is broken" camInputs1 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" camInputs2 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" camInputs3 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" camInputs4 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" throttlePedalUpPin = "Throttle Pedal not pressed switch - used on some older vehicles like early Mazda Miata" triggerSimulatorFrequency = "Same RPM is used for two ways of producing simulated RPM. See also triggerSimulatorPins (with wires)\nSee also directSelfStimulation (no wires, bypassing input hardware)\nrpm X" malfunctionIndicatorPin = "Check engine light, also malfunction indicator light. Always blinks once on boot." tachOutputPin = "This implementation produces one pulse per engine cycle. See also dizzySparkOutputPin." useStepperIdle = "This setting should only be used if you have a stepper motor idle valve and a stepper motor driver installed." vvtCamSensorUseRise = "Use rise or fall signal front" measureMapOnlyInOneCylinder = "Useful for individual intakes" isFasterEngineSpinUpEnabled = "Smarter cranking logic.\nSee also startOfCrankingPrimingPulse" coastingFuelCutEnabled = "This setting disables fuel injection while the engine is in overrun, this is useful as a fuel saving measure and to prevent back firing." useIacTableForCoasting = "This setting allows the ECU to open the IAC during overrun conditions to help reduce engine breaking, this can be helpful for large engines in light weight cars." useETBforIdleControl = "This setting allows the ETB to act as the idle air control valve and move to regulate the airflow at idle." sdCardPeriodMs = "SD card logging period, in milliseconds" triggerErrorPin = "This pin is used for debugging - snap a logic analyzer on it and see if it's ever high" cdmInputPin = "Saab Combustion Detection Module knock signal input pin\nalso known as Saab Ion Sensing Module" sensorChartMode = "rusEfi console Sensor Sniffer mode" fuelClosedLoopCorrectionEnabled = "Enables lambda sensor closed loop feedback for fuelling." isVerboseIAC = "Print details into rusEfi console" isVerboseETB = "Prints ETB details to rusEFI console" useConstantDwellDuringCranking = "If set to true, will use the specified duration for cranking dwell. If set to false, will use the specified dwell angle. Unless you have a really good reason to, leave this set to true to use duration mode." isEngineChartEnabled = "This options enables data for 'engine sniffer' tab in console, which comes at some CPU price" silentTriggerError = "Sometimes we have a performance issue while printing error" useFSIO16ForTimingAdjustment = "See fsioTimingAdjustment" isAlternatorControlEnabled = "This enables smart alternator control and activates the extra alternator settings." invertPrimaryTriggerSignal = "This setting flips the signal from the primary engine speed sensor." invertSecondaryTriggerSignal = "This setting flips the signal from the secondary engine speed sensor." etbNeutralPosition = "Expected neutral position" isInjectionEnabled = "Enable fuel injection - This is default off for new projects as a safety feature, set to "true" to enable fuel injection and further injector settings." isIgnitionEnabled = "Enable ignition - This is default off for new projects as a safety feature, set to "true" to enable ignition and further ignition settings." isCylinderCleanupEnabled = "When enabled if TPS is held above 95% no fuel is injected while cranking to clear excess fuel from the cylinders." overrideCrankingIacSetting = "This setting overrides the normal multiplication values that have been set for the idle air control valve during cranking. If this setting is enabled the "IAC multiplier" table in the Cranking settings tab needs to be adjusted appropriately or potentially no IAC opening will occur." useSeparateAdvanceForIdle = "This activates a separate ignition timing table for idle conditions, this can help idle stability by using ignition retard and advance either side of the desired idle speed. Extra retard at low idle speeds will prevent stalling and extra advance at high idle speeds can help reduce engine power and slow the idle speed." useSeparateVeForIdle = "This activates a separate fuel table for Idle, this allows fine tuning of the idle fuelling." verboseTriggerSynchDetails = "enable trigger_details" twoWireBatchInjection = "This is needed if your coils are individually wired and you wish to use batch injection.\nenable two_wire_batch_injection" useOnlyRisingEdgeForTrigger = "VR sensors are only precise on rising front\nenable trigger_only_front" twoWireBatchIgnition = "This is needed if your coils are individually wired (COP) and you wish to use batch ignition (wasted spark)." useSeparateAdvanceForCranking = "This activates a separate advance table for cranking conditions, this allows cranking advance to be RPM dependant." useAdvanceCorrectionsForCranking = "This enables the various ignition corrections during cranking (IAT, CLT, FSIO and PID idle)." useTPSAdvanceTable = "This flag allows to use TPS for ignition lookup while in Speed Density Fuel Mode" idlePidRpmUpperLimit = "Relative to the target idle RPM" primeInjFalloffTemperature = "This sets the temperature above which no priming pulse is used, The value at -40 is reduced until there is no more priming injection at this temperature." ignMathCalculateAtIndex = "At what trigger index should some ignition-related math be executed? This is a performance trick to reduce load on synchronization trigger callback." mapAveragingSchedulingAtIndex = "At what trigger index should some MAP-related math be executed? This is a performance trick to reduce load on synchronization trigger callback." tachPulseTriggerIndex = "Trigger cycle index at which we start tach pulse (performance consideration)" wwaeTau = "Length of time the deposited wall fuel takes to dissipate after the start of acceleration. " wwaeBeta = "0 = No fuel settling on port walls 1 = All the fuel settling on port walls setting this to 0 disables the wall wetting enrichment. " throttlePedalWOTVoltage = "Pedal in the floor" startUpFuelPumpDuration = "on ECU start turn fuel pump on to build fuel pressure" targetVBatt = "This is the target battery voltage the alternator PID control will attempt to maintain" alternatorOffAboveTps = "Turns off alternator output above specified TPS, enabling this reduced parasitic drag on the engine at full load." startOfCrankingPrimingPulse = "Prime pulse for cold engine, duration in ms\nLinear interpolation between -40F/-40C and fallout temperature\n\nSee also isFasterEngineSpinUpEnabled\nset cranking_priming_pulse X" afterCrankingIACtaperDuration = "This is the duration in cycles that the IAC will take to reach its normal idle position, it can be used to hold the idle higher for a few seconds after cranking to improve startup." iacByTpsTaper = "Extra IAC, in percent between 0 and 100, tapered between zero and idle deactivation TPS value" tpsAccelLength = "This is the number of engine cycles that the TPS position change can occur over, a longer duration will make the enrichment more active but too long may affect steady state driving, a good default is 30-60 cycles. " tpsAccelEnrichmentThreshold = "Maximum change delta of TPS percentage over the 'length'. Actual TPS change has to be above this value in order for TPS/TPS acceleration to kick in." vvtOffset = "Angle between cam sensor and VVT zero position\nset vvt_offset X" slowAdcAlpha = "ExpAverage alpha coefficient" debugMode = "See http://rusefi.com/s/debugmode\n\nset debug_mode X" dizzySparkOutputPin = "This implementation makes a pulse every time one of the coils is charged, using coil dwell for pulse width. See also tachOutputPin" crankingIACposition = "This is the IAC position during cranking, some engines start better if given more air during cranking to improve cylinder filling." auxTempSensor1_bias_resistor = "Pull-up resistor value on your board" auxTempSensor2_bias_resistor = "Pull-up resistor value on your board" crankingAdvanceBins = "Optional timing advance table for Cranking (see useSeparateAdvanceForCranking)" crankingAdvance = "Optional timing advance table for Cranking (see useSeparateAdvanceForCranking)" coastingFuelCutRpmHigh = "This sets the RPM limit above which the fuel cut is deactivated, activating this maintains fuel flow at high RPM to help cool pistons" coastingFuelCutRpmLow = "This sets the RPM limit below which the fuel cut is deactivated, this prevents jerking or issues transitioning to idle" coastingFuelCutTps = "percent between 0 and 100 below which the fuel cut is deactivated, this helps low speed drivability." coastingFuelCutClt = "Fuel cutoff is deactivated below this coolant threshold." pidExtraForLowRpm = "Increases PID reaction for RPM , 50, , true filter = VBatt, "VBatt", VBatt < , 12, , true filter = minTps, "Minimum TPS", TPSValue, < , 1, , true ;[VeAnalyze] ; fuelAnalyzeMap = fuelTableTbl, afrTableTbl, AFRValue, egoCorrection , { 1 } ; filter = minRPMFilter, "Minimum RPM", RPMValue, < , 500, , true [OutputChannels] ; see TS_FILE_VERSION in firmware code fileVersion = { 20190701 } ochGetCommand = "O%2o%2c" ; see TS_OUTPUT_SIZE in console source code ochBlockSize = 356 ; ; see TunerStudioOutputChannels struct ; RPMValue = scalar, U32, 0, "RPM", 1, 0.00000 #if CELSIUS coolant = scalar, F32, 4, "deg C", 1, 0.0 #else coolant = scalar, F32, 4, "deg F", {9/5}, 17.77777 #endif #if CELSIUS intake = scalar, F32, 8, "deg C", 1, 0.0 #else intake = scalar, F32, 8, "deg F", {9/5}, 17.77777 #endif TPSValue = scalar, F32, 12, "%", 1, 0 MAFValue = scalar, F32, 16, "V", 1, 0 AFRValue = scalar, F32, 20, "AFR", 1, 0.0 engineLoad = scalar, F32, 24, "%", 1, 0.0 ; Blend of MAP and TPS, depends on algorithm VBatt = scalar, F32, 28, "V", 1, 0.0 ; 10 bit TPS ADC value (from 0 to 1023 in 5v scale) tpsADC = scalar, U16, 32, "ADC", 1, 0.0; tpsADC2 = scalar, U16, 34, "ADC", 1, 0.0; baroPressure = scalar, F32, 36, "pres", 1, 0.0; MAPValue = scalar, F32, 40, "MAP", 1, 0.0; ; total fuel squirt duration (in MS) per engine cycle according to current CLT crankingFuelMs = scalar, F32, 44, "ms", 1, 0.0; baseFuel = scalar, F32, 48, "ms", 1, 0 tCharge = scalar, F32, 52, "T", 1, 0.0; ignitionAdvance = scalar, F32, 56, "deg", 1, 0.0; sparkDwellValue = scalar, F32, 60, "ms", 1, 0.0; ; actual total Ms time per engine cycle with all corrections actualLastInjection = scalar, F32, 64, "ms", 1, 0.0; debugFloatField1 = scalar, F32, 68, "val", 1, 0.0; hasSdCard = bits, U32, 72, [0:0], "true", "false"; isIgnitionEnabledIndicator=bits, U32, 72, [1:1], "true", "false"; ind_injection_enabled=bits,U32, 72, [2:2], "true", "false"; isCylinderCleanupEnabled=bits, U32, 72, [3:3], "true", "false"; isCylinderCleanupActivated=bits,U32,72, [4:4], "true", "false"; ind_fuel_pump = bits, U32, 72, [5:5], "true", "false"; ind_fan = bits, U32, 72, [6:6], "true", "false"; ind_o2_heater = bits, U32, 72, [7:7], "true", "false"; ind_check_engine= bits, U32, 72, [8:8], "true", "false"; needBurn = bits, U32, 72, [9:9], "true", "false"; ind_2nd_trigger_en=bits, U32, 72, [10:10], "true", "false"; clutchUpState =bits, U32, 72, [11:11], "true", "false"; clutchDownState =bits, U32, 72, [12:12], "true", "false"; knockEverIndicator=bits, U32, 72, [13:13], "true", "false"; knockNowIndicator=bits, U32, 72, [14:14], "true", "false"; brakePedalIndicator=bits, U32, 72, [15:15], "true", "false"; toothLogReady =bits, U32, 72, [16:16], "true", "false"; acSwitchIndicator =bits, U32, 72, [17:17], "true", "false"; vehicleSpeedKph = scalar, F32, 76, "kph", 1, 0.0; ind_tps_error = bits, U32, 80, [0:0], "true", "false"; ind_clt_error = bits, U32, 80, [1:1], "true", "false"; ind_map_error = bits, U32, 80, [2:2], "true", "false"; ind_iat_error = bits, U32, 80, [3:3], "true", "false"; ind_isTriggerError = bits, U32, 80, [5:5], "true", "false"; ind_hasFatalError=bits, U32, 80, [6:6], "true", "false"; ind_isWarnNow =bits, U32, 80, [7:7], "true", "false"; firmwareTsVersion = scalar,U32, 84, "version_p", 1, 0 egt1 = scalar, S16, 88, "deg C", 1, 0 egt2 = scalar, S16, 90, "deg C", 1, 0 egt3 = scalar, S16, 92, "deg C", 1, 0 egt4 = scalar, S16, 94, "deg C", 1, 0 egt5 = scalar, S16, 96, "deg C", 1, 0 egt6 = scalar, S16, 98, "deg C", 1, 0 egt7 = scalar, S16, 100, "deg C", 1, 0 egt8 = scalar, S16, 102, "deg C", 1, 0 rpmAcceleration = scalar, F32, 104, "dRpm", 1, 0 massAirFlowValue= scalar, F32, 108, "Kg/h", 1, 0 veValue = scalar, F32, 112, "ratio", 1, 0 deltaTps = scalar, F32, 116, "ratio", 1, 0 triggerErrorsCounter = scalar, U32,120, "counter", 1, 0 engineLoadAccelExtra = scalar,F32, 124, "value", 1, 0 tpsAccelFuel = scalar, F32, 128, "ms", 1, 0 baroCorrection = scalar, F32, 132, "%", 1, 0 throttlePedalPosition = scalar, F32, 136, "%", 1, 0 injectorDutyCycle= scalar, F32, 140, "%", 1, 0 knockCount = scalar, U32, 144, "counter", 1, 0 fuelTankLevel = scalar, F32, 148, "amount", 1, 0 knockLevel = scalar, F32, 152, "Volts", 1, 0 ; totalTriggerErrorCounter 156 wallFuelAmount = scalar, F32, 160, "ms", 1, 0 iatCorrection = scalar, F32, 164, "%", 1, 0 wallFuelCorrection = scalar, F32, 168, "ms", 1, 0 idleAirValvePosition = scalar, F32, 172, "percent", 1, 0 currentTargetAfr = scalar, F32, 176, "ratio", 1, 0 chargeAirMass = scalar, F32, 180, "g", 1, 0 cltCorrection = scalar, F32, 184, "%", 1, 0 fuelRunning = scalar, F32, 188, "g", 1, 0 debugIntField1 = scalar, S32, 192, "val", 1, 0.0; injectorLagMs = scalar, F32, 196, "ms", 1, 0.0; debugFloatField2 = scalar, F32, 200, "val", 1, 0.0; debugFloatField3 = scalar, F32, 204, "val", 1, 0.0; debugFloatField4 = scalar, F32, 208, "val", 1, 0.0; debugFloatField5 = scalar, F32, 212, "val", 1, 0.0; debugIntField2 = scalar, S32, 216, "val", 1, 0.0; debugIntField3 = scalar, S32, 220, "val", 1, 0.0; timeSeconds = scalar, U32, 224, "sec", 1, 0.0; engineLoadDelta = scalar,F32, 228, "value", 1, 0 speedToRpmRatio = scalar,F32, 232, "value", 1, 0 warningCounter = scalar,U16, 236, "count", 1, 0 lastErrorCode = scalar,U16, 240, "error", 1, 0 internalMcuTemperature = scalar,F32, 244, "C", 1, 0 vvtPosition = scalar,F32, 248, "deg", 1, 0 engineMode = scalar, U32, 252, "em", 1, 0.0; debugFloatField6 = scalar, F32, 256, "val", 1, 0.0; debugFloatField7 = scalar, F32, 260, "val", 1, 0.0; firmwareVersion = scalar,U32, 264, "version_f", 1, 0 fuelPidCorrection = scalar, F32, 268, "ms", 1, 0 coilDutyCycle = scalar, F32, 272, "perc", 1, 0 accelerationX = scalar, S16, 276, "G", 0.01, 0 accelerationY = scalar, S16, 278, "G", 0.01, 0 oilPressure = scalar, F32, 280, "kPa", 1, 0.0 fuelConsumptionPerHour=scalar, F32, 284, "kPa", 1, 0.0 injectionOffset = scalar, F32, 288, "deg", 1, 0; debugIntField4 = scalar, S16, 292, "val", 1, 0.0; debugIntField5 = scalar, S16, 294, "val", 1, 0.0; recentErrorCode0 = scalar,U16, 296, "error", 1, 0 recentErrorCode1 = scalar,U16, 298, "error", 1, 0 recentErrorCode2 = scalar,U16, 300, "error", 1, 0 recentErrorCode3 = scalar,U16, 302, "error", 1, 0 recentErrorCode4 = scalar,U16, 304, "error", 1, 0 recentErrorCode5 = scalar,U16, 306, "error", 1, 0 recentErrorCode6 = scalar,U16, 308, "error", 1, 0 recentErrorCode7 = scalar,U16, 310, "error", 1, 0 etbTarget = scalar,F32, 312, "%", 1, 0 etb1DutyCycle = scalar,F32, 316, "%", 1, 0 etb1Error = scalar,F32, 320, "%", 1, 0 ; ; see TunerStudioOutputChannels struct ; ; todo: generate this section programatically LM_PLAIN_MAF = {0}, LM_ALPHA_N = {1}, LM_MAP = {2}, LM_SPEED_DENSITY = {3}, LM_REAL_MAF = {4} egoCorrection = { 100 } time = { timeNow } ; engineLoad = { fuleAlgorithm == 0 ? MAF : TPS } [PcVariables] wueAfrTargetOffset = array, S16, [ 16], ":1", 0.1, 0.0, -3.0, 3.0, 1; wueAnalRecommend = array, U08, [ 16], "%", 1.00, 0.0, 100, 255.00, 0 [ConstantsExtensions] defaultValue = wueAfrTargetOffset, -1.5 -1.4 -1.15 -0.95 -0.775 -0.65 -0.5625 -0.5 -0.4375 -0.375 -0.3125 -0.25 -0.1875 -0.125 -0.0625 0 [CurveEditor] ; xAxis = leftValue, rightValue, step ; yAxis = bottomValue, topValue, step curve = knockThresholdCurve, "Engine knock threshold RPM based" columnLabel = "RPM", "Threshold" xAxis = 0, 8000, 10 yAxis = 0, 8, 10 xBins = knockNoiseRpmBins, RPMValue yBins = knockNoise gauge = RPMGauge curve = narrowToWideOxygenCurve, "Narrow to Wideband approximation" columnLabel = "Voltage", "AFR" xAxis = 0, 6, 10 yAxis = 0, 28, 10 xBins = narrowToWideOxygenBins yBins = narrowToWideOxygen gauge = afr1Gauge curve = fsioCurve1, "FSIO Curve #1" columnLabel = "X", "Y" xAxis = 0, 128, 10 yAxis = -155, 150, 10 xBins = fsioCurve1Bins yBins = fsioCurve1 curve = fsioCurve2, "FSIO Curve #2" columnLabel = "X", "Y" xAxis = 0, 128, 10 yAxis = -150, 150, 10 xBins = fsioCurve2Bins yBins = fsioCurve2 curve = fsioCurve3, "FSIO Curve #3" columnLabel = "X", "Y" xAxis = 0, 128, 10 yAxis = -5, 5, 10 xBins = fsioCurve3Bins yBins = fsioCurve3 curve = fsioCurve4, "FSIO Curve #4" columnLabel = "X", "Y" xAxis = 0, 128, 10 yAxis = -5, 5, 10 xBins = fsioCurve4Bins yBins = fsioCurve4 curve = mapAccelTaper, "Engine Load Acceleration Enrichment Taper" columnLabel = "Distance", "Multiplier" xAxis = 0, 128, 10 yAxis = -5, 5, 10 xBins = mapAccelTaperBins yBins = mapAccelTaperMult curve = dwellCorrection, "Dwell time RPM based" columnLabel = "RPM", "Dwell" xAxis = 0, 8000, 10 yAxis = 0, 30, 10 xBins = sparkDwellRpmBins, RPMValue yBins = sparkDwellValues gauge = RPMGauge curve = map_samplingAngleCurve, "MAP Sampling Start Angle" columnLabel = "RPM", "Angle" xAxis = 0, 8000, 10 yAxis = 0, 180, 10 xBins = map_samplingAngleBins, RPMValue yBins = map_samplingAngle gauge = MAPGauge curve = map_samplingWindowCurve, "MAP Sampling Duration" columnLabel = "RPM", "Window" xAxis = 0, 8000, 10 yAxis = 0, 180, 10 xBins = map_samplingWindowBins, RPMValue yBins = map_samplingWindow gauge = MAPGauge curve = injectorsDeadTime, "Injector Dead Time by VBatt" columnLabel = "Voltage", "Dead Time" xAxis = 8, 21, 10 yAxis = -3, 3, 10 xBins = injector_battLagCorrBins, VBatt yBins = injector_battLagCorr gauge = VBattGauge curve = mafDecodingCurve, "MAF sensor" columnLabel = "Voltage", "kg/hour" xAxis = -1, 6, 10 yAxis = -30, 1300, 10 xBins = mafDecodingBins, MAFValue yBins = mafDecoding gauge = MAFGauge curve = iatFuelCorrCurve, "Intake air temperature fuel Multiplier" columnLabel = "Coolant", "Multiplier" #if CELSIUS xAxis = -40, 120, 10 #else xAxis = -40, 250, 10 #endif yAxis = 0, 2, 11 xBins = iatFuelCorrBins, intake yBins = iatFuelCorr gauge = IATGauge curve = cltTimingCorrCurve, "Warmup timing correction" columnLabel = "Coolant", "Extra" #if CELSIUS xAxis = -40, 120, 10 #else xAxis = -40, 250, 10 #endif yAxis = 0, 50, 10 xBins = cltTimingBins, coolant yBins = cltTimingExtra gauge = CLTGauge curve = cltFuelCorrCurve, "Warmup fuel manual Multiplier" columnLabel = "Coolant", "Multiplier" #if CELSIUS xAxis = -40, 100, 10 #else xAxis = -40, 210, 10 #endif yAxis = 0, 3, 10 xBins = cltFuelCorrBins, coolant yBins = cltFuelCorr gauge = CLTGauge curve = crankingCltCurve, "Cranking Coolant Temperature Multiplier" columnLabel = "Coolant", "Multiplier" #if CELSIUS xAxis = -40, 100, 10 #else xAxis = -40, 210, 10 #endif yAxis = 0, 3, 10 xBins = crankingFuelBins, coolant yBins = crankingFuelCoef gauge = CLTGauge curve = etbTpsBiasCurve, "Electronic TB Bias Curve" columnLabel = "TPS", "duty bias" xAxis = 0, 100, 10 yAxis = 0, 100, 10 xBins = etbBiasBins, TPSValue yBins = etbBiasValues gauge = TPSGauge curve = crankingTpsCurve, "Cranking TPS Multiplier" columnLabel = "TPS", "Multiplier" xAxis = 0, 100, 10 yAxis = 0, 3, 10 xBins = crankingTpsBins, TPSValue yBins = crankingTpsCoef gauge = TPSGauge curve = crankingDurationCurve, "Cranking Duration Multiplier" columnLabel = "Engine Cycle", "Multiplier" xAxis = 0, 1000, 10 yAxis = 0, 3, 10 xBins = crankingCycleBins yBins = crankingCycleCoef curve = cltIdleCurve, "Warmup Idle multiplier" columnLabel = "Coolant", "Multiplier" #if CELSIUS xAxis = -40, 120, 10 #else xAxis = -40, 250, 10 #endif yAxis = 0, 3, 10 xBins = cltIdleCorrBins, coolant yBins = cltIdleCorr gauge = CLTGauge curve = iacCoastingCurve, "Coasting IAC Position for Auto-Idle" columnLabel = "Coolant", "Multiplier" #if CELSIUS xAxis = -40, 120, 10 #else xAxis = -40, 250, 10 #endif yAxis = 0, 100, 10 xBins = iacCoastingBins, coolant yBins = iacCoasting gauge = idleAirValvePositionGauge curve = cltCrankingCurve, "Cranking Idle Air multiplier" columnLabel = "Coolant", "Multiplier" #if CELSIUS xAxis = -40, 120, 10 #else xAxis = -40, 250, 10 #endif yAxis = 0, 3, 10 xBins = cltCrankingCorrBins, coolant yBins = cltCrankingCorr gauge = CLTGauge curve = cltIdleRPMCurve, "Idle Target RPM" columnLabel = "Coolant", "RPM" #if CELSIUS xAxis = -40, 120, 10 #else xAxis = -40, 250, 10 #endif yAxis = 0, 8000, 10 xBins = cltIdleRpmBins, coolant yBins = cltIdleRpm, RPMValue gauge = CLTGauge curve = idleAdvanceCurve, "Idle Advance Angle" columnLabel = "RPM", "degrees" xAxis = 0, 8000, 10 yAxis = -100, 100, 10 xBins = idleAdvanceBins, RPMValue yBins = idleAdvance gauge = RPMGauge curve = idleVeCurve, "Idle VE" columnLabel = "RPM", "%" xAxis = 0, 8000, 10 yAxis = 0, 250, 10 xBins = idleVeBins, RPMValue yBins = idleVe gauge = afr1Gauge curve = crankingAdvanceCurve, "Cranking Advance Angle" columnLabel = "RPM", "degrees" xAxis = 0, 8000, 10 yAxis = -100, 100, 10 xBins = crankingAdvanceBins, RPMValue yBins = crankingAdvance gauge = RPMGauge curve = wueAfrTargetOffsetCurve, "AFR Target Temperature Adjustment" columnLabel = "Coolant", "AFR Offset" #if CELSIUS xAxis = -40, 200, 9 #else xAxis = -40, 400, 9 #endif yAxis = -3, 1, 5 xBins = cltFuelCorrBins, coolant yBins = wueAfrTargetOffset gauge = cltGauge curve = wueAnalyzer_warmup_curve, "Warmup Enrichment" columnLabel = "Coolant", "Current WUE", "Coolant", "Corrected" #if CELSIUS xAxis = -40, 200, 9 #else xAxis = -40, 400, 9 #endif yAxis = 90, 500, 6 xBins = cltFuelCorrBins, coolant yBins = cltFuelCorr yBins = wueAnalRecommend ;gauge = cltGauge lineLabel = "Warmup Correction" lineLabel = "Recommended WUE" [TableEditor] ; table_id, map3d_id, "title", page table = fuelTableMAFTbl, fuelTableMAFMap, "Fuel Table", 1 topicHelp = "fuelHelp" ; constant, variable xBins = fuelRpmBins, RPMValue yBins = fuelLoadBins, MAFValue zBins = fuelTable ; gridHeight = 2.0 gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. upDownLabel = "(RICHER)", "(LEANER)" table = fuelTableTPSTbl, fuelTableTPSMap, "Fuel Table", 1 topicHelp = "fuelHelp" ; constant, variable xBins = fuelRpmBins, RPMValue yBins = fuelLoadBins, TPSValue zBins = fuelTable ; gridHeight = 2.0 gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. upDownLabel = "(RICHER)", "(LEANER)" table = fuelTableELTbl, fuelTableELMap, "Fuel Table", 1 topicHelp = "fuelHelp" ; constant, variable xBins = fuelRpmBins, RPMValue yBins = fuelLoadBins, engineLoad zBins = fuelTable ; gridHeight = 2.0 gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. upDownLabel = "(RICHER)", "(LEANER)" ; move table into a panel? or find a way to add a link to https://rusefi.com//wiki/index.php?title=Manual:Software:TPSTPS table = tpsTpsAccelTbl, tpsTpsAccelMap, "TPS/TPS Acceleration Extra Fuel(ms)", 1 topicHelp = "tpstpsHelp" xBins = tpsTpsAccelFromRpmBins, TPSValue yBins = tpsTpsAccelToRpmBins, TPSValue zBins = tpsTpsAccelTable table = fsioTable1Tbl, fsioTable1Map, "FSIO Table #1", 1 xBins = fsioTable1RpmBins, RPMValue yBins = fsioTable1LoadBins, engineLoad zBins = fsioTable1 table = fsioTable2Tbl, fsioTable2Map, "FSIO Table #2", 1 xBins = fsioTable2RpmBins, RPMValue yBins = fsioTable2LoadBins, engineLoad zBins = fsioTable2 table = fsioTable3Tbl, fsioTable3Map, "FSIO Table #3", 1 xBins = fsioTable3RpmBins, RPMValue yBins = fsioTable3LoadBins, engineLoad zBins = fsioTable3 table = fsioTable4Tbl, fsioTable4Map, "FSIO Table #4", 1 xBins = fsioTable4RpmBins, RPMValue yBins = fsioTable4LoadBins, engineLoad zBins = fsioTable4 table = baroCorrTbl, baroCorrMap, "Baro Correction", 1 ; constant, variable xBins = baroCorrRpmBins, RPMValue yBins = baroCorrPressureBins, baroPressure zBins = baroCorrTable ; gridHeight = 2.0 gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. upDownLabel = "(RICHER)", "(LEANER)" table = ignitionTableTbl, ignitionTableMap, "Ignition Table", 1 ; constant, variable xBins = ignitionRpmBins, RPMValue #if FA_PLAIN_MAF yBins = ignitionLoadBins, MAFValue #elif FA_TPS yBins = ignitionLoadBins, TPSValue #else yBins = ignitionLoadBins, engineLoad #endif zBins = ignitionTable ; gridHeight = 2.0 gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. upDownLabel = "(RICHER)", "(LEANER)" table = ignitionTpsTableTbl, ignitionTableMap, "Ignition TPS Table", 1 ; constant, variable ; Currently we share ignitionRpmBins between two advance tables... Is it ok? xBins = ignitionRpmBins, RPMValue yBins = ignitionTpsBins, TPSValue zBins = ignitionTpsTable gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. upDownLabel = "(RICHER)", "(LEANER)" table = ignitionIatCorrTableTbl, ignitionIatCorrTableMap, "Ignition Intake Air Temp correction", 1 ; constant, variable xBins = ignitionIatCorrRpmBins, RPMValue yBins = ignitionIatCorrLoadBins, intake zBins = ignitionIatCorrTable ; gridHeight = 2.0 gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. upDownLabel = "(RICHER)", "(LEANER)" table = veTableTbl, veTableMap, "VE Table", 1 ; constant, variable xBins = veRpmBins, RPMValue #if tuneByTPS yBins = ignitionTpsBins, TPSValue #else yBins = veLoadBins, MAPValue #endif zBins = veTable ; gridHeight = 2.0 gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. upDownLabel = "(RICHER)", "(LEANER)" table = injPhaseTableTbl, injPhaseTableMap, "Injection Phase", 1 topicHelp = "fuelHelp" ; constant, variable xBins = injPhaseRpmBins, RPMValue yBins = injPhaseLoadBins, engineLoad zBins = injectionPhase ; gridHeight = 2.0 gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. upDownLabel = "(Later)", "(Sooner)" table = pedalToTpsTbl, pedalToTpsMap, "ETB Pedal to TPS", 1 ; constant, variable xBins = pedalToTpsRpmBins, RPMValue yBins = pedalToTpsPedalBins, throttlePedalPosition zBins = pedalToTpsTable ; gridHeight = 2.0 gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. upDownLabel = "(Later)", "(Sooner)" table = afrTableTbl, afrTableMap, "Target AFR Table", 1 ; constant, variable xBins = afrRpmBins, RPMValue yBins = afrLoadBins, MAPValue zBins = afrTable ; gridHeight = 2.0 gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. upDownLabel = "(RICHER)", "(LEANER)" [GaugeConfigurations] gaugeCategory = Sensors - Extra 2 egt1Gauge = egt1, "EGT#1", "C", 0, 2000 egt2Gauge = egt2, "EGT#2", "C", 0, 2000 egt3Gauge = egt3, "EGT#3", "C", 0, 2000 egt4Gauge = egt4, "EGT#4", "C", 0, 2000 egt5Gauge = egt5, "EGT#5", "C", 0, 2000 egt6Gauge = egt6, "EGT#6", "C", 0, 2000 egt7Gauge = egt7, "EGT#7", "C", 0, 2000 egt8Gauge = egt8, "EGT#8", "C", 0, 2000 rpmAccelerationGa = rpmAcceleration, "rpm delta", "dRpm", 0, 3, 0, 1, 3, 4, 1, 1 knockCountGauge = knockCount,"Knock count", "count", 0, 120, 10, 10, 100, 100, 1, 1 knockLevelGauge = knockLevel,"Knock level", "volts", 0, 7, 10, 10, 100, 100, 1, 2 fuelTankLevelGauge = fuelTankLevel,"Fuel level", "x", 0, 7, 10, 10, 100, 100, 1, 2 speedToRpmRatioGauge = speedToRpmRatio, "speed2rpm", "", 0, 100, 0, 0, 100, 100, 4, 4 gaugeCategory = ECU Status warningCounterGauge = warningCounter, "Warning count", "", 0, 100, 0, 0, 100, 100, 0, 0 lastErrorCodeGauge = lastErrorCode, "Last error", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 triggerErrorsCounterGauge = triggerErrorsCounter, "Trigger error count", "count", 0, 15000, 0, 0, 6000, 6000, 0, 0 recentErrorCode0Gauge = recentErrorCode0, "Error#1", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 recentErrorCode1Gauge = recentErrorCode1, "Error#2", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 recentErrorCode2Gauge = recentErrorCode2, "Error#3", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 recentErrorCode3Gauge = recentErrorCode3, "Error#4", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 recentErrorCode4Gauge = recentErrorCode4, "Error#5", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 recentErrorCode5Gauge = recentErrorCode5, "Error#6", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 recentErrorCode6Gauge = recentErrorCode6, "Error#7", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 recentErrorCode7Gauge = recentErrorCode7, "Error#8", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 firmwareVersionGauge = firmwareVersion , "ECU Software Version", "%", 0, 100, 0, 0, 100, 100, 0, 0 timeSecondsGauge = timeSeconds, "Uptime", "sec", 0, 100, 0, 0, 100, 100, 0, 0 gaugeCategory = Debug debugFloatField1Gauge = debugFloatField1, "debug f1", "%", 0, 100, 0, 0, 100, 100, 4, 4 debugFloatField2Gauge = debugFloatField2, "debug f2: iTerm", "%", -100, 100, 0, 0, 100, 100, 4, 4 debugFloatField3Gauge = debugFloatField3, "debug f3: prevError", "%", -100, 100, 0, 0, 100, 100, 4, 4 debugFloatField4Gauge = debugFloatField4, "debug f4: iParam", "%", 0, 100, 0, 0, 100, 100, 4, 4 debugFloatField5Gauge = debugFloatField5, "debug f5: dParam", "%", 0, 100, 0, 0, 100, 100, 4, 4 debugFloatField6Gauge = debugFloatField6, "debug f6: dTerm", "%", -100, 100, 0, 0, 100, 100, 4, 4 debugFloatField7Gauge = debugFloatField7, "debug f7", "%", 0, 100, 0, 0, 100, 100, 4, 4 debugIntField1Gauge = debugIntField1, "debug i1: pParam", "%", 0, 100, 0, 0, 100, 100, 0, 0 debugIntField2Gauge = debugIntField2, "debug i2: offset", "%", 0, 100, 0, 0, 100, 100, 0, 0 debugIntField3Gauge = debugIntField3, "debug i3", "%", 0, 100, 0, 0, 100, 100, 0, 0 debugIntField4Gauge = debugIntField4, "debug i4", "%", 0, 100, 0, 0, 100, 100, 0, 0 debugIntField5Gauge = debugIntField5, "debug i5", "%", 0, 100, 0, 0, 100, 100, 0, 0 gaugeCategory = Sensors - Basic RPMGauge = RPMValue, "RPM - engine speed", "RPM", 0, 15000, 200, 500, 6000, 6000, 0, 0 #if CELSIUS CLTGauge = coolant, "Coolant temp", "deg C", -40, 140, -15, 1, 95, 110, 1, 1 #else CLTGauge = coolant, "Coolant temp", "deg F", -40, 285, 5, 35, 205, 230, 1, 1 #endif #if CELSIUS IATGauge = intake, "Intake air temp", "deg C", -40, 140, -15, 1, 95, 110, 1, 1 #else IATGauge = intake, "Intake air temp", "deg F", -40, 285, 5, 35, 205, 230, 1, 1 #endif afr1Gauge = AFRValue, "Air fuel ratio", "", 10, 19.4, 12, 13, 15, 16, 2, 2 MAFGauge = MAFValue, "Mass air flow", "v", 0, 5, 0, 1, 3, 4, 1, 1 VBattGauge = VBatt, "Battery voltage", "V", 8, 21, 9, 10, 17, 19, 1, 1 MAPGauge = MAPValue, "MAP", "kPa", 0, 300, 10, 10, 200, 200, 0, 0 massAirFlowValueGa = massAirFlowValue,"Mass air flow", "kg/hr", 0, 50, -999, -999, 999, 999, 1, 1 gaugeCategory = Sensors - Extra 1 VSSGauge = vehicleSpeedKph, "Vehicle speed", "kmh", 0, 200, 0, 1, 3, 4, 1, 1 accelerationXGauge = accelerationX, "Acceleration: X", "acc", -11, 11, 1.0, 1.2, 100, 100, 3, 1 accelerationYGauge = accelerationY, "Acceleration: Y", "acc", -11, 11, 1.0, 1.2, 100, 100, 3, 1 atmPresCGauge = baroPressure, "Barometric pressure", "kPa", 0, 1024, 0, 0, 0, 0, 0, 0 vvtPositionGauge = vvtPosition, "VVT position", "deg", 0, 100, 0, 0, 720, 720, 0, 0 internalMcuTemperatureGauge = internalMcuTemperature, "ECU temperature", "C", 0, 100, 0, 0, 75, 100, 0, 0 OilPressGauge = oilPressure, "Oil Pressure", "kPa", 0, 750, 35, 75, 550, 700, 0, 0 idleAirValvePositionGauge = idleAirValvePosition, "Idle position", "%", 0, 100, 0, 0, 100, 100, 1, 1 gaugeCategory = Ignition ignadvGauge = ignitionAdvance, "Ignition timing", "degrees", -100, 100, -999, -999, 999, 999, 1, 1 dwellGauge = sparkDwellValue, "Dwell", "mSec", 0, 10, 0.5, 1.0, 6.0, 8.0, 1, 1 coilDutyCycleGauge = coilDutyCycle, "dwell: coil duty cycle", "perc", -11, 11, 1.0, 1.2, 100, 100, 3, 1 gaugeCategory = Acceleration Enrichment engineLoadDeltaGauge = engineLoadDelta,"AE: load change","value", 0, 120, 10, 10, 100, 100, 1, 1 engineLoadAccelExtraGauge = engineLoadAccelExtra,"AE: load extra","value", 0, 120, 10, 10, 100, 100, 1, 1 deltaTpsGauge = deltaTps, "AE: TPS change", "", 0, 120, 10, 10, 100, 100, 1, 1 tpsAccelFuelGauge = tpsAccelFuel,"AE: TPS enrich", "ms", 0, 120, 10, 10, 100, 100, 1, 1 wallFuelAmountGauge = wallFuelAmount, "AE: wall amount", "ms", 0, 100, 0, 0, 100, 100, 0, 0 wallFuelCorrectionGauge = wallFuelCorrection, "AE: wall correction extra", "ms", 0, 100, 0, 0, 100, 100, 0, 0 gaugeCategory = Fueling ;Name Var Title Units Lo Hi LoD LoW HiW HiD vd ld #if CELSIUS tChargeGauge = tCharge, "fuel: Estimated charge temperature", "deg C", -40, 140, -15, 1, 95, 110, 1, 1 #else tChargeGauge = tCharge, "fuel: Estimated charge temperature", "deg F", -40, 285, 5, 35, 205, 230, 1, 1 #endif baroCorrectionGauge = baroCorrection,"fuel: Barometric pressure correction", "ratio", 0.5, 1.5, 0.6, 0.7, 1.3, 1.4, 1, 1 crankingFuelGauge = crankingFuelMs, "fuel: cranking", "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1 iatCorrectionGauge = iatCorrection, "fuel: IAT correction", "mult", 0, 3, 0, 0, 3, 3, 2, 2 cltCorrectionGauge = cltCorrection, "fuel: CLT correction", "mult", 0, 3, 0, 0, 3, 3, 2, 2 injectorDutyCycleGauge=injectorDutyCycle, "fuel: injector duty cycle","%", 0, 120, 10, 10, 100, 100, 1, 1 actualLastInjectionGauge = actualLastInjection, "fuel: Last injection", "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1 veValueGauge = veValue, "fuel: VE", "", 0, 120, 10, 10, 100, 100, 1, 1 injectorLagMsGauge = injectorLagMs, "fuel: injector lag", "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1 fuelRunningGauge = fuelRunning, "fuel: running", "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1 baseFuelGauge = baseFuel, "fuel: base", "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1 fuelPidCorrectionGauge = fuelPidCorrection, "fuel: Short-term closed loop correction", "mSec", -11, 11, 1.0, 1.2, 20, 25, 3, 1 gaugeCategory = Throttle Body (incl. ETB) pedalPositionGauge = throttlePedalPosition, "Throttle pedal position", "%", 0, 120, 0, 0, 100, 100, 1, 1 tpsADCGauge = tpsADC, "tps1 ADC", "ADC", 0, 1024, 0, 0, 0, 0, 0, 0 TPSGauge = TPSValue, "Throttle position", "%", 0, 100, 0, 0, 100, 100, 1, 1 etbTargetGauge = etbTarget, "ETB position target", "%", 0, 100, 0, 0, 100, 100, 1, 1 etbErrorGauge = etb1Error, "ETB position error", "%", -20, 20, -10, -5, 5, 10, 2, 0 etbDutyCycleGauge = etb1DutyCycle, "ETB duty cycle", "%", -100, 100, -75, -50, 50, 75, 0, 0 [WueAnalyze] ; wueCurveName, afrTempCompensationCurve, lambdaTargetTableName, lambdaChannel, coolantTempChannel, egoCorrectionChannel, wueChannel, activeCondition wueAnalyzeMap = wueAnalyzer_warmup_curve, wueAfrTargetOffsetCurve, afrTableTbl, AFRValue, coolant, cltCorrection, egoCorrection lambdaTargetTables = afrTableTbl, afrTSCustom wuePercentOffset = 0 ; for working with 0 based enrichment set to 100 option = disableLiveUpdates option = burnOnSend ; filter = std_DeadLambda ; Auto build filter = decelFilterMap,"After Start Enrich", engine, & , 4 , , false filter = accelFilterTp, "TP Accel Enrich" , engine, & , 16, , false filter = decelFilterTp, "TP Decel Enrich" , engine, & , 32, , false filter = accelFilterMap,"MAP Accel Enrich" , engine, & , 64, , false filter = decelFilterMap,"MAP Decel Enrich" , engine, & , 128, , false ; this works, just another way to skin a cat ;filter = decelFilter, "Decel Flag" , tpsaccden, > , 0, , false filter = overrunFilter, "Overrun" , pulseWidth1, = , 0, , false filter = highThrottle, "High Throttle" , throttle, > , 15, , true filter = lowRpm, "Low RPM" , rpm, < , 300, , false filter = std_Custom ; Standard Custom Expression Filter. [FrontPage] ; Gauges are numbered left to right, top to bottom. ; ; 1 2 3 4 ; 5 6 7 8 ; currently a minimum of 6 gauges must be on the dash, this appears to be an old not needed limitation. next release 1 will work. gauge1 = RPMGauge gauge2 = CLTGauge gauge3 = TPSGauge gauge4 = MAFGauge gauge5 = afr1Gauge gauge6 = VBattGauge gauge7 = dwellGauge gauge8 = ignadvGauge ; = expression, off-label, on-label, off-bg, off-fg, on-bg, on-fg ; important status indicator = { ind_hasFatalError }, "", "FATAL ERROR", green, black, red, black indicator = { firmwareTsVersion == fileVersion }, "WRONG VERSION", "version", red, black, green, black indicator = { ind_isWarnNow }, "", "warn", green, black, red, black indicator = { ind_check_engine }, "ok", "Check engine", green, black, red, black indicator = { isIgnitionEnabledIndicator}, "no ignition", "ignition", red, black, green, black indicator = { ind_injection_enabled}, "no injection", "injection", red, black, green, black indicator = { ind_isTriggerError}, "ok", "trg err", green, black, red, black ; minor info indicator = { ind_fan}, "no fan", "fan", white, black, green, black indicator = { isCylinderCleanupActivated}, "no cyl cleanup", "cyl cleanup", white, black, green, black indicator = { needBurn }, "config ok", "unsaved changes", white, black, yellow, black indicator = { hasSdCard}, "no SD", "with SD", white, black, green, black indicator = { ind_fuel_pump}, "no pump", "pump", white, black, green, black indicator = { clutchUpState }, "clutch", "cltch Up", white, black, red, black indicator = { clutchDownState }, "clutch", "cltch Down", white, black, yellow, black indicator = { brakePedalIndicator }, "brake", "brake down", white, black, red, black indicator = { acSwitchIndicator }, "AC on", "AC off", yellow, black, white, black ; error codes indicator = { ind_tps_error}, "tps", "tps error", white, black, red, black indicator = { ind_clt_error}, "clt", "clt error", white, black, red, black indicator = { ind_iat_error}, "iat", "iat error", white, black, red, black indicator = { ind_map_error}, "map", "map error", white, black, red, black indicator = { knockEverIndicator }, "", "Knock recently", white, black, red, black indicator = { knockNowIndicator }, "no knock", "Knock NOW", white, black, red, black [Datalog] ; Channel Label Type Format entry = time, "Time", float, "%.3f" entry = RPMValue, "RPM", int, "%d" entry = firmwareVersion, "firmware", int, "%d" entry = coolant, "CLT", float, "%.2f" entry = intake, "IAT", float, "%.2f" entry = oilPressure, "Oil Press", float, "%.1f" entry = TPSValue, "TPS", float, "%.2f" entry = MAFValue, "MAF", float, "%.2f" entry = MAPValue, "MAP", float, "%.1f" entry = AFRValue, "Air/Fuel Ratio", float, "%.2f" entry = VBatt, "VBatt", float, "%.2f" entry = engineLoad, "Engine Load", float, "%.1f" entry = ignitionAdvance, "timing", float, "%.2f" entry = knockLevel, "knock: current level", float, "%.2f" entry = knockCount, "knock: counter", int, "%d" entry = vehicleSpeedKph, "Vehicle Speed", float, "%.2f" entry = speedToRpmRatio, "s2rpm", float, "%.3f" entry = rpmAcceleration, "dRPM", float, "%.3f" entry = massAirFlowValue,"air flow", float, "%.3f" entry = chargeAirMass, "air mass", float, "%.3f" entry = throttlePedalPosition, "Throttle pedal position", float, "%.3f" entry = triggerErrorsCounter, "trg err",int, "%d" entry = idleAirValvePosition, "Idle Air Valve", float, "%.3f" entry = injectorLagMs, "fuel: injector lag", float, "%.3f" entry = fuelRunning, "fuel: running", float, "%.3f" entry = actualLastInjection, "fuel: Last injection", float, "%.3f" entry = baseFuel, "fuel: base", float, "%.2f" entry = fuelPidCorrection,"fuel: Short-term closed loop correction", float, "%.2f" entry = veValue, "fuel: VE", float, "%.3f" entry = injectorDutyCycle,"fuel: injector duty cycle",float,"%.3f" entry = coilDutyCycle, "dwell: coil duty cycle", float,"%.3f" entry = currentTargetAfr,"fuel: target AFR", float,"%.3f" entry = accelerationX, "Acceleration: X", float,"%.2f" entry = accelerationY, "Acceleration: Y", float,"%.2f" entry = egt1, "EGT1", float,"%.1f" entry = egt2, "EGT2", float,"%.1f" entry = egt3, "EGT3", float,"%.1f" entry = egt4, "EGT4", float,"%.1f" entry = egt5, "EGT5", float,"%.1f" entry = egt6, "EGT6", float,"%.1f" entry = egt7, "EGT7", float,"%.1f" entry = egt8, "EGT8", float,"%.1f" entry = engineLoadAccelExtra, "fuel: engine load acceleration extra fuel",float, "%.3f" entry = engineLoadDelta, "fuel: load change",float, "%.3f" entry = deltaTps, "fuel: TPS change",float, "%.3f" entry = tpsAccelFuel, "fuel: TPS acceleration extra fuel ms", float, "%.3f" entry = wallFuelCorrection,"fuel: wall corr ms", float, "%.3f" entry = wallFuelAmount, "fuel: wall amount", float, "%.3f" entry = baroCorrection, "fuel: Barometric pressure correction",float,"%.3f" entry = iatCorrection, "fuel: IAT correction", float, "%.3f" entry = cltCorrection, "fuel: CLT correction", float,"%.3f" entry = sparkDwellValue, "dwell: coil charge time", float,"%.3f" entry = vvtPosition, "VVT position", float,"%.2f" entry = injectionOffset, "injOffset" , float, "%.2F" ; is there a way to log parameter? entry = debugMode, "debugMode",int,"%d" ; Alternator_PID: alternator duty cycle ; DBG_TPS_ACCEL: from TPS entry = debugFloatField1, "debug f1",float,"%.4f" ; Alternator_PID: current integration term ; DBG_TPS_ACCEL: to TPS entry = debugFloatField2, "debug f2: iTerm",float,"%.4f" ; Alternator_PID: previous error ; DBG_TPS_ACCEL: tps<>tps table value entry = debugFloatField3, "debug f3: prevError",float,"%.4f" ; Alternator_PID: I setting ; DBG_TPS_ACCEL: extra fuel entry = debugFloatField4, "debug f4: iParam",float,"%.4f" ; Alternator_PID: D setting entry = debugFloatField5, "debug f5: dParam",float,"%.4f" ; Alternator_PID: dTerm entry = debugFloatField6, "debug f6: dTerm",float,"%.4f" entry = debugFloatField7, "debug f7",float,"%.4f" ; Alternator_PID: P setting entry = debugIntField1, "debug i1: pParam",int,"%d" ; Alternator_PID: offset setting entry = debugIntField2, "debug i2: offset",int,"%d" ; Alternator_PID: PID reset counter entry = debugIntField3, "debug i3",int,"%d" entry = debugIntField4, "debug i4",int,"%d" entry = debugIntField5, "debug i5",int,"%d" entry = engineMode, "Engine Mode",int,"%d" entry = warningCounter, "warning: counter",int,"%d" entry = lastErrorCode, "warning: last",int,"%d" entry = recentErrorCode0, "error 0",int,"%d" entry = recentErrorCode1, "error 1",int,"%d" entry = recentErrorCode2, "error 2",int,"%d" entry = recentErrorCode3, "error 3",int,"%d" entry = recentErrorCode4, "error 4",int,"%d" entry = recentErrorCode5, "error 5",int,"%d" entry = recentErrorCode6, "error 6",int,"%d" entry = recentErrorCode7, "error 7",int,"%d" entry = internalMcuTemperature, "CPU Temperature",float,"%.2f" entry = tCharge, "tCharge",float,"%.3f" entry = clutchUpState, "clutch: up",int,"%d" entry = clutchDownState, "clutch: down",int,"%d" entry = brakePedalIndicator, "brake: down",int,"%d" entry = acSwitchIndicator, "AC switch",int,"%d" entry = ind_fan, "radiator fan",int,"%d" ; Electronic throttle body entry = etb1Error, "ETB Error", float, "%.3f" entry = etb1DutyCycle, "ETB Duty", float, "%.3f" entry = etbTarget, "ETB Target", float, "%.3f" ; tpsADC = U16, "ADC", ; alignmet = U16, "al", ; atmPres = F32, "pres", ; crankingFuel = F32, "ms", ; tCharge = F32, "T", ; sparkDwell = F32, "MAP", ; warmUpEnrich = F32, "%", [Menu] menuDialog = main menu = "&Base &Engine" subMenu = engineChars, "Base engine" subMenu = triggerConfiguration, "Trigger" subMenu = std_separator subMenu = energySystems, "Battery and alternator" subMenu = std_separator # Digital outputs subMenu = mainRelay, "Main relay" subMenu = starterRelay, "Starter relay" subMenu = fuelPump, "Fuel rail" subMenu = fanSetting, "Fan" subMenu = tachSettings, "Tachometer" subMenu = malfunction, "Check engine light" subMenu = statusLeds, "Status LEDs" menu = "Fuel" # basic subMenu = injectionSettings, "Injection settings" subMenu = injectionDeadTime, "Injector dead time", 0, {isInjectionEnabled == 1} subMenu = std_separator # Targets & closed loop subMenu = afrTableTbl, "Target AFR", 0, {isInjectionEnabled == 1 && fuelAlgorithm == LM_SPEED_DENSITY} subMenu = fuelClosedLoopDialog, "Closed loop correction", 0, {isInjectionEnabled == 1} subMenu = coastingFuelCutControl, "Deceleration fuel cutoff (DFCO)", 0, {isInjectionEnabled == 1} subMenu = std_separator # Fuel table/VE subMenu = fuelTableDialog, "Fuel table", 0, {isInjectionEnabled == 1 && fuelAlgorithm != LM_SPEED_DENSITY} subMenu = veTableDialog, "VE", 0, {isInjectionEnabled == 1 && fuelAlgorithm == LM_SPEED_DENSITY} subMenu = injPhaseTableTbl, "Injection phase", 0, {isInjectionEnabled == 1} subMenu = std_separator # Corrections subMenu = cltFuelCorrCurve, "CLT multiplier", 0, {isInjectionEnabled == 1} subMenu = iatFuelCorrCurve, "IAT multiplier", 0, {isInjectionEnabled == 1} subMenu = baroCorrTbl, "Baro multiplier", 0, {isInjectionEnabled == 1 && fuelAlgorithm == LM_SPEED_DENSITY} subMenu = tChargeSettings, "tCharge settings", 0, {isInjectionEnabled == 1} subMenu = std_separator # Accel enrichment subMenu = AccelEnrich, "Accel/decel enrichment/enleanment", 0, {isInjectionEnabled == 1} subMenu = tpsTpsAccelTbl, "TPS/TPS acceleration extra fuel", 0, {isInjectionEnabled == 1} subMenu = mapAccelTaper, "Engine load AE taper", 0, {isInjectionEnabled == 1} menu = "Ignition" subMenu = ignitionSettings, "Ignition settings" subMenu = std_separator subMenu = dwellSettings, "Dwell", 0, {isIgnitionEnabled == 1} subMenu = ignitionCylExtra, "Ignition cylinder trim", 0, {isIgnitionEnabled == 1} subMenu = std_separator subMenu = ignitionTableTbl, "Ignition advance", 0, {isIgnitionEnabled == 1 && useTPSAdvanceTable == 0} subMenu = ignitionTpsTableTbl, "Ignition advance (TPS)", 0, {isIgnitionEnabled == 1 && useTPSAdvanceTable == 1} subMenu = std_separator # corrections subMenu = cltTimingCorrCurve, "CLT correction", 0, {isIgnitionEnabled == 1} subMenu = ignitionIatCorrTableTbl, "IAT correction", 0, {isIgnitionEnabled == 1} menu = "&Cranking" subMenu = crankingDialog, "Cranking settings" subMenu = std_separator subMenu = crankingCltCurve, "Fuel CLT multiplier" subMenu = crankingDurationCurve, "Fuel duration multiplier" subMenu = crankingTpsCurve, "Fuel TPS multiplier" subMenu = std_separator subMenu = crankingAdvanceCurve, "Ignition advance", 0, {useSeparateAdvanceForCranking == 1} subMenu = std_separator subMenu = cltCrankingCurve, "IAC multiplier", 0, {overrideCrankingIacSetting == 1} menu = "&Idle" subMenu = idleSettings, "Idle settings" subMenu = idlehw, "Idle hardware" subMenu = std_separator subMenu = cltIdleRPMCurve, "Target RPM", 0, {idleMode == 0} subMenu = idleVeCurve, "VE", 0, {useSeparateVeForIdle == 1} subMenu = idleAdvanceCurve, "Ignition advance", 0, {useSeparateAdvanceForIdle == 1} subMenu = std_separator subMenu = idleTimingPidCorrDialog, "Closed-loop idle timing" subMenu = cltIdleCurve, "CLT multiplier" subMenu = iacCoastingCurve, "Coasting IAC Position for Auto-Idle", 0, {useIacTableForCoasting == 1} menu = "&FSIO" subMenu = fsioInputsDialog, "FSIO inputs" subMenu = auxPidDialog, "Aux PID" subMenu = fsioOutputsDialog, "FSIO outputs" subMenu = fsioTable1Tbl, "FSIO Table #1" subMenu = fsioTable2Tbl, "FSIO Table #2" subMenu = fsioTable3Tbl, "FSIO Table #3" subMenu = fsioTable4Tbl, "FSIO Table #4" subMenu = fsioFormulas, "FSIO Formulas" subMenu = fsioCurve1, "FSIO Curve #1" subMenu = fsioCurve2, "FSIO Curve #2" subMenu = fsioCurve3, "FSIO Curve #3" subMenu = fsioCurve4, "FSIO Curve #4" menu = "&Sensors" # Base analog input settings subMenu = triggerInputs, "Trigger inputs" subMenu = otherSensorInputs, "Misc sensors" subMenu = analogInputSettings, "Analog input settings" subMenu = std_separator # Thermistors subMenu = cltSensor, "CLT sensor" subMenu = iatSensor, "IAT sensor" subMenu = auxTempSensor1Sensor, "AuxTemp1 sensor" subMenu = auxTempSensor2Sensor, "AuxTemp2 sensor" subMenu = std_separator # TPS/pedal subMenu = tpsSensor, "TPS" subMenu = pedalSensor, "Accelerator pedal" subMenu = std_separator # MAP/Baro subMenu = mapSettings, "MAP sensor" subMenu = mapCurves, "MAP sampling" subMenu = baroSettings, "Baro sensor" subMenu = std_separator # MAF subMenu = mafSettings, "MAF sensor" subMenu = mafDecodingCurve, "MAF transfer function", 0, {mafAdcChannel != 16} subMenu = std_separator # O2 sensor(s) subMenu = egoSettings, "EGO sensor" subMenu = narrowToWideOxygenCurve, "Narrow to Wideband approximation" subMenu = cj125Function, "CJ125 settings (wbo decoder)" subMenu = std_separator # Misc sensors subMenu = speedSensor, "Vehicle speed sensor" subMenu = oilPressureSensor, "Oil pressure" subMenu = egtInputs, "EGT" menu = "&Controller" subMenu = ecuStimulator, "ECU stimulator" subMenu = ioTest, "Bench test" subMenu = engineTypeDialog, "Popular vehicles" subMenu = std_separator subMenu = lcdScreen, "LCD" subMenu = joystickPanel, "Joystick" subMenu = spiFunction, "SPI" subMenu = monitoringSettings, "rusEfi console" subMenu = std_separator subMenu = connection, "Connection" subMenu = allPins1, "Full pinout 1/2" subMenu = allPins2, "Full pinout 2/2" subMenu = std_separator # EXPERIMENTAL FEATURES subMenu = parkingLot, "Experimental/Broken" subMenu = smLaunchControl, "Launch control" subMenu = std_separator subMenu = hipFunction, "HIP9011 settings (knock sensor) (alpha version)" subMenu = std_separator subMenu = etbDialog, "Electronic throttle body (beta version)" subMenu = etbTpsBiasCurve, "Electronic throttle body bias curve" subMenu = pedalToTpsTbl, "Electronic Pedal Map" [ControllerCommands] ; commandName = command1, command2, commandn... ; command in standard ini format, a command name can be assigned to 1 to n commands that will be executed in order. ; This does not include any resultant protocol envelope data, only the response data itself. ; WARNING!! These commands bypass TunerStudio's normal memory synchronization. If these commands ; alter mapped settings (Constant) memory in the controller, TunerStudio will have an out of sync condition ; and may create error messages. ; It is expected that these commands would not typically alter any ram mapped to a Constant. ; ; see TS_IO_TEST_COMMAND in firmware code ; cmd_test_spk1 = "w\x00\x12\x00\x01" cmd_test_spk2 = "w\x00\x12\x00\x02" cmd_test_spk3 = "w\x00\x12\x00\x03" cmd_test_spk4 = "w\x00\x12\x00\x04" cmd_test_spk5 = "w\x00\x12\x00\x05" cmd_test_spk6 = "w\x00\x12\x00\x06" cmd_test_spk7 = "w\x00\x12\x00\x07" cmd_test_spk8 = "w\x00\x12\x00\x08" cmd_test_spk9 = "w\x00\x12\x00\x09" cmd_test_spk10 = "w\x00\x12\x00\x0a" cmd_test_spk11 = "w\x00\x12\x00\x0b" cmd_test_spk12 = "w\x00\x12\x00\x0c" cmd_test_spk13 = "w\x00\x12\x00\x0d" cmd_test_spk14 = "w\x00\x12\x00\x0e" cmd_test_spk15 = "w\x00\x12\x00\x0f" cmd_test_spk16 = "w\x00\x12\x00\x10" cmd_test_inj1 = "w\x00\x13\x00\x01" cmd_test_inj2 = "w\x00\x13\x00\x02" cmd_test_inj3 = "w\x00\x13\x00\x03" cmd_test_inj4 = "w\x00\x13\x00\x04" cmd_test_inj5 = "w\x00\x13\x00\x05" cmd_test_inj6 = "w\x00\x13\x00\x06" cmd_test_inj7 = "w\x00\x13\x00\x07" cmd_test_inj8 = "w\x00\x13\x00\x08" cmd_test_inj9 = "w\x00\x13\x00\x09" cmd_test_inj10 = "w\x00\x13\x00\x0a" cmd_test_inj11 = "w\x00\x13\x00\x0b" cmd_test_inj12 = "w\x00\x13\x00\x0c" cmd_test_inj13 = "w\x00\x13\x00\x0d" cmd_test_inj14 = "w\x00\x13\x00\x0e" cmd_test_inj15 = "w\x00\x13\x00\x0f" cmd_test_inj16 = "w\x00\x13\x00\x10" ; cmd_test_fuel_pump = "w\x00\x14\x00\x01" cmd_calibrate_tps_1_closed = "w\x00\x14\x00\x02" cmd_calibrate_tps_1_wot = "w\x00\x14\x00\x03" cmd_calibrate_tps_2_closed = "w\x00\x14\x00\x04" cmd_calibrate_tps_2_wot = "w\x00\x14\x00\x05" cmd_calibrate_pedal_up = "w\x00\x14\x00\x06" cmd_calibrate_pedal_down = "w\x00\x14\x00\x07" cmd_tle8888_init = "w\x00\x14\x00\x08" cmd_test_ac_relay = "w\x00\x14\x00\x09" cmd_write_config = "w\x00\x14\x00\x0A" cmd_test_radiator_fan = "w\x00\x15\x00\x01" cmd_test_check_engine_light = "w\x00\x16\x00\x01" cmd_test_idle_valve = "w\x00\x17\x00\x01" cmd_call_from_pit = "w\x00\x20\x34\x56" cmd_stop_engine = "w\x00\x79\x00\x00" ; reboot ECU cmd_reset_controller = "w\x00\xbb\x00\x00" ; jump to DFU mode cmd_dfu = "w\x00\xba\x00\x00" ; See 'executeTSCommand' in firmware source code ; MIATA_NA6_MAP = 41 cmd_set_engine_type_Miata_NA6_MAP = "w\x00\x30\x00\x29" ; MIATA_NA6_VAF = 57 cmd_set_engine_type_Miata_NA6_VAF = "w\x00\x30\x00\x39" ; MAZDA_MIATA_2003 = 47 cmd_set_engine_type_Miata_NA2 = "w\x00\x30\x00\x2F" ; ETB_BENCH_ENGINE = 58 cmd_set_engine_type_etb_test = "w\x00\x30\x00\x3A" ; ETB_BENCH_ENGINE = 59 cmd_set_engine_type_8888_test = "w\x00\x30\x00\x3B" cmd_set_engine_type_default = "w\x00\x31\x00\x00" [UserDefined] dialog = fuelTableBottomDialog, "", card panel = fuelTableMAFTbl, Center, {fuelAlgorithm==LM_PLAIN_MAF} panel = fuelTableTPSTbl, Center, {fuelAlgorithm==LM_ALPHA_N} panel = fuelTableELTbl, Center dialog = fuelTableRight, "", yAxis topicHelp = "https://rusefi.com/s/fuel" displayOnlyField = "Fuel Algorithm", fuelAlgorithm panel = fuelTableBottomDialog, Center liveGraph = fuelLive, "Fuel", South graphLine = AFRValue graphLine = RPMValue dialog = fuelTableGaugesPanel, yAxis gauge = TPSGauge gauge = MAFGauge gauge = MAPGauge dialog = fuelTableDialog, "Fuel Table", xAxis topicHelp = "fuelHelp" panel = fuelTableGaugesPanel panel = fuelTableRight dialog = tChargeRpmTpsSettings, "RPM+TPS Mode Settings" field = "We use these coefficients to approximate air/fuel charge temperate" field = "based on CLT and IAT, depending on RPM and TPM" field = "minRPM minTPS", tChargeMinRpmMinTps field = "minRPM maxTPS", tChargeMinRpmMaxTps field = "maxRPM minTPS", tChargeMaxRpmMinTps field = "maxRPM maxTPS", tChargeMaxRpmMaxTps dialog = tChargeGeneralSettings, "" field = "tCharge Mode", tChargeMode field = "tChange Increment Limit, deg/sec", tChargeAirIncrLimit field = "tChange Decrement Limit, deg/sec", tChargeAirDecrLimit field = "" dialog = tChargeAirInterpSettings, "Air Interpolation Mode Settings" field = "Min tCharge Coeff.", tChargeAirCoefMin field = "Max tCharge Coeff.", tChargeAirCoefMax field = "Max Air Flow, kg/h", tChargeAirFlowMax dialog = tChargeSettings, "tCharge Settings" panel = tChargeGeneralSettings panel = tChargeRpmTpsSettings, { tChargeMode == 0} panel = tChargeAirInterpSettings, { tChargeMode == 1} dialog = baseInjection, "General" field = "Enabled", isInjectionEnabled field = "Mode", injectionMode, {isInjectionEnabled == 1} field = "#Batch injection with individual wiring" field = "Two wire batch emulation", twoWireBatchInjection, {isInjectionEnabled == 1 && injectionMode == 2} #if tuneByTPS field = "Use TPS instead of Load for VE table", useTPSBasedVeTable, {isInjectionEnabled == 1 && fuelAlgorithm == LM_SPEED_DENSITY} #else field = "#Enabled for TPS-Based 'VE Autotune Mode' in Project Settings" field = "Use TPS instead of Load for VE table", useTPSBasedVeTable, {0} #endif dialog = ignitionOutputs, "Ignition Outputs" field = "Ignition Pin Mode", ignitionPinMode, {isIgnitionEnabled == 1} field = "Ignition Pin 1", ignitionPins1, {isIgnitionEnabled == 1} ; see rusefi_config.txt comment next to 'ignitionPin2logic' which says ; this section is auto-generated by FiringOrderTSLogic.java field = "Ignition Pin 2", ignitionPins2, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount > 1) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 2) || (firingOrder == 7) || (firingOrder == 9) || (firingOrder == 11) || (firingOrder == 12)))} field = "Ignition Pin 3", ignitionPins3, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount > 2) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 1) || (firingOrder == 3) || (firingOrder == 4) || (firingOrder == 5) || (firingOrder == 9)))} field = "Ignition Pin 4", ignitionPins4, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount > 3) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 7) || (firingOrder == 12)))} field = "Ignition Pin 5", ignitionPins5, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount > 4) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 4) || (firingOrder == 12)))} field = "Ignition Pin 6", ignitionPins6, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount > 5) && (ignitionMode !=2 || twoWireBatchIgnition == 1 )} field = "Ignition Pin 7", ignitionPins7, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount > 6) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 11)))} field = "Ignition Pin 8", ignitionPins8, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount > 7) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11)))} field = "Ignition Pin 9", ignitionPins9, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount > 8) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11)))} field = "Ignition Pin 10", ignitionPins10, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount > 9) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11)))} field = "Ignition Pin 11", ignitionPins11, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount > 10) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11)))} field = "Ignition Pin 12", ignitionPins12, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount > 11) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11)))} field = "This is useful to have tachometer working" field = " while converting from distributor" field = "Dizzy out Pin", dizzySparkOutputPin, {isIgnitionEnabled == 1} field = "Dizzy out Pin Mode", dizzySparkOutputPinMode, {isIgnitionEnabled == 1} dialog = ignitionBasic, "" field = "Enabled", isIgnitionEnabled field = "Mode", ignitionMode, {isIgnitionEnabled == 1} field = "#Wasted spark with individual coils" field = "Two wire wasted", twoWireBatchIgnition, {isIgnitionEnabled == 1 && ignitionMode == 2} field = "Timing Mode", timingMode, {isIgnitionEnabled == 1} field = "Use TPS-based Advance Table", useTPSAdvanceTable, {isIgnitionEnabled == 1 && fuelAlgorithm == LM_SPEED_DENSITY} field = "#Use fixed timing while validating with a timing gun" field = "Fixed Timinig", fixedTiming, {isIgnitionEnabled == 1 && timingMode == 1} dialog = ignitionSettings, "", xAxis panel = ignitionBasic panel = ignitionOutputs dialog = baseEngineConfig, "Engine Configuration" ; field = "Engine Preset", engineType field = "Number of Cylinders", cylindersCount field = "Engine Displacement", displacement field = "Firing Order", firingOrder ; Engine->Trigger configuration dialog = triggerConfiguration_settings, "Settings Trigger" field = "!https://rusefi.com/s/trigger" field = "Trigger type", trigger_type ; see also in firmware '[doesTriggerImplyOperationMode]' tag field = "Operation mode / speed", ambiguousOperationMode field = "With VR sensors only rising edge has reliable position" field = "use only rising edge", useOnlyRisingEdgeForTrigger field = "!Reminder that 4-stroke cycle is 720 degrees" field = "!For well-known trigger types use '0' trigger angle offset" field = "Trigger Angle Offset", globalTriggerAngleOffset field = "#Custom Trigger" field = "total Tooth Count", trigger_customTotalToothCount, {trigger_type == 0} field = "skipped Tooth Count", trigger_customSkippedToothCount, {trigger_type == 0} dialog = triggerConfiguration_IO, "Settings I/O" field = "!https://rusefi.com/s/vvt" field = "VVT mode", vvtMode, {trigger_type != 80} field = "VVT use rise front", vvtCamSensorUseRise, {trigger_type != 80} field = "VVT position display offset", vvtOffset field = "VVT display inverted", vvtDisplayInverted field = "Miata NB2 from (temporary)", miataNb2VVTRatioFrom field = "Miata NB2 to (temporary)", miataNb2VVTRatioTo field = "nbVvtIndex", nbVvtIndex field = "print verbose sync details to console",verboseTriggerSynchDetails field = "Do not print messages in case of sync error", silentTriggerError field = "Enable noise filtering", useNoiselessTriggerDecoder, {trigger_type == 8 || trigger_type == 9} dialog = triggerConfiguration panel = triggerConfiguration_settings, North panel = triggerConfiguration_IO, South ; Engine->Injection Settings dialog = injChars, "Injector Settings", yAxis field = "Injector Flow", injector_flow, {isInjectionEnabled == 1} dialog = injectorOutputSettings, "Injector Outputs", yAxis field = "!ECU reboot needed to apply these settings" field = "injection Pin Mode", injectionPinMode, {isInjectionEnabled == 1} field = "With batched injection without 'Two wire batch emulation'" field = " fill only first count / 2 values" field = "Injection Pin 1", injectionPins1, {isInjectionEnabled == 1} field = "Injection Pin 2", injectionPins2, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 1} field = "Injection Pin 3", injectionPins3, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 2} field = "Injection Pin 4", injectionPins4, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 3} field = "Injection Pin 5 ", injectionPins5, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 4} field = "Injection Pin 6 ", injectionPins6, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 5} field = "Injection Pin 7 ", injectionPins7, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 6} field = "Injection Pin 8 ", injectionPins8, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 7} field = "Injection Pin 9 ", injectionPins9, {isInjectionEnabled == 1 && cylindersCount > 8} field = "Injection Pin 10 ", injectionPins10, {isInjectionEnabled == 1 && cylindersCount > 9} field = "Injection Pin 11 ", injectionPins11, {isInjectionEnabled == 1 && cylindersCount > 10} field = "Injection Pin 12 ", injectionPins12, {isInjectionEnabled == 1 && cylindersCount > 11} dialog = injectionBasic, "" topicHelp = "fuelHelp" panel = baseInjection panel = injChars dialog = injectionSettings, "", xAxis panel = injectionBasic panel = injectorOutputSettings dialog = injectionDeadTime, "", yAxis panel = injectorsDeadTime, East dialog = ignitionCylExtra, "Ignition Cylinder Extra Timing" field = "Extra cyl #1", timing_offset_cylinder1 field = "Extra cyl #2", timing_offset_cylinder2, {cylindersCount > 1} field = "Extra cyl #3", timing_offset_cylinder3, {cylindersCount > 2} field = "Extra cyl #4", timing_offset_cylinder4, {cylindersCount > 3} field = "Extra cyl #5", timing_offset_cylinder5, {cylindersCount > 4} field = "Extra cyl #6", timing_offset_cylinder6, {cylindersCount > 5} field = "Extra cyl #7", timing_offset_cylinder7, {cylindersCount > 6} field = "Extra cyl #8", timing_offset_cylinder8, {cylindersCount > 7} field = "Extra cyl #9", timing_offset_cylinder9, {cylindersCount > 8} field = "Extra cyl #10", timing_offset_cylinder10, {cylindersCount > 9} field = "Extra cyl #11", timing_offset_cylinder11, {cylindersCount > 10} field = "Extra cyl #12", timing_offset_cylinder12, {cylindersCount > 11} dialog = dwellSettings, "", yAxis panel = dwellCorrection, Center ; Sensors->AUX1 Thermistor Sensor Setting dialog = auxTempSensor1Sensor, "aux1 Thermistor Settings" field = "Input channel", auxTempSensor1_adcChannel field = "Bias resistor", auxTempSensor1_bias_resistor, {auxTempSensor1_adcChannel != 16} field = "#Here is three pairs of thermistor temperature and resistance." field = "#Typical temperatures is -40 deg C, 0 deg C and 100 deg C" field = "" field = "Lowest temperature", auxTempSensor1_tempC_1, {auxTempSensor1_adcChannel != 16} field = "Resistance @ LT", auxTempSensor1_resistance_1, {auxTempSensor1_adcChannel != 16} field = "" field = "Middle temperature", auxTempSensor1_tempC_2, {auxTempSensor1_adcChannel != 16} field = "Resistance @ MT", auxTempSensor1_resistance_2, {auxTempSensor1_adcChannel != 16} field = "" field = "Highest temperature", auxTempSensor1_tempC_3, {auxTempSensor1_adcChannel != 16} field = "Resistance @ HT", auxTempSensor1_resistance_3, {auxTempSensor1_adcChannel != 16} ; Sensors->AUX2 Thermistor Sensor Setting dialog = auxTempSensor2Sensor, "aux2 Thermistor Settings" field = "Input channel", auxTempSensor2_adcChannel field = "Bias resistor", auxTempSensor2_bias_resistor, {auxTempSensor2_adcChannel != 16} field = "#Here is three pairs of thermistor temperature and resistance." field = "#Typical temperatures is -40 deg C, 0 deg C and 100 deg C" field = "" field = "Lowest temperature", auxTempSensor2_tempC_1, {auxTempSensor2_adcChannel != 16} field = "Resistance @ LT", auxTempSensor2_resistance_1, {auxTempSensor2_adcChannel != 16} field = "" field = "Middle temperature", auxTempSensor2_tempC_2, {auxTempSensor2_adcChannel != 16} field = "Resistance @ MT", auxTempSensor2_resistance_2, {auxTempSensor2_adcChannel != 16} field = "" field = "Highest temperature", auxTempSensor2_tempC_3, {auxTempSensor2_adcChannel != 16} field = "Resistance @ HT", auxTempSensor2_resistance_3, {auxTempSensor2_adcChannel != 16} dialog = tpsSensor, "TPS" field = "!See Tools>Calibrate TPS" field = "Throttle1 position sensor", tps1_1AdcChannel field = "Throttle2 position sensor", tps2_1AdcChannel field = "TPS low value detection threshold", tpsErrorDetectionTooLow, {tps1_1AdcChannel != 16} field = "TPS high value detection threshold", tpsErrorDetectionTooHigh, {tps1_1AdcChannel != 16} dialog = pedalSensor, "Accelerator pedal" field = "Accelerator position sensor", throttlePedalPositionAdcChannel field = "Up voltage", throttlePedalUpVoltage field = "Down (WOT) voltage", throttlePedalWOTVoltage ; Sensor Inputs dialog = otherSensorInputs, "Other Sensor Inputs" field = "Fuel level", fuelLevelSensor field = "Clutch down switch", clutchDownPin field = "Clutch down inverted", clutchDownPinInverted field = "Clutch up switch", clutchUpPin field = "Clutch up inverted", clutchUpPinInverted field = "Throttle Up switch", throttlePedalUpPin field = "Brake pedal switch", brakePedalPin field = "A/C switch", acSwitchAdc dialog = triggerInputs, "Trigger Inputs" field = "!ECU reboot needed to apply these settings" field = "#Cam is primary if you have cam sensor" field = "Primary channel", triggerInputPins1 field = "Invert Primary", invertPrimaryTriggerSignal field = "Secondary channel", triggerInputPins2, { trigger_type != 0 && trigger_type != 8 && trigger_type != 9 && trigger_type != 18 && trigger_type != 20} field = "Invert Secondary", invertSecondaryTriggerSignal, { trigger_type != 0 && trigger_type != 8 && trigger_type != 9 && trigger_type != 18 && trigger_type != 20} field = "Cam Sync/VVT input", camInputs1 dialog = allPinsSensors, "Sensors" field = "CLT ADC input", clt_adcChannel field = "IAT ADC input", iat_adcChannel field = "vBatt ADC input", vbattAdcChannel field = "TPS1 ADC input", tps1_1AdcChannel field = "TPS2 ADC input", tps2_1AdcChannel field = "MAF ADC input", mafAdcChannel field = "AFR ADC input", afr_hwChannel field = "Baro ADC input", baroSensor_hwChannel field = "MAP ADC input", map_sensor_hwChannel field = "FrequencyReportingMapInputPin", frequencyReportingMapInputPin field = "FuelLevelSensor", fuelLevelSensor field = "Vehicle Speed Input pin", vehicleSpeedSensorInputPin field = "clutchDownPin", clutchDownPin field = "clutchUpPin", clutchUpPin field = "brakePedalPin", brakePedalPin field = "A/C Switch", acSwitchAdc field = "Aux Temperature #1", auxTempSensor1_adcChannel field = "Aux Temperature #2", auxTempSensor2_adcChannel dialog = allPins1_1 field = mc33816_cs, mc33816_cs field = mc33816_rstb, mc33816_rstb field = high_fuel_pressure_sensor_1, high_fuel_pressure_sensor_1 field = high_fuel_pressure_sensor_2, high_fuel_pressure_sensor_2 field = mc33816_driven, mc33816_driven field = mc33816spiDevice, mc33816spiDevice field = "Warning Led", warningLedPin ; field = "Fatal Error Led", fatalErrorPin field = "tle6240_cs", tle6240_cs field = "tle6240 SPI", tle6240spiDevice field = "mc33972_cs", mc33972_cs field = "mc33972 SPI", mc33972spiDevice panel = allPinsSensors field = "Throttle pedal Position Channel", throttlePedalPositionAdcChannel field = "Primary input channel", triggerInputPins1 field = "Secondary channel", triggerInputPins2 field = "Cam Sync/VVT input", camInputs1 dialog = allPins1_2 field = "Tachometer output Pin", tachOutputPin field = "Dizzy out Pin", dizzySparkOutputPin field = "O2 heater pin", o2heaterPin field = "Idle Solenoid Pin", idle_solenoidPin field = "Idle Stepper Dir", idle_stepperDirectionPin field = "Idle Stepper Dir Mode", stepperDirectionPinMode field = "Idle Stepper Step", idle_stepperStepPin field = "Idle Stepper Enable", stepperEnablePin field = "Fuel Pump Pin", fuelPumpPin field = "Fuel Pump Pin Mode", fuelPumpPinMode field = "ETB#1 Dir #1", etb1_directionPin1 field = "ETB#1 Dir #2", etb1_directionPin2 field = "ETB#1 Control #1", etb1_controlPin1 field = "etb1_controlPinMode", etb1_controlPinMode field = "ETB#2 Dir #1", etb2_directionPin1 field = "ETB#2 Dir #2", etb2_directionPin2 field = "ETB#2 Control #1", etb2_controlPin1 field = "SD CS Pin", sdCardCsPin field = "MIL / Check Engine Pin", malfunctionIndicatorPin field = "MIL / Check Engine Pin Mode", malfunctionIndicatorPinMode field = "Aux Pin #1", auxPidPins1 field = "Aux Pin #2", auxPidPins2 field = "Aux Pin #3", auxPidPins3 field = "Aux Pin #4", auxPidPins4 field = "test557pin", test557pin field = "Fan Pin", fanPin field = "Fan Pin Mode", fanPinMode field = "Main Relay Pin", mainRelayPin field = "Main Relay Mode", mainRelayPinMode field = "Starter Relay Pin", starterRelayPin field = "Starter Relay Mode", starterRelayPinMode field = "aux valve #1", auxValves1 field = "aux valve #2", auxValves2 dialog = allPins2_1 field = "Injection Pin 1", injectionPins1 field = "Injection Pin 2", injectionPins2 field = "Injection Pin 3", injectionPins3 field = "Injection Pin 4", injectionPins4 field = "Injection Pin 5 ", injectionPins5 field = "Injection Pin 6 ", injectionPins6 field = "Injection Pin 7 ", injectionPins7 field = "Injection Pin 8 ", injectionPins8 field = "Injection Pin 9 ", injectionPins9 field = "Injection Pin 10 ", injectionPins10 field = "Injection Pin 11 ", injectionPins11 field = "Injection Pin 12 ", injectionPins12 field = "FSIO dig inp #1", fsioDigitalInputs1 field = "FSIO dig inp #2", fsioDigitalInputs2 field = "FSIO dig inp #3", fsioDigitalInputs3 field = "FSIO dig inp #4", fsioDigitalInputs4 field = "FSIO dig inp #5", fsioDigitalInputs5 field = "FSIO dig inp #6", fsioDigitalInputs6 field = "FSIO dig inp #7", fsioDigitalInputs7 field = "FSIO dig inp #8", fsioDigitalInputs8 field = "FSIO dig inp #9", fsioDigitalInputs9 field = "FSIO dig inp #10", fsioDigitalInputs10 field = "FSIO dig inp #11", fsioDigitalInputs11 field = "FSIO dig inp #12", fsioDigitalInputs12 field = "FSIO dig inp #13", fsioDigitalInputs13 field = "FSIO dig inp #14", fsioDigitalInputs14 field = "FSIO dig inp #15", fsioDigitalInputs15 field = "FSIO dig inp #16", fsioDigitalInputs16 dialog = allPins2_2 field = "Ignition Pin 1", ignitionPins1 field = "Ignition Pin 2", ignitionPins2 field = "Ignition Pin 3", ignitionPins3 field = "Ignition Pin 4", ignitionPins4 field = "Ignition Pin 5", ignitionPins5 field = "Ignition Pin 6", ignitionPins6 field = "Ignition Pin 7", ignitionPins7 field = "Ignition Pin 8", ignitionPins8 field = "Ignition Pin 9", ignitionPins9 field = "Ignition Pin 10", ignitionPins10 field = "Ignition Pin 11", ignitionPins11 field = "Ignition Pin 12", ignitionPins12 field = "output #1", fsioOutputPins1 field = "output #2", fsioOutputPins2 field = "output #3", fsioOutputPins3 field = "output #4", fsioOutputPins4 field = "output #5", fsioOutputPins5 field = "output #6", fsioOutputPins6 field = "output #7", fsioOutputPins7 field = "output #8", fsioOutputPins8 field = "output #9", fsioOutputPins9 field = "output #10", fsioOutputPins10 field = "output #11", fsioOutputPins11 field = "output #12", fsioOutputPins12 field = "output #13", fsioOutputPins13 field = "output #14", fsioOutputPins14 field = "output #15", fsioOutputPins15 field = "output #16", fsioOutputPins16 dialog = allPins2_3 field = "Debug Trigger Sync", debugTriggerSync field = "Debug Timer Callback", debugTimerCallback field = "Debug Set Timer", debugSetTimer field = "Aux Fast Analog", auxFastSensor1_adcChannel dialog = allPins1_3 field = "FSIO ADC #1", fsioAdc1 field = "FSIO ADC #2", fsioAdc2 field = "FSIO ADC #3", fsioAdc3 field = "FSIO ADC #4", fsioAdc4 field = "GPS RX", gps_rx_pin field = "GPS TX", gps_tx_pin field = "CAN RX pin", canRxPin field = "CAN TX pin", canTxPin field = "SPI1 MOSI", spi1mosiPin, {is_enabled_spi_1 == 1} field = "SPI1 MISO", spi1misoPin, {is_enabled_spi_1 == 1} field = "SPI1 SCK", spi1sckPin, {is_enabled_spi_1 == 1} field = "SPI2 MOSI", spi2mosiPin, {is_enabled_spi_2 == 1} field = "SPI2 MISO", spi2misoPin, {is_enabled_spi_2 == 1} field = "SPI2 SCK", spi2sckPin, {is_enabled_spi_2 == 1} field = "SPI3 MOSI", spi3mosiPin, {is_enabled_spi_3 == 1} field = "SPI3 MISO", spi3misoPin, {is_enabled_spi_3 == 1} field = "SPI3 SCK", spi3sckPin, {is_enabled_spi_3 == 1} field = "hip9011CsPin", hip9011CsPin field = "LIS302DLCsPin", LIS302DLCsPin field = "MIL / Check Engine", malfunctionIndicatorPin field = "Saab CDM knock", cdmInputPin field = "comm status light", communicationLedPin field = "running status light", runningLedPin field = "TLE8888 Chip Select", tle8888_cs field = "TLE8888 CS Mode", tle8888_csPinMode field = "TLE 8888 spi", tle8888spiDevice field = "servo#1", servoOutputPins1 field = "servo#2", servoOutputPins2 field = "servo#3", servoOutputPins3 field = "servo#4", servoOutputPins4 field = "servo#5", servoOutputPins5 dialog = allPins1_1_and_2, "", xAxis panel = allPins1_1 panel = allPins1_2 dialog = allPins1, "All Pins 1/2", xAxis panel = allPins1_1_and_2 panel = allPins1_3 dialog = allPins2_1_and_2, "", xAxis panel = allPins2_1 panel = allPins2_2 dialog = allPins2, "All Pins 2/2", xAxis panel = allPins2_1_and_2 panel = allPins2_3 ; Sensors->CLT sensor dialog = clt_thermistor, "CLT sensor" field = "Input channel", clt_adcChannel field = "Bias resistor", clt_bias_resistor, {clt_adcChannel != 16} field = "#Here is three pairs of thermistor temperature and resistance." field = "#Typical temperatures is -40 deg C, 0 deg C and 100 deg C" field = "" field = "Lowest temperature", clt_tempC_1, {clt_adcChannel != 16} field = "Resistance @ LT", clt_resistance_1, {clt_adcChannel != 16} field = "" field = "Middle temperature", clt_tempC_2, {clt_adcChannel != 16} field = "Resistance @ MT", clt_resistance_2, {clt_adcChannel != 16} field = "" field = "Highest temperature", clt_tempC_3, {clt_adcChannel != 16} field = "Resistance @ HT", clt_resistance_3, {clt_adcChannel != 16} field = "" field = "Linear characteristic", useLinearCltSensor, {clt_adcChannel != 16} dialog = cltSensor, "", xAxis panel = clt_thermistor gauge = CLTGauge ; Sensors->IAT sensor dialog = iat_thermistor, "IAT sensor" field = "Input channel", iat_adcChannel field = "Bias resistor", iat_bias_resistor, {iat_adcChannel != 16} field = "#Here is three pairs of thermistor temperature and resistance." field = "#Typical temperatures is -40 deg C, 0 deg C and 100 deg C" field = "" field = "Lowest temperature", iat_tempC_1, {iat_adcChannel != 16} field = "Resistance @ LT", iat_resistance_1, {iat_adcChannel != 16} field = "" field = "Middle temperature", iat_tempC_2, {iat_adcChannel != 16} field = "Resistance @ MT", iat_resistance_2, {iat_adcChannel != 16} field = "" field = "Highest temperature", iat_tempC_3, {iat_adcChannel != 16} field = "Resistance @ HT", iat_resistance_3, {iat_adcChannel != 16} field = "" field = "Linear characteristic", useLinearIatSensor, {iat_adcChannel != 16} dialog = iatSensor, "", xAxis panel = iat_thermistor gauge = IATGauge ; Sensors->Oil pressure sensor dialog = oilp_settings, "Oil pressure sensor" field = "Oil Pressure ADC input", oilPressure_hwChannel field = "low voltage", oilPressure_v1, {oilPressure_hwChannel != 16} field = "low pressure", oilPressure_value1, {oilPressure_hwChannel != 16} field = "high voltage", oilPressure_v2, {oilPressure_hwChannel != 16} field = "high pressure", oilPressure_value2, {oilPressure_hwChannel != 16} dialog = oilPressureSensor, "", xAxis panel = oilp_settings gauge = OilPressGauge ; Sensors->MAP sensor dialog = mapSensorAnalog, "MAP sensor", yAxis field = "MAP ADC input", map_sensor_hwChannel field = "MAP type", map_sensor_type field = "MAP value low point", map_sensor_lowValue field = "MAP voltage low point", mapLowValueVoltage field = "MAP value high point", map_sensor_highValue field = "MAP voltage high value", mapHighValueVoltage dialog = mapSensorFreq, "MAP frequency sensor", yAxis field = "MAP Freq", frequencyReportingMapInputPin field = "0 kPa freq", mapFrequency0Kpa field = "100 kpa freq", mapFrequency100Kpa dialog = mapCommon, "MAP common settings" field = "frequency-based MAP", hasFrequencyReportingMapSensor field = "Low value threshold", mapErrorDetectionTooLow field = "High value threshold", mapErrorDetectionTooHigh field = "" field = "Measure Map Only In One Cylinder", measureMapOnlyInOneCylinder field = "Minimum MAP samples", mapMinBufferLength dialog = mapSettings, "", yAxis panel = mapCommon panel = mapSensorAnalog, {hasFrequencyReportingMapSensor == 0} panel = mapSensorFreq, {hasFrequencyReportingMapSensor == 1} dialog = baroSettings, "Baro sensor" field = "Baro ADC input", baroSensor_hwChannel field = baroSensor_lowValue, baroSensor_lowValue, {baroSensor_hwChannel != 16} field = baroSensor_highValue, baroSensor_highValue, {baroSensor_hwChannel != 16} field = baroSensor_type, baroSensor_type, {baroSensor_hwChannel != 16} dialog = mapCurves, "MAP sampling", yAxis field = "isMapAveragingEnabled", isMapAveragingEnabled panel = map_samplingAngleCurve panel = map_samplingWindowCurve dialog = mafSettings, "MAF sensor", yAxis field = "MAF ADC input", mafAdcChannel ; Sensors->EGO sensor dialog = egoSettings_sensor, "EGO sensor" field = "Type", afr_type ; todo: only use these values for custom! field = "low voltage", afr_v1 field = "low value", afr_value1 field = "high voltage", afr_v2 field = "high value", afr_value2 field = "Correction", egoValueShift dialog = egoSettings_IO, "EGO Sensor I/O" field = "Input channel", afr_hwChannel field = "Heater pin", o2heaterPin dialog = egoSettings, "", yAxis panel = egoSettings_IO panel = egoSettings_sensor, {afr_hwChannel != 16} ; Engine->EGT inputs dialog = egtInputs, "EGT inputs" field = "SPI", max31855spiDevice field = "CS #1", max31855_cs1 field = "CS #2", max31855_cs2 field = "CS #3", max31855_cs3 field = "CS #4", max31855_cs4 field = "CS #5", max31855_cs5 field = "CS #6", max31855_cs6 field = "CS #7", max31855_cs7 field = "CS #8", max31855_cs8 ; Engine->idle Settings dialog = idleSolenoid, "Solenoid" field = "Idle Solenoid Pin Mode", idle_solenoidPinMode, !useStepperIdle field = "Idle Solenoid Pin", idle_solenoidPin, !useStepperIdle field = "Idle Solenoid Frequency", idle_solenoidFrequency, !useStepperIdle dialog = idleStepper, "Stepper" field = "Idle Stepper Step Pin", idle_stepperStepPin, useStepperIdle field = "Idle Stepper Dir Pin", idle_stepperDirectionPin, useStepperIdle field = "Idle Stepper Enable Pin", stepperEnablePin, useStepperIdle field = "Idle Stepper Enable Pin Mode", stepperEnablePinMode, useStepperIdle field = "Stepper reaction time", idleStepperReactionTime, useStepperIdle field = "Stepper total steps", idleStepperTotalSteps, useStepperIdle field = "Stepper parking extra steps, %", stepperParkingExtraSteps, useStepperIdle field = "Force parking every restart", stepperForceParkingEveryRestart, useStepperIdle dialog = idleHwType, "Idle Valve Hardware", border panel = idleSolenoid, West panel = idleStepper, East dialog = idlehw, "", yAxis field = "!ECU reboot needed to apply these settings" field = "Use Stepper", useStepperIdle panel = idleHwType dialog = idlePidSettings, "PID IAC Control" field = "#See Idle Target RPM Curve" field = "P-factor", idleRpmPid_pFactor field = "I-factor", idleRpmPid_iFactor field = "D-factor", idleRpmPid_dFactor field = "Offset", idleRpmPid_offset field = "Min", idleRpmPid_minValue field = "Max", idleRpmPid_maxValue field = "iTerm Min", idlerpmpid_iTermMin field = "iTerm Max", idlerpmpid_iTermMax field = "Offset#2", idleRpmPid2_offset field = "Min#2", idleRpmPid2_minValue field = "period", idleRpmPid_periodMs field = "RPM dead zone to deactivate IAC pid", idlePidRpmDeadZone field = "RPM upper limit to deactivate IAC pid",idlePidRpmUpperLimit field = "PID Extra for low RPM", pidExtraForLowRpm dialog = idleSettings, "", yAxis field = "Idle IAC control mode", idleMode field = useInstantRpmForIdle, useInstantRpmForIdle field = "use ETB for idle", useETBforIdleControl field = "ETB Idle range", etbIdleThrottleRange, {useETBforIdleControl == 1} field = "Use separate Ignition Table for idle", useSeparateAdvanceForIdle field = "Use separate VE Table for idle", useSeparateVeForIdle field = "Use separate IAC Table For Coasting", useIacTableForCoasting, {idleMode == 0} field = idleIncrementalPidCic, idleIncrementalPidCic field = "TPS deactivation threshold", idlePidDeactivationTpsThreshold panel = idlePidSettings, { idleMode == 0} field = "Extra IAC if Throttle Pressed", iacByTpsTaper; field = "Detailed status in console", isVerboseIAC field = "#See Warmup idle multiplier" slider = "Manual IAC Position", manIdlePosition, horizontal dialog = idleTimingPidCorrDialog, "", yAxis field = "!This timing correction mode is Alpha Version" field = "Use Auto-PID ignition advance control", useIdleTimingPidControl field = "#See Idle Target RPM Curve" field = "P-factor", idleTimingPid_pFactor, {useIdleTimingPidControl == 1} field = "I-factor", idleTimingPid_iFactor, {useIdleTimingPidControl == 1} field = "D-factor", idleTimingPid_dFactor, {useIdleTimingPidControl == 1} field = "Offset", idleTimingPid_offset, {useIdleTimingPidControl == 1} field = "Min Delta", idleTimingPid_minValue, {useIdleTimingPidControl == 1} field = "Max Delta", idleTimingPid_maxValue, {useIdleTimingPidControl == 1} field = "period", idleTimingPid_periodMs, {useIdleTimingPidControl == 1} field = "#See RPM dead zone to deactivate IAC pid" field = "RPM working zone for timing pid", idleTimingPidWorkZone, {useIdleTimingPidControl == 1} field = "RPM working zone falloff", idlePidFalloffDeltaRpm, {useIdleTimingPidControl == 1} field = "RPM dead zone to deactivate timing pid", idleTimingPidDeadZone, {useIdleTimingPidControl == 1} ; Engine->Fan Settings dialog = fanSetting, "Fan Settings" field = "Pin", fanPin field = "Pin mode", fanPinMode field = "On temperature", fanOnTemperature field = "Off temperature", fanOffTemperature dialog = fuelPump, "Fuel Rail" field = "Pin", fuelPumpPin field = "Pin mode", fuelPumpPinMode field = "Prime duration", startUpFuelPumpDuration field = "Absolute Fuel Pressure", absoluteFuelPressure field = "Fuel Rail pressure", fuelRailPressure, {absoluteFuelPressure == 1} ; Controller->Actuator Outputs dialog = mainRelay, "Main relay output" field = "Pin", mainRelayPin field = "Pin mode", mainRelayPinMode dialog = starterRelay, "Starter relay output" field = "Pin", starterRelayPin field = "Pin mode", starterRelayPinMode dialog = statusLeds, "Status LEDs" field = "Running status LED", runningLedPin field = "TS communication status LED", communicationLedPin field = "Trigger error LED", triggerErrorPin ; field = "Fatal Error Led", fatalErrorPin ; Engine->MIL Settings dialog = malfunction, "Check Engine Settings" field = "Pin", malfunctionIndicatorPin field = "Pin mode", malfunctionIndicatorPinMode field = "Warning Period", warningPeriod ; Engine->hip9011 Settings dialog = hipFunction, "HIP9011 Settings (knock decoder)" field = "Enabled", isHip9011Enabled field = "Threshold", knockVThreshold, {isHip9011Enabled == 1} field = "!ECU reboot needed to apply these settings" field = "IntHold pin (hip9011 input)", hip9011IntHoldPin, {isHip9011Enabled == 1} field = "IntHold pin (hip9011 input) mode", hip9011IntHoldPinMode, {isHip9011Enabled == 1} field = "ChipSelect pin", hip9011CsPin, {isHip9011Enabled == 1} field = "ChipSelect mode", hip9011CsPinMode, {isHip9011Enabled == 1} field = "hip Output/stm input", hipOutputChannel, {isHip9011Enabled == 1} field = "prescaler & SDO", hip9011PrescalerAndSDO, {isHip9011Enabled == 1} field = "knockDetectionWindowStart", knockDetectionWindowStart, {isHip9011Enabled == 1} field = "knockDetectionWindowEnd", knockDetectionWindowEnd, {isHip9011Enabled == 1} field = "cylinder bore (mm)", cylinderBore, {isHip9011Enabled == 1} field = "Band Freq override", knockBandCustom, {isHip9011Enabled == 1} field = "SPI device", hip9011SpiDevice, {isHip9011Enabled == 1} panel = knockThresholdCurve ; Engine->cj125 Settings dialog = cj125Function, "CJ125 Settings (wbo decoder)" field = "Enabled", isCJ125Enabled field = "Using 4.9 sensor?", cj125isLsu49 field = "!ECU reboot needed to apply these settings" field = "ChipSelect pin", cj125CsPin, {isCJ125Enabled == 1} field = "ChipSelect mode", cj125CsPinMode, {isCJ125Enabled == 1} field = "!See also 'Controller-SPI setting'" field = "SPI device", cj125SpiDevice field = "Heater pin", wboHeaterPin, {isCJ125Enabled == 1} field = "UA input", cj125ua, {isCJ125Enabled == 1} field = "UR input", cj125ur, {isCJ125Enabled == 1} field = "Is UA input divided?" cj125isUaDivided, {isCJ125Enabled == 1} field = "Is UR input divided?" cj125isUrDivided, {isCJ125Enabled == 1} dialog = spiFunction, "SPI settings" field = "!ECU reboot needed to apply these settings" field = "SPI1 enable", is_enabled_spi_1 field = "SPI1 MOSI", spi1mosiPin, {is_enabled_spi_1 == 1} field = "SPI1mosi mode", spi1MosiMode, {is_enabled_spi_1 == 1} field = "SPI1 MISO", spi1misoPin, {is_enabled_spi_1 == 1} field = "SPI1miso mode", spi1MisoMode, {is_enabled_spi_1 == 1} field = "SPI1 SCK", spi1sckPin, {is_enabled_spi_1 == 1} field = "SPI1sck mode", spi1SckMode, {is_enabled_spi_1 == 1} field = "SPI2 enable", is_enabled_spi_2 field = "SPI2 MOSI", spi2mosiPin, {is_enabled_spi_2 == 1} field = "SPI2mosi mode", spi2MosiMode, {is_enabled_spi_2 == 1} field = "SPI2 MISO", spi2misoPin, {is_enabled_spi_2 == 1} field = "SPI2miso mode", spi2MisoMode, {is_enabled_spi_2 == 1} field = "SPI2 SCK", spi2sckPin, {is_enabled_spi_2 == 1} field = "SPI2sck mode", spi2SckMode, {is_enabled_spi_2 == 1} field = "SPI3 enable", is_enabled_spi_3 field = "SPI3 MOSI", spi3mosiPin, {is_enabled_spi_3 == 1} field = "SPI3mosi mode", spi3MosiMode, {is_enabled_spi_3 == 1} field = "SPI3 MISO", spi3misoPin, {is_enabled_spi_3 == 1} field = "SPI3miso mode", spi3MisoMode, {is_enabled_spi_3 == 1} field = "SPI3 SCK", spi3sckPin, {is_enabled_spi_3 == 1} field = "SPI3sck mode", spi3SckMode, {is_enabled_spi_3 == 1} field = "LIS302DLCsPin", LIS302DLCsPin dialog = fuelClosedLoopDialog, "Fuel short-term closed-loop correction" field = "#This is just the cherry on the cake once you have good VE table" field = "Enabled", fuelClosedLoopCorrectionEnabled field = "!No correction below these value" field = "CLT - low threshod", fuelClosedLoopCltThreshold, {fuelClosedLoopCorrectionEnabled == 1} field = "RPM - low threshod", fuelClosedLoopRpmThreshold, {fuelClosedLoopCorrectionEnabled == 1} field = "EGO - low threshod", fuelClosedLoopAfrLowThreshold, {fuelClosedLoopCorrectionEnabled == 1} field = "!No correction above these value" field = "TPS - high threshod", fuelClosedLoopTpsThreshold, {fuelClosedLoopCorrectionEnabled == 1} field = "EGO - high threshod", fuelClosedLoopAfrHighThreshold, {fuelClosedLoopCorrectionEnabled == 1} field = "!PID settings" field = "P factor", fuelClosedLoopPid_pFactor, {fuelClosedLoopCorrectionEnabled == 1} field = "I factor", fuelClosedLoopPid_iFactor, {fuelClosedLoopCorrectionEnabled == 1} field = "D factor", fuelClosedLoopPid_dFactor, {fuelClosedLoopCorrectionEnabled == 1} field = "min", fuelClosedLoopPid_minValue, {fuelClosedLoopCorrectionEnabled == 1} field = "max", fuelClosedLoopPid_maxValue, {fuelClosedLoopCorrectionEnabled == 1} dialog = auxPidDialog, "Aux PID" field = "Enabled", activateAuxPid1 field = "FSIO pin #1", auxPidPins1 field = "PWM Frequency", auxPidFrequency1 field = "Detailed status in console", isVerboseAuxPid1 field = "#target based on FSIO map#1" field = "control period", auxPid1_periodMs, {activateAuxPid1 == 1} field = "#PID control" field = "offset", auxPid1_offset, {activateAuxPid1 == 1} field = "P factor", auxPid1_pFactor, {activateAuxPid1 == 1} field = "I factor", auxPid1_iFactor, {activateAuxPid1 == 1} field = "D factor", auxPid1_dFactor, {activateAuxPid1 == 1} field = "Min", auxPid1_minValue, {activateAuxPid1 == 1} field = "Max", auxPid1_maxValue, {activateAuxPid1 == 1} field = "FSIO pin #2", auxPidPins2 field = "FSIO pin #3", auxPidPins3 field = "FSIO pin #4", auxPidPins4 ; Engine->Battery & Alternator dialog = batteryDialog, "Battery Settings", yAxis field = "vBatt ADC input", vbattAdcChannel field = "Battery Input Divider Coefficient", vbattDividerCoeff dialog = alternator, "Alternator Settings", yAxis field = "Enabled", isAlternatorControlEnabled field = "simple on/off mode", onOffAlternatorLogic, {isAlternatorControlEnabled == 1} field = "Target", targetVBatt, {isAlternatorControlEnabled == 1} field = "Pin", alternatorControlPin, {isAlternatorControlEnabled == 1} field = "Pin Mode", alternatorControlPinMode, {isAlternatorControlEnabled == 1} field = "PWM frequency", alternatorPwmFrequency, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "Off Above TPS", alternatorOffAboveTps, {isAlternatorControlEnabled == 1} field = "Detailed status in console", isVerboseAlternator, {isAlternatorControlEnabled == 1} field = "control period", alternatorControl_periodMs, {isAlternatorControlEnabled == 1} field = "#PID control" field = "offset", alternatorControl_offset, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "P factor", alternatorControl_pFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "I factor", alternatorControl_iFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "D factor", alternatorControl_dFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "Min", alternatorControl_minValue, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "Max", alternatorControl_maxValue, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "#% duty = Pterm + Iterm + Dterm + offset%" dialog = energySystems, "Battery and Alternator Settings", yAxis panel = batteryDialog panel = alternator dialog = speedSensorLeft field = "Input pin", vehicleSpeedSensorInputPin field = "revolution to speed mult", vehicleSpeedCoef dialog = speedSensor, "Speed sensor", xAxis panel = speedSensorLeft gauge = VSSGauge ; Engine->Other inputs dialog = analogInputSettings, "Analog Input Settings" field = "!ECU reboot needed to apply these settings" field = "Use fixed baro corr from MAP", useFixedBaroCorrFromMap field = "Analog divider", analogInputDividerCoefficient field = "Use BiQuad averaging", useBiQuadAnalogFiltering field = "Smoothing factor", slowAdcAlpha, {useBiQuadAnalogFiltering == 0} field = "Bi_Q a0", biQuad_a0, {useBiQuadAnalogFiltering == 1} field = "Bi_Q a1", biQuad_a1, {useBiQuadAnalogFiltering == 1} field = "Bi_Q a2", biQuad_a2, {useBiQuadAnalogFiltering == 1} field = "Bi_Q b1", biQuad_b1, {useBiQuadAnalogFiltering == 1} field = "Bi_Q b2", biQuad_b2, {useBiQuadAnalogFiltering == 1} dialog = tachSettings, "Tachometer output" field = "!See also dizzySparkOutputPin" field = "Pin", tachOutputPin field = "Pin mode", tachOutputPinMode field = "Rise at trigger index", tachPulseTriggerIndex field = "Pulse duration is duty cycle", tachPulseDurationAsDutyCycle field = "Pulse duration", tachPulseDuractionMs ; Board->Connection dialog = tsPort, "TunerStudio Port" field = "tunerStudioSerialSpeed", tunerStudioSerialSpeed field = "Use PC10/PC11 serial?", useSerialPort field = "uartConsoleSerialSpeed", uartConsoleSerialSpeed dialog = canBus, "CAN Bus" field = "Can Read Enabled", canReadEnabled field = "Can Write Enabled", canWriteEnabled field = "Can Nbc Type", canNbcType field = "Can Sleep Period", canSleepPeriodMs field = "RX pin", canRxPin field = "TX pin", canTxPin dialog = sdCard, "SD Card Logger" field = "SdCard", isSdCardEnabled field = "showSdCardWarning", showSdCardWarning field = "CS Pin", sdCardCsPin field = "SPI", sdCardSpiDevice field = "log format", logFormat field = "Mass Storage", storageMode field = "Write Period", sdCardPeriodMs dialog = gpsReceiver, "GPS Receiver" field = "gps RX", gps_rx_pin field = "gps TX", gps_tx_pin dialog = lcdScreen, "LCD screen" field = "display Mode", displayMode field = "height", HD44780height field = "width", HD44780width field = "RS pin", HD44780_rs field = "E pin", HD44780_e field = "D4 pin", HD44780_db4 field = "D5 pin", HD44780_db5 field = "D6 pin", HD44780_db6 field = "D7 pin", HD44780_db7 dialog = tle8888, "TLE8888", yAxis field = "TLE8888 Chip Select", tle8888_cs field = "TLE8888 SPI", tle8888spiDevice field = "useTLE8888_hall_mode", useTLE8888_hall_mode field = "useTLE8888 cranking reset hack", useTLE8888_cranking_hack commandButton = "Reinit", cmd_tle8888_init dialog = connection, "", yAxis field = "ADC vRef voltage", adcVcc panel = tsPort panel = canBus panel = sdCard panel = gpsReceiver panel = tle8888 dialog = joystickPanel, "Joystick" field = "joustick center button", joystickCenterPin field = "joustick button A", joystickAPin field = "joustick button B", joystickBPin field = "joustick button C", joystickCPin field = "joustick button D", joystickDPin dialog = monitoringSettings, "rusEfi Console Settings" field = "Sensor Sniffer", sensorChartMode field = " Threshold", sensorSnifferRpmThreshold field = " Each X cycle", sensorChartFrequency field = "Engine Sniffer", isEngineChartEnabled field = " Threshold", engineSnifferRpmThreshold dialog = generalSettings, "General" field = "!https://rusefi.com/s/fuel" field = "Fuel strategy", fuelAlgorithm dialog = debugging, "Debug" field = "!https://rusefi.com/s/debugmode" field = "Debug mode", debugMode dialog = limits, "Limits" field = "RPM hard limit", rpmHardLimit field = "Boost cut pressure", boostCutPressure ; Engine->Base Engine Settings dialog = engineChars, "Base Engine Settings" topicHelp = "baseHelp" panel = baseEngineConfig panel = generalSettings panel = limits panel = debugging dialog = crankingFuel, "Fuel" field = "Injection mode", crankingInjectionMode field = "!Value '1' is currently recommended" field = "Base fuel pulse width", cranking_baseFuel dialog = crankingIAC, "IAC" field = "Cranking IAC position", crankingIACposition field = "After cranking IAC taper duration", afterCrankingIACtaperDuration field = "Override IAC multiplier for cranking", overrideCrankingIacSetting dialog = crankingIgnition, "Ignition" field = "Advance", crankingTimingAngle, {useSeparateAdvanceForCranking == 0} field = "Use separate Advance Table for cranking", useSeparateAdvanceForCranking field = "Use Advance Corrections for cranking", useAdvanceCorrectionsForCranking field = "Use fixed cranking dwell", useConstantDwellDuringCranking field = "Fixed Cranking Dwell", ignitionDwellForCrankingMs, {useConstantDwellDuringCranking == 1} field = "Cranking Dwell Angle", crankingChargeAngle, {useConstantDwellDuringCranking == 0} dialog = postCrankingEnrichment, "Post-cranking short-time fuel enrichment (NOT IMPLEMENTED #331)" field = "Post-Cranking factor", postCrankingFactor field = "Duration", postCrankingDurationSec dialog = primingFuelPulsePanel, "Priming fuel pulse" field = "Duration at -40C degrees", startOfCrankingPrimingPulse field = "Falloff temperature", primeInjFalloffTemperature ; Cranking->Cranking Settings dialog = crankingDialog, "Cranking Settings" field = "Cranking RPM limit", cranking_rpm field = "Enable cylinder cleanup", isCylinderCleanupEnabled field = "" field = "Enable faster engine spin-up", isFasterEngineSpinUpEnabled panel = primingFuelPulsePanel panel = crankingFuel panel = crankingIgnition panel = crankingIAC panel = postCrankingEnrichment dialog = EngineLoadAccelPanel, "Engine Load (alpha version)" field = "Length", engineLoadAccelLength field = "Accel threshold", engineLoadAccelEnrichmentThreshold field = "Accel multiplier", engineLoadAccelEnrichmentMultiplier field = "Decel threshold", engineLoadDecelEnleanmentThreshold field = "Decel multiplier", engineLoadDecelEnleanmentMultiplier dialog = TpsAccelPanel, "TPS" field = "Set 'Debug Mode' to see detailed 'TPS acceleration enrichment' diagnostics" field = "Length", tpsAccelLength field = "Accel Threshold", tpsAccelEnrichmentThreshold field = "Decel Threshold", tpsDecelEnleanmentThreshold ; field = "Decel Multiplier", tpsDecelEnleanmentMultiplier field = "#Accelerator Pump model:" field = "Fraction Period", tpsAccelFractionPeriod field = "Fraction Divisor", tpsAccelFractionDivisor dialog = WallWettingAccelPanel, "Wall Wetting (alpha version)" field = "evaporation time constant / tau", wwaeTau field = "added to wall coef / beta", wwaeBeta ; Tuning->AccelEnrichment dialog = AccelEnrich, "Accel/Decel Enrichment" panel = TpsAccelPanel panel = WallWettingAccelPanel panel = EngineLoadAccelPanel field = "No accel after RPM hard limit", noAccelAfterHardLimitPeriodSecs ; Flex Logic dialog = fsioIO, "Outputs" field = "output #1", fsioOutputPins1 field = "output #2", fsioOutputPins2 field = "output #3", fsioOutputPins3 field = "output #4", fsioOutputPins4 field = "output #5", fsioOutputPins5 field = "output #6", fsioOutputPins6 field = "output #7", fsioOutputPins7 field = "output #8", fsioOutputPins8 field = "output #9", fsioOutputPins9 field = "output #10", fsioOutputPins10 field = "output #11", fsioOutputPins11 field = "output #12", fsioOutputPins12 field = "output #13", fsioOutputPins13 field = "output #14", fsioOutputPins14 field = "output #15", fsioOutputPins15 field = "output #16", fsioOutputPins16 field = "aux valve #1", auxValves1 field = "aux valve #2", auxValves2 field = "" field = "" dialog = fsioFrequency, "Frequency" field = "freq #1", fsioFrequency1 field = "freq #2", fsioFrequency2 field = "freq #3", fsioFrequency3 field = "freq #4", fsioFrequency4 field = "freq #5", fsioFrequency5 field = "freq #6", fsioFrequency6 field = "freq #7", fsioFrequency7 field = "freq #8", fsioFrequency8 field = "freq #9", fsioFrequency9 field = "freq #10", fsioFrequency10 field = "freq #11", fsioFrequency11 field = "freq #12", fsioFrequency12 field = "freq #13", fsioFrequency13 field = "freq #14", fsioFrequency14 field = "freq #15", fsioFrequency15 field = "freq #16", fsioFrequency16 field = "" field = "" dialog = fsioSetting, "Setting" field = "Set number is not associated with the output number." field = "Set number, only the cell number with some numbers." field = "set #1", fsio_setting1 field = "set #2", fsio_setting2 field = "set #3", fsio_setting3 field = "set #4", fsio_setting4 field = "set #5", fsio_setting5 field = "set #6", fsio_setting6 field = "set #7", fsio_setting7 field = "set #8", fsio_setting8 field = "set #9", fsio_setting9 field = "set #10", fsio_setting10 field = "set #11", fsio_setting11 field = "set #12", fsio_setting12 field = "set #13", fsio_setting13 field = "set #14", fsio_setting14 field = "set #15", fsio_setting15 field = "set #16", fsio_setting16 dialog = fsioOutputsDialog, "FSIO outputs", border panel = fsioIO, West panel = fsioFrequency, Center panel = fsioSetting, East dialog = fsioFormulas, "FSIO Formulas" field = "!FSIO uses Reverse Polish Notation. Please read http://rusefi.com/s/fsio" field = "#1", fsioFormulas1 field = "#2", fsioFormulas2 field = "#3", fsioFormulas3 field = "use FSIO #4 for serious engine warning",useFSIO4ForSeriousEngineWarning field = "#4", fsioFormulas4 field = "use FSIO #5 for critical engine stop", useFSIO5ForCriticalIssueEngineStop field = "#5", fsioFormulas5 field = "#6", fsioFormulas6 field = "#7", fsioFormulas7 field = "use FSIO #8 for servo #1", useFSIO8ForServo1 field = "#8", fsioFormulas8 field = "use FSIO #9 for servo #2", useFSIO9ForServo2 field = "#9", fsioFormulas9 field = "use FSIO #10 for servo #3", useFSIO10ForServo3 field = "#10", fsioFormulas10 field = "use FSIO #11 for servo #4", useFSIO11ForServo4 field = "#11", fsioFormulas11 field = "use FSIO #12 for servo #5", useFSIO12ForServo5 field = "use FSIO #12 idle offset", useFSIO12ForIdleOffset field = "#12", fsioFormulas12 field = "use FSIO #13 idle min value", useFSIO13ForIdleMinValue field = "#13", fsioFormulas13 field = "#14", fsioFormulas14 field = "use FSIO #15 for target idle RPM adjustment", useFSIO15ForIdleRpmAdjustment field = "#15", fsioFormulas15 field = "use FSIO #16 for timing adjustment", useFSIO16ForTimingAdjustment field = "#16", fsioFormulas16 dialog = fsioInputsDialog, "FSIO inputs" field = "ADC #1", fsioAdc1 field = "ADC #2", fsioAdc2 field = "ADC #3", fsioAdc3 field = "ADC #4", fsioAdc4 help = veTableDialogHelp, "Volumetric Efficiency" text = "Volumetric Efficiency is used to calculate fuel in Speed Density mode" webHelp = "https://rusefi.com/s/fuel" help = fuelHelp, "Fuel Control" text = "More about fuel control on the web" webHelp = "https://rusefi.com/s/fuel" help = etbHelp, "ETB Control" text = "More about electronic throttle body on the web" webHelp = "https://rusefi.com/s/etb" help = tpsTpsHelp, "Acceleration Enrichment" text = "More about Tps To Tps acceleration on the web" webHelp = "https://rusefi.com/s/tpstps" help = baseHelp, "Base Settings Control" text = "More about rusefi on the web" webHelp = "https://rusefi.com/" dialog = veTableDialog topicHelp = "veTableDialogHelp" panel = veTableTbl, South dialog = veTableDialog3D, "VE Table" topicHelp = "veTableDialogHelp" panel = veTableMap, South dialog = etbPidDialog, "PID settings" field = "pFactor", etb_pFactor, {throttlePedalPositionAdcChannel != 16} field = "iFactor", etb_iFactor, {throttlePedalPositionAdcChannel != 16} field = "dFactor", etb_dFactor, {throttlePedalPositionAdcChannel != 16} field = "offset", etb_offset, {throttlePedalPositionAdcChannel != 16} field = "control period", etb_periodMs, {throttlePedalPositionAdcChannel != 16} field = "pid min", etb_minValue, {throttlePedalPositionAdcChannel != 16} field = "pid max", etb_maxValue, {throttlePedalPositionAdcChannel != 16} field = "iTermMin", etb_iTermMin, {throttlePedalPositionAdcChannel != 16} field = "iTermMax", etb_iTermMax, {throttlePedalPositionAdcChannel != 16} dialog = etbDialogLeft field = "https://rusefi.com/s/etb" field = "Detailed status in console", isVerboseETB field = "Pause ETB control", pauseEtbControl field = "Throttle Pedal Up", throttlePedalUpVoltage field = "Throttle Pedal Wide Open", throttlePedalWOTVoltage field = "Two-wire mode", etb_use_two_wires, {throttlePedalPositionAdcChannel != 16} field = "PWM Frequency", etbFreq, {throttlePedalPositionAdcChannel != 16} field = etbCalibrationOnStart, etbCalibrationOnStart field = "No1 Direction #1", etb1_directionPin1, {throttlePedalPositionAdcChannel != 16} field = "No1 Direction #2", etb1_directionPin2, {throttlePedalPositionAdcChannel != 16} field = "No1 Control #1", etb1_controlPin1, {throttlePedalPositionAdcChannel != 16 && etb_use_two_wires == 0} field = "No2 Direction #1", etb2_directionPin1, {throttlePedalPositionAdcChannel != 16} field = "No2 Direction #2", etb2_directionPin2, {throttlePedalPositionAdcChannel != 16} field = "No2 Control #1", etb2_controlPin1, {throttlePedalPositionAdcChannel != 16 && etb_use_two_wires == 0} panel = etbPidDialog dialog = etbDialogRight field = "!https://rusefi.com/s/debugmode" field = "Neutral Position", etbNeutralPosition field = "Debug mode", debugMode field = "use ETB for idle", useETBforIdleControl field = "ETB idle maximum angle", etbIdleRange field = "Press buttons to calibrate sensors" field = "You would have to remove air filter to move throttle manually" commandButton = "TPS#1 closed position", cmd_calibrate_tps_1_closed commandButton = "TPS#1 wide open position", cmd_calibrate_tps_1_wot field = "Not many vehicles have two throttle bodies but some do" commandButton = "TPS#2 closed position", cmd_calibrate_tps_2_closed commandButton = "TPS#2 wide open position", cmd_calibrate_tps_2_wot commandButton = "Pedal Up", cmd_calibrate_pedal_up commandButton = "Pedal Down", cmd_calibrate_pedal_down dialog = etbDialog, "Electronic Throttle Body (beta)", border topicHelp = "etbHelp" panel = etbDialogLeft, West panel = etbDialogRight, East dialog = testSpark, "Spark" commandButton = "Spark #1", cmd_test_spk1 commandButton = "Spark #2", cmd_test_spk2 commandButton = "Spark #3", cmd_test_spk3 commandButton = "Spark #4", cmd_test_spk4 commandButton = "Spark #5", cmd_test_spk5 commandButton = "Spark #6", cmd_test_spk6 commandButton = "Spark #7", cmd_test_spk7 commandButton = "Spark #8", cmd_test_spk8 dialog = testInjectors, "Fuel" commandButton = "Injector #1", cmd_test_inj1 commandButton = "Injector #2", cmd_test_inj2 commandButton = "Injector #3", cmd_test_inj3 commandButton = "Injector #4", cmd_test_inj4 commandButton = "Injector #5", cmd_test_inj5 commandButton = "Injector #6", cmd_test_inj6 commandButton = "Injector #7", cmd_test_inj7 commandButton = "Injector #8", cmd_test_inj8 dialog = testMisc, "Misc" commandButton = "Come To Pit", cmd_call_from_pit commandButton = "Fuel Pump", cmd_test_fuel_pump commandButton = "Radiator Fan", cmd_test_radiator_fan commandButton = "Check Engine", cmd_test_check_engine_light commandButton = "Idle Air Valve", cmd_test_idle_valve commandButton = "A/C Relay", cmd_test_ac_relay commandButton = "Stop Engine", cmd_stop_engine commandButton = "Write Config", cmd_write_config commandButton = "Reset ECU", cmd_reset_controller commandButton = "Reset to DFU", cmd_dfu ; bench test dialog = ioTest, "Bench Test & Commands", border panel = testSpark, West panel = testInjectors, Center panel = testMisc, East dialog = engineTypeDialog, "Popular vehicles" field = "!These buttons send a command to rusEfi controller to apply preset values" field = "!Once you send the command, please reconnect to rusEfi controller in order to read fresh values" commandButton = "Miata NA6 Stage 0", cmd_set_engine_type_Miata_NA6_VAF commandButton = "Miata NA6 Stage 1", cmd_set_engine_type_Miata_NA6_MAP commandButton = "Miata NB2 MAP", cmd_set_engine_type_Miata_NA2 commandButton = "ETB test bench", cmd_set_engine_type_etb_test commandButton = "TLE8888B test bench", cmd_set_engine_type_8888_test commandButton = "Reset firmware settings", cmd_set_engine_type_default ; Board->ECU stimulator dialog = ecuStimulator, "ECU stimulator" field = "Trigger Simulator", triggerSimulatorFrequency field = "self-stimulation", directSelfStimulation field = "" field = "digipot spi", digitalPotentiometerSpiDevice field = "digipot CS #0", digitalPotentiometerChipSelect1 field = "digipot CS #1", digitalPotentiometerChipSelect2 field = "digipot CS #2", digitalPotentiometerChipSelect3 field = "digipot CS #3", digitalPotentiometerChipSelect4 field = "" field = "trigger stimulator pin #1", triggerSimulatorPins1 field = "trigger stimulator pin mode #1", triggerSimulatorPinModes1 field = "trigger stimulator pin #2", triggerSimulatorPins2 field = "trigger stimulator pin mode #2", triggerSimulatorPinModes2 field = "trigger stimulator pin #3", triggerSimulatorPins3 field = "trigger stimulator pin mode #3", triggerSimulatorPinModes3 field = "" field = "Logic input channel 1", logicAnalyzerPins1 field = "Logic input channel 2", logicAnalyzerPins2 field = "Logic input channel 3", logicAnalyzerPins3 field = "Logic input channel 4", logicAnalyzerPins4 field = "" field = "Engine chart size", engineChartSize ; Racing Features->Launch Control dialog = smLaunchControl, "Launch Control Settings NOT WORKING" field = "RPM Step1 Limit", step1rpm field = "Launch RPM Window" step1RpmWindow field = "Step1 Ignition Advance", step1timing field = "Use Spark Cut", step1SparkCutEnable field = "Use Fuel Cut", step1fuelCutEnable field = "clutchDownPin", clutchDownPin field = "clutchUpPin", clutchUpPin field = "brakePedalPin", brakePedalPin dialog = coastingFuelCutControl, "Coasting Fuel Cutoff Settings" field = "Enable Coasting Fuel Cutoff", coastingFuelCutEnabled field = "Cutoff Activation RPM High Limit", coastingFuelCutRpmHigh, {coastingFuelCutEnabled == 1} field = "Cutoff Deactivation RPM Low Limit", coastingFuelCutRpmLow, {coastingFuelCutEnabled == 1} field = "TPS Deactivation Threshold", coastingFuelCutTps, {coastingFuelCutEnabled == 1} field = "CLT Activation Threshold", coastingFuelCutClt, {coastingFuelCutEnabled == 1} field = "MAP Deactivation Threshold", coastingFuelCutMap, {coastingFuelCutEnabled == 1} dialog = parkingLot, "Experimental/Broken" field = "#System hacks" field = "Global fuel correction", globalFuelCorrection field = "Ignition Math Logic @", ignMathCalculateAtIndex field = "MAP Averaging Logic @", mapAveragingSchedulingAtIndex field = "Target temperature", postCrankingTargetClt [Tools] ;addTool = toolName, PanelName addTool = veTableGenerator, "VE Table Generator", veTableTbl addTool = afrTableGenerator, "AFR Table Generator", afrTableTbl