diff --git a/firmware/config/boards/48way/connectors/generated_ts_name_by_pin.cpp b/firmware/config/boards/48way/connectors/generated_ts_name_by_pin.cpp index cfaa1bf761..a5f649d367 100755 --- a/firmware/config/boards/48way/connectors/generated_ts_name_by_pin.cpp +++ b/firmware/config/boards/48way/connectors/generated_ts_name_by_pin.cpp @@ -4,44 +4,34 @@ const char * getBoardSpecificPinName(brain_pin_e brainPin) { switch(brainPin) { - default: return nullptr; - case Gpio::E2: return "Fan Relay (E2)"; - case Gpio::E3: return "Fuel Relay (E3)"; - case Gpio::E4: return "Launch Control (E4)"; - case Gpio::E5: return "Tachometer (E5)"; - case Gpio::E6: return "Camshaft Input (E6)"; - case Gpio::A0: return "Battery Reference Input (A0)"; case Gpio::A1: return "TPS Reference Input (A1)"; - case Gpio::A2: return "CLT Reference Input (A2)"; - case Gpio::A3: return "IAT Reference Input (A3)"; - case Gpio::A4: return "O2 Reference Input (A4)"; - case Gpio::C4: return "Fuel Pressure Reference Input (C4)"; - case Gpio::C5: return "Oil Pressure Reference Input (C5)"; - case Gpio::B0: return "MAP Pressure Reference Input (B0)"; - case Gpio::B1: return "BARO Pressure Reference Input (B1)"; - case Gpio::E8: return "Injector 8 Output (E8)"; - case Gpio::E9: return "Injector 7 Output (E9)"; + case Gpio::B14: return "Ignition 4 Output (B14)"; + case Gpio::B15: return "Ignition 3 Output (B15)"; + case Gpio::C6: return "Idle1 Output (C6)"; + case Gpio::C7: return "Boost Controller Output (C7)"; + case Gpio::D10: return "Ignition 8 Output (D10)"; + case Gpio::D11: return "Ignition 7 Output (D11)"; + case Gpio::D12: return "Ignition 1 Output (D12)"; + case Gpio::D13: return "Ignition 2 Output (D13)"; + case Gpio::D14: return "HC2 Output (D14)"; + case Gpio::D15: return "HC1 Output (D15)"; + case Gpio::D8: return "Ignition 5 Output (D8)"; + case Gpio::D9: return "Ignition 6 Output (D9)"; + case Gpio::E1: return "Clutch Input (E1)"; case Gpio::E10: return "Injector 6 Output (E10)"; case Gpio::E11: return "Injector 5 Output (E11)"; case Gpio::E12: return "Injector 4 Output (E12)"; case Gpio::E13: return "Injector 3 Output (E13)"; case Gpio::E14: return "Injector 2 Output (E14)"; case Gpio::E15: return "Injector 1 Output (E15)"; - case Gpio::E1: return "Clutch Input (E1)"; - case Gpio::C7: return "Boost Controller Output (C7)"; - case Gpio::C6: return "IDLE Controller Output (C6)"; - case Gpio::D15: return "HC1 Controller Output (D15)"; - case Gpio::D14: return "HC2 Controller Output (D14)"; - case Gpio::D13: return "Ignition 2 Output (D13)"; - case Gpio::D12: return "Ignition 1 Output (D12)"; - case Gpio::D11: return "Ignition 7 Output (D11)"; - case Gpio::D10: return "Ignition 8 Output (D10)"; - case Gpio::D9: return "Ignition 6 Output (D9)"; - case Gpio::D8: return "Ignition 5 Output (D8)"; - case Gpio::B15: return "Ignition 3 Output (B15)"; - case Gpio::B14: return "Ignition 4 Output (B14)"; - case Gpio::B13: return "CANTX Output (B13)"; - case Gpio::B12: return "CANRX Output (B12)"; + case Gpio::E2: return "Fan Relay (E2)"; + case Gpio::E3: return "Fuel Relay (E3)"; + case Gpio::E4: return "Launch Control (E4)"; + case Gpio::E5: return "Tachometer (E5)"; + case Gpio::E6: return "Camshaft Input (E6)"; + case Gpio::E8: return "Injector 8 Output (E8)"; + case Gpio::E9: return "Injector 7 Output (E9)"; + default: return nullptr; } return nullptr; } diff --git a/firmware/controllers/generated/signature_48way.h b/firmware/controllers/generated/signature_48way.h index dc2e7ad4d5..7ed216c765 100644 --- a/firmware/controllers/generated/signature_48way.h +++ b/firmware/controllers/generated/signature_48way.h @@ -2,5 +2,5 @@ // was generated automatically by rusEFI tool ConfigDefinition.jar based on gen_config.sh null // -#define SIGNATURE_HASH 1757397598 -#define TS_SIGNATURE "rusEFI 2022.05.30.48way.1757397598" +#define SIGNATURE_HASH 3932858116 +#define TS_SIGNATURE "rusEFI 2022.05.30.48way.3932858116" diff --git a/firmware/tunerstudio/generated/rusefi_48way.ini b/firmware/tunerstudio/generated/rusefi_48way.ini new file mode 100644 index 0000000000..9b01caa90e --- /dev/null +++ b/firmware/tunerstudio/generated/rusefi_48way.ini @@ -0,0 +1,7474 @@ +; This is a TunerStudio project for the rusEFI.com engine management system +; +; This file has been generated by invoking gen_config.bat. +; The input files are +; rusefi.input the common template +; rusefi_config.txt the project specific file +; +; In TunerStudio some fields have little question mark on the left of the name for additional field tips. +; Those tips are defined in ../integration/rusefi_config.txt +; +; For example +; +; float bias_resistor;+Pull-up resistor value on your board;"Ohm" +; here 'bias_resistor' is internal field name and the text between semicolons is what produces the tooltip +; Note that '+' sign is required after first semicolon for tooltop to appear in TunerStudio +; +; +; field = "# blue text" +; field = "! red text" +; field = "normal text" +; + +; this should stop TS from looking for the CAN ID in the 2nd byte location and allow the page reads to work correctly. +enable2ndByteCanID = false + +[SettingGroups] + ; the referenceName will over-ride previous, so if you are creating a + ; settingGroup with a reference name of lambdaSensor, it will replace the + ; setting group defined in the settingGroups.xml of the TunerStudio config + ; folder. If is is an undefined referenceName, it will be added. + ; keyword = referenceName, DisplayName + +[MegaTune] + ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 + signature = "rusEFI 2022.05.30.48way.3932858116" + +[TunerStudio] + queryCommand = "S" + versionInfo = "V" ; firmware version for title bar. + signature = "rusEFI 2022.05.30.48way.3932858116" ; signature is expected to be 7 or more characters. + + ; TS will try to use legacy temp units in some cases, showing "deg F" on a CLT gauge that's actually deg C + useLegacyFTempUnits = false + ignoreMissingBitOptions = true + + ; Optimize comms for fast rusEFI ECUs + noCommReadDelay = true; + defaultRuntimeRecordPerSec = 100; + maxUnusedRuntimeRange = 1000; + + ; Set default IP/port to our IP/port + defaultIpAddress = 192.168.10.1; + defaultIpPort = 29000; + +[Constants] +; new packet serial format with CRC + messageEnvelopeFormat = msEnvelope_1.0 + + endianness = little + nPages = 1 + + pageIdentifier = "\x00\x00" + pageReadCommand = "R%2o%2c" + burnCommand = "B" + pageActivate = "P" + pageValueWrite = "W%2o%v" + pageChunkWrite = "C%2o%2c%v" + crc32CheckCommand = "k%2o%2c" + retrieveConfigError = "e" + +;communication settings + pageActivationDelay = 500 ; Milliseconds delay after burn command. See https://sourceforge.net/p/rusefi/tickets/77/ +;e.g. put writeblocks off and add an interwrite delay + writeBlocks = on + interWriteDelay = 10 + blockReadTimeout = 3000; Milliseconds general timeout + + ; delayAfterPortOpen = 500 + + blockingFactor = 256 ; max chunk size +;end communication settings + + ; name = bits, type, offset, bits + ; name = array, type, offset, shape, units, scale, translate, lo, hi, digits + ; name = scalar, type, offset, units, scale, translate, lo, hi, digits + +; CONFIG_DEFINITION_START +; this section was generated automatically by rusEFI tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Mon May 30 19:35:29 UTC 2022 + +pageSize = 21352 +page = 1 +engineType = bits, S32, 0, [0:6], "DEFAULT_FRANKENSO", "MIATA_PROTEUS_TCU", "DODGE_NEON_1995", "FORD_ASPIRE_1996", "MRE_SECONDARY_CAN", "NISSAN_PRIMERA", "PROTEUS_HARLEY", "FORD_INLINE_6_1995", "GY6_139QMB", "PROTEUS_E65_6H_MAN_IN_THE_MIDDLE", "HELLEN_NA8_96", "MRE_MIATA_NB2_MAP", "MRE_MIATA_NA6_VAF", "MRE_MIATA_NB2_ETB", "FORD_ESCORT_GT", "MRE_MIATA_NB2_MAF", "MITSU_4G93", "HONDA_ACCORD_CD_TWO_WIRES", "TEST_33816", "TEST_ROTARY", "MRE_MIATA_94_MAP", "MIATA_1996", "SUBARU_2003_WRX", "MRE_BODY_CONTROL", "BMW_M73_M", "PROTEUS_LUA_DEMO", "TEST_ENGINE", "TEST_ISSUE_898", "TEST_CRANK_ENGINE", "SACHS", "PROTEUS_ANALOG_PWM_TEST", "MRE_BOARD_NEW_TEST", "VW_ABA", "HELLEN72_ETB", "HELLEN_NA6", "CAMARO_4", "HELLEN_128_MERCEDES_4_CYL", "MRE_SUBARU_EJ18", "TOYOTA_JZS147", "PROTEUS_VW_B6", "FRANKENSO_BMW_M73_F", "FRANKENSO_MIATA_NA6_MAP", "PROTEUS_QC_TEST_BOARD", "HONDA_600", "TOYOTA_2JZ_GTE_VVTi", "TEST_ENGINE_VVT", "DODGE_NEON_2003_CRANK", "FRANKENSO_MAZDA_MIATA_2003", "UNUSED_48", "FRANKENSO_QA_ENGINE", "BMW_M73_MRE", "BMW_M73_MRE_SLAVE", "TEST_ISSUE_366_BOTH", "TEST_ISSUE_366_RISE", "MAZDA_MIATA_2003_NA_RAIL", "MAZDA_MIATA_2003_BOARD_TEST", "FRANKENSO_MAZDA_MIATA_NA8", "FRANKENSO_MIATA_NA6_VAF", "ETB_BENCH_ENGINE", "TLE8888_BENCH_ENGINE", "L9779_BENCH_ENGINE", "EEPROM_BENCH_ENGINE", "MRE_VW_B6", "PROTEUS_BMW_M73", "DODGE_RAM", "CITROEN_TU3JP", "MRE_MIATA_NA6_MAP", "PROTEUS_MIATA_NB2", "MRE_M111", "HELLEN_NB2", "SUBARUEG33_DEFAULTS", "HELLEN_121_VAG_4_CYL", "HELLEN_121_NISSAN_6_CYL", "HELLEN_55_BMW", "HELLEN_88_BMW", "HELLEN_134_BMW", "HELLEN_154_VAG", "HELLEN_121_VAG_5_CYL", "HELLEN_121_VAG_V6_CYL", "HELLEN_121_VAG_VR6_CYL", "HELLEN_NA94", "HELLEN_121_VAG_8_CYL", "HELLEN_154_HYUNDAI_COUPE_BK1", "HELLEN_NB1", "HELLEN_121_NISSAN_4_CYL", "HELLEN_121_NISSAN_8_CYL", "HELLEN_NB2_36", "HELLEN_121_NISSAN_ALMERA_N16", "HELLEN_128_MERCEDES_6_CYL", "HELLEN_128_MERCEDES_8_CYL", "PROTEUS_HONDA_ELEMENT_2003", "PROTEUS_HONDA_OBD2A", "PROTEUS_VAG_80_18T", "PROTEUS_N73", "HELLEN_NB1_36", "HELLEN_154_HYUNDAI_COUPE_BK2", "ET_UNUSED96", "ET_UNUSED97", "ET_UNUSED98", "MINIMAL_PINS", "TEST_100", "TEST_101", "TEST_102", "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" +sensorSnifferRpmThreshold = scalar, U08, 4, "RPM", 50.0, 0, 0, 30000, 0 +rpmHardLimit = scalar, U08, 5, "rpm", 50.0, 0, 0, 20000, 2 +launchRpm = scalar, U08, 6, "rpm", 50.0, 0, 0, 20000, 2 +engineSnifferRpmThreshold = scalar, U08, 7, "RPM", 50.0, 0, 0, 30000, 0 +multisparkMaxRpm = scalar, U08, 8, "rpm", 50.0, 0, 0, 3000, 0 +maxAcRpm = scalar, U08, 9, "rpm", 50.0, 0, 0, 10000, 0 +maxAcTps = scalar, U08, 10, "%", 1, 0, 0, 100, 0 +maxAcClt = scalar, U08, 11, "deg C", 1, 0, 0, 150, 0 +knockNoiseRpmBins = array, U08, 12, [16], "RPM", 50.0, 0, 0, 18000, 2 +multisparkMaxSparkingAngle = scalar, U08, 28, "deg", 1, 0, 0, 60, 0 +multisparkMaxExtraSparkCount = scalar, U08, 29, "count", 1, 0, 1, 5, 0 +injector_flow = scalar, F32, 32, "cm3/min", 1, 0, 0, 99999, 2 +injector_battLagCorrBins = array, F32, 36, [8], "volts", 1, 0, 0, 20, 2 +injector_battLagCorr = array, F32, 68, [8], "ms", 1, 0, 0, 50, 2 +isForcedInduction = bits, U32, 100, [0:0], "false", "true" +useFordRedundantTps = bits, U32, 100, [1:1], "false", "true" +isVerboseAuxPid1 = bits, U32, 100, [2:2], "false", "true" +overrideTriggerGaps = bits, U32, 100, [3:3], "false", "true" +enableFan1WithAc = bits, U32, 100, [4:4], "false", "true" +enableFan2WithAc = bits, U32, 100, [5:5], "false", "true" +disableFan1WhenStopped = bits, U32, 100, [6:6], "false", "true" +disableFan2WhenStopped = bits, U32, 100, [7:7], "false", "true" +enableTrailingSparks = bits, U32, 100, [8:8], "false", "true" +isCJ125Verbose = bits, U32, 100, [9:9], "false", "true" +cj125isUaDivided = bits, U32, 100, [10:10], "false", "true" +cj125isLsu49 = bits, U32, 100, [11:11], "false", "true" +etb_use_two_wires = bits, U32, 100, [12:12], "false", "true" +isDoubleSolenoidIdle = bits, U32, 100, [13:13], "false", "true" +useEeprom = bits, U32, 100, [14:14], "false", "true" +cj125isUrDivided = bits, U32, 100, [15:15], "false", "true" +useCicPidForIdle = bits, U32, 100, [16:16], "false", "true" +useTLE8888_cranking_hack = bits, U32, 100, [17:17], "false", "true" +useInstantRpmForIdle = bits, U32, 100, [18:18], "false", "true" +useSeparateIdleTablesForCrankingTaper = bits, U32, 100, [19:19], "false", "true" +launchControlEnabled = bits, U32, 100, [20:20], "false", "true" +rollingLaunchEnabled = bits, U32, 100, [21:21], "false", "true" +antiLagEnabled = bits, U32, 100, [22:22], "false", "true" +useRunningMathForCranking = bits, U32, 100, [23:23], "Fixed", "Fuel Map" +displayLogicLevelsInEngineSniffer = bits, U32, 100, [24:24], "false", "true" +useTLE8888_stepper = bits, U32, 100, [25:25], "false", "true" +enableMapEstimationTableFallback = bits, U32, 100, [26:26], "false", "true" +usescriptTableForCanSniffingFiltering = bits, U32, 100, [27:27], "false", "true" +verboseCan = bits, U32, 100, [28:28], "Do not print", "Print all" +artificialTestMisfire = bits, U32, 100, [29:29], "No thank you", "Danger Mode" +issue_294_31 = bits, U32, 100, [30:30], "nada_example", "si_example" +unusedBit_45_31 = bits, U32, 100, [31:31], "false", "true" +tpsMin = scalar, S16, 104, "ADC", 1, 0, 0, 1023, 0 +tpsMax = scalar, S16, 106, "ADC", 1, 0, 0, 1023, 0 +tpsErrorDetectionTooLow = scalar, S16, 108, "%", 1, 0, -10, 0, 0 +tpsErrorDetectionTooHigh = scalar, S16, 110, "%", 1, 0, 100, 110, 0 +cranking_baseFuel = scalar, F32, 112, "mg", 1, 0, 0, 500, 1 +cranking_rpm = scalar, S16, 116, "RPM", 1, 0, 0, 3000, 0 +ignitionDwellForCrankingMs = scalar, F32, 120, "ms", 1, 0, 0, 200, 1 +etbRevLimitStart = scalar, U16, 124, "rpm", 1, 0, 0, 15000, 0 +etbRevLimitRange = scalar, U16, 126, "rpm", 1, 0, 0, 2000, 0 +map_samplingAngleBins = array, F32, 128, [8], "", 1, 0, 0, 18000, 2 +map_samplingAngle = array, F32, 160, [8], "deg", 1, 0, -720, 720, 2 +map_samplingWindowBins = array, F32, 192, [8], "", 1, 0, 0, 18000, 2 +map_samplingWindow = array, F32, 224, [8], "deg", 1, 0, -720, 720, 2 +map_sensor_lowValue = scalar, F32, 256, "kpa", 1, 0, -400, 800, 2 +map_sensor_highValue = scalar, F32, 260, "kpa", 1, 0, -400, 800, 2 +map_sensor_type = bits, U08, 264, [0:4], "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "GM 3 Bar", "MPX4100", "Toyota 89420-02010", "MPX4250A", "Bosch 2.5", "Mazda1Bar", "GM 2 Bar", "GM 1 Bar", "MPXH6400", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +map_sensor_hwChannel = bits, U08, 265, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +clt_tempC_1 = scalar, F32, 268, "*C", 1, 0, -40, 200, 1 +clt_tempC_2 = scalar, F32, 272, "*C", 1, 0, -40, 200, 1 +clt_tempC_3 = scalar, F32, 276, "*C", 1, 0, -40, 200, 1 +clt_resistance_1 = scalar, F32, 280, "Ohm", 1, 0, 0, 200000, 1 +clt_resistance_2 = scalar, F32, 284, "Ohm", 1, 0, 0, 200000, 1 +clt_resistance_3 = scalar, F32, 288, "Ohm", 1, 0, 0, 200000, 1 +clt_bias_resistor = scalar, F32, 292, "Ohm", 1, 0, 0, 200000, 1 +clt_adcChannel = bits, U08, 296, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +iat_tempC_1 = scalar, F32, 300, "*C", 1, 0, -40, 200, 1 +iat_tempC_2 = scalar, F32, 304, "*C", 1, 0, -40, 200, 1 +iat_tempC_3 = scalar, F32, 308, "*C", 1, 0, -40, 200, 1 +iat_resistance_1 = scalar, F32, 312, "Ohm", 1, 0, 0, 200000, 1 +iat_resistance_2 = scalar, F32, 316, "Ohm", 1, 0, 0, 200000, 1 +iat_resistance_3 = scalar, F32, 320, "Ohm", 1, 0, 0, 200000, 1 +iat_bias_resistor = scalar, F32, 324, "Ohm", 1, 0, 0, 200000, 1 +iat_adcChannel = bits, U08, 328, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +launchTimingRetard = scalar, S32, 332, "deg", 1, 0, -180, 180, 2 +hip9011PrescalerAndSDO = scalar, S32, 336, "integer", 1, 0, 0, 32, 0 +knockBandCustom = scalar, F32, 340, "kHz", 1, 0, 0, 20, 2 +displacement = scalar, F32, 344, "L", 1, 0, 0, 1000, 2 +cylindersCount = scalar, U32, 348, "", 1, 0, 1, 12, 0 +firingOrder = bits, U08, 352, [0:5], "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", "1-3-7-2-6-5-4-8", "1-2-3-4-5-6-7-8-9", "INVALID", "1-2-3-4-5-6-7-8-9-10-11-12", "1-3-2", "1-2-3-4-5-6-7-8", "1-5-4-8-6-3-7-2", "1-4-3-6-2-5", "1-8-7-3-6-5-4-2", "1-6-2-4-3-5", "1-6-5-4-3-2", "1-4-5-2-3-6", "fo32", "fo33", "fo34", "fo35", "fo36", "fo37", "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" +cylinderBore = scalar, F32, 356, "mm", 1, 0, 0, 20000, 2 +fuelAlgorithm = bits, U08, 360, [0:2], "INVALID", "INVALID", "INVALID", "Speed Density", "MAF Air Charge", "Alpha-N", "Lua", "INVALID" +crankingInjectionMode = bits, U08, 364, [0:1], "Simultaneous", "Sequential", "Batch", "Single Point" +injectionMode = bits, U08, 365, [0:1], "Simultaneous", "Sequential", "Batch", "Single Point" +unusedHere1341234 = scalar, F32, 368, "", 1, 0, 0, 100, 0 +crankingTimingAngle = scalar, F32, 372, "deg", 1, 0, -30, 30, 0 +ignitionMode = bits, U08, 376, [0:1], "Single Coil", "Individual Coils", "Wasted Spark", "Two Distributors" +gapTrackingLengthOverride = scalar, S08, 377, "count", 1, 0, 0, 18, 0 +maxIdleVss = scalar, U08, 378, "kph", 1, 0, 0, 100, 0 +minOilPressureAfterStart = scalar, U16, 380, "kPa", 1, 0, 0, 1000, 0 +timingMode = bits, U08, 382, [0:0], "dynamic", "fixed" +fixedModeTiming = scalar, F32, 384, "RPM", 1, 0, 0, 3000, 0 +globalTriggerAngleOffset = scalar, F32, 388, "deg btdc", 1, 0, -720, 720, 0 +analogInputDividerCoefficient = scalar, F32, 392, "coef", 1, 0, 0.01, 10, 2 +vbattDividerCoeff = scalar, F32, 396, "coef", 1, 0, 0.01, 99, 2 +fanOnTemperature = scalar, F32, 400, "deg C", 1, 0, 0, 150, 0 +fanOffTemperature = scalar, F32, 404, "deg C", 1, 0, 0, 150, 0 +driveWheelRevPerKm = scalar, F32, 408, "revs/km", 1, 0, 100, 1000, 1 +canNbcType = bits, U08, 412, [0:4], "None", "FIAT", "VAG", "MAZDA RX8", "BMW", "W202", "BMW E90", "Haltech", "VAG MQB", "Nissan VQ35", "Genesis Coupe", "Honda K", "AiM", "type 13", "type 14", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +canSleepPeriodMs = scalar, S32, 416, "ms", 1, 0, 0, 1000, 2 +displayMode = bits, U08, 420, [0:1], "none", "hd44780", "hd44780 over pcf8574", "INVALID" +byFirmwareVersion = scalar, S32, 424, "index", 1, 0, 0, 300, 0 +HD44780width = scalar, S32, 428, "index", 1, 0, 0, 300, 0 +HD44780height = scalar, S32, 432, "index", 1, 0, 0, 300, 0 +tps1_1AdcChannel = bits, U08, 436, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +vbattAdcChannel = bits, U08, 437, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +fuelLevelSensor = bits, U08, 438, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tps2_1AdcChannel = bits, U08, 439, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +idle_derivativeFilterLoss = scalar, F32, 440, "x", 1, 0, -1000000, 1000000, 4 +trailingSparkAngle = scalar, S32, 444, "angle", 1, 0, 0, 720, 0 +trigger_type = bits, U32, 448, [0:6], "custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "INVALID", "GM_7X", "Cooper R50", "Mazda SOHC 4", "60/2", "36/1", "Mercedes Two Segment", "Mitsubishi 4G93", "Honda 4+24", "Honda 1+4+24", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "INVALID", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Honda 1+24", "Dodge Stratus", "36_2_2_2", "Nissan Primera", "dev 2JZ 3/34 simulator", "Rover K", "GM 24x 5 degree", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped", "Dodge Neon 2003 crank", "Miata NB", "INVALID", "INVALID", "Subaru 7+6", "Jeep 18-2-2-2", "12 tooth crank", "Dodge Neon 1995 crank only", "Jeep XJ 4 cyl", "FiatIAQ_P8", "Mazda Z5", "INVALID", "Renix 44-2-2", "Renix 66-2-2-2", "Honda K 12+1", "INVALID", "36/2", "Subaru SVX", "1+16", "Subaru 7 without 6", "INVALID", "TriTach", "GM 60/2/2/2", "Skoda Favorit", "Barra 3+1 Cam", "Kawa KX450F", "Nissan VQ35", "INVALID", "Nissan VQ30", "Nissan QR25", "Mitsubishi 3A92", "Subaru SVX Crank 1", "Subaru SVX Cam VVT", "Ford PIP", "Suzuki G13B", "Honda K 4+1", "Nissan MR18 Crank", "32/2", "36-2-1", "36-2-1-1", "INVALID", "INVALID", "GM 24x 3 degree", "trg75", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +trigger_customTotalToothCount = scalar, S32, 452, "number", 1, 0, 0, 500, 0 +trigger_customSkippedToothCount = scalar, S32, 456, "number", 1, 0, 0, 500, 0 +unused460 = scalar, S32, 460, "", 1, 0, 0, 100, 0 +hip9011SpiDevice = bits, U08, 464, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "INVALID", "INVALID", "INVALID" +failedMapFallback = scalar, U08, 465, "kPa", 1, 0, 0, 100, 0 +boostControlSafeDutyCycle = scalar, U08, 466, "%", 1, 0, 0, 100, 0 +mafAdcChannel = bits, U08, 467, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +globalFuelCorrection = scalar, F32, 468, "coef", 1, 0, 0, 1000, 2 +adcVcc = scalar, F32, 472, "volts", 1, 0, 0, 6, 3 +mapCamDetectionAnglePosition = scalar, F32, 476, "Deg", 1, 0, 0, 360, 0 +camInputs1 = bits, U16, 480, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +camInputs2 = bits, U16, 482, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +camInputs3 = bits, U16, 484, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +camInputs4 = bits, U16, 486, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + +afr_hwChannel = bits, U08, 488, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +afr_v1 = scalar, F32, 492, "volts", 1, 0, 0, 10, 2 +afr_value1 = scalar, F32, 496, "AFR", 1, 0, 0, 1000, 2 +afr_v2 = scalar, F32, 500, "volts", 1, 0, 0, 10, 2 +afr_value2 = scalar, F32, 504, "AFR", 1, 0, 0, 1000, 2 +throttlePedalPositionAdcChannel = bits, U08, 508, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tle6240_cs = bits, U16, 510, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tle6240_csPinMode = bits, U08, 512, [0:1], "default", "default inverted", "open collector", "open collector inverted" +throttlePedalUpPin = bits, U08, 514, [0:7], 0="NONE",3="TPS Reference Input (A1)",70="Launch Control (E4)",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +baroSensor_lowValue = scalar, F32, 516, "kpa", 1, 0, -400, 800, 2 +baroSensor_highValue = scalar, F32, 520, "kpa", 1, 0, -400, 800, 2 +baroSensor_type = bits, U08, 524, [0:4], "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "GM 3 Bar", "MPX4100", "Toyota 89420-02010", "MPX4250A", "Bosch 2.5", "Mazda1Bar", "GM 2 Bar", "GM 1 Bar", "MPXH6400", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +baroSensor_hwChannel = bits, U08, 525, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +idle_solenoidFrequency = scalar, S32, 528, "Hz", 1, 0, 0, 3000, 0 +idle_solenoidPin = bits, U16, 532, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +idle_stepperDirectionPin = bits, U16, 534, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +idle_stepperStepPin = bits, U16, 536, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +idle_solenoidPinMode = bits, U08, 538, [0:1], "default", "default inverted", "open collector", "open collector inverted" +manIdlePosition = scalar, F32, 540, "%", 1, 0, 0, 100, 0 +knockRetardAggression = scalar, U08, 544, "%", 0.1, 0, 0, 20, 1 +knockRetardReapplyRate = scalar, U08, 545, "deg/s", 0.1, 0, 0, 10, 1 +knockRetardMaximum = scalar, U08, 546, "deg", 1, 0, 0, 30, 0 +vssFilterReciprocal = scalar, U08, 547, "", 1, 0, 2, 200, 0 +vssGearRatio = scalar, U16, 548, "ratio", 0.001, 0, 0, 60, 3 +vssToothCount = scalar, U08, 550, "count", 1, 0, 1, 100, 0 +l9779_cs = bits, U16, 552, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +triggerSimulatorFrequency = scalar, S32, 556, "Rpm", 1, 0, 0, 30000, 0 +injectionPins1 = bits, U16, 560, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +injectionPins2 = bits, U16, 562, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +injectionPins3 = bits, U16, 564, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +injectionPins4 = bits, U16, 566, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +injectionPins5 = bits, U16, 568, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +injectionPins6 = bits, U16, 570, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +injectionPins7 = bits, U16, 572, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +injectionPins8 = bits, U16, 574, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +injectionPins9 = bits, U16, 576, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +injectionPins10 = bits, U16, 578, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +injectionPins11 = bits, U16, 580, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +injectionPins12 = bits, U16, 582, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignitionPins1 = bits, U16, 584, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignitionPins2 = bits, U16, 586, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignitionPins3 = bits, U16, 588, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignitionPins4 = bits, U16, 590, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignitionPins5 = bits, U16, 592, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignitionPins6 = bits, U16, 594, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignitionPins7 = bits, U16, 596, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignitionPins8 = bits, U16, 598, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignitionPins9 = bits, U16, 600, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignitionPins10 = bits, U16, 602, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignitionPins11 = bits, U16, 604, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignitionPins12 = bits, U16, 606, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +injectionPinMode = bits, U08, 608, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ignitionPinMode = bits, U08, 609, [0:1], "default", "default inverted", "open collector", "open collector inverted" +HD44780_rs = bits, U16, 610, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +HD44780_e = bits, U16, 612, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +HD44780_db4 = bits, U16, 614, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +HD44780_db5 = bits, U16, 616, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +HD44780_db6 = bits, U16, 618, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +HD44780_db7 = bits, U16, 620, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gps_rx_pin = bits, U16, 622, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gps_tx_pin = bits, U16, 624, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +fuelPumpPin = bits, U16, 626, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +fuelPumpPinMode = bits, U08, 628, [0:1], "default", "default inverted", "open collector", "open collector inverted" +malfunctionIndicatorPin = bits, U16, 630, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +malfunctionIndicatorPinMode = bits, U08, 632, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fanPinMode = bits, U08, 633, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fanPin = bits, U16, 634, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +clutchDownPin = bits, U08, 636, [0:7], 0="NONE",3="TPS Reference Input (A1)",70="Launch Control (E4)",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +alternatorControlPin = bits, U16, 638, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +alternatorControlPinMode = bits, U08, 640, [0:1], "default", "default inverted", "open collector", "open collector inverted" +clutchDownPinMode = bits, U08, 641, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +digitalPotentiometerChipSelect1 = bits, U16, 642, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +digitalPotentiometerChipSelect2 = bits, U16, 644, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +digitalPotentiometerChipSelect3 = bits, U16, 646, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +digitalPotentiometerChipSelect4 = bits, U16, 648, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +electronicThrottlePin1Mode = bits, U08, 650, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wboHeaterPin = bits, U16, 652, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +cj125CsPin = bits, U16, 654, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +max31855spiDevice = bits, U08, 656, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "INVALID", "INVALID", "INVALID" +debugTriggerSync = bits, U16, 658, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +digitalPotentiometerSpiDevice = bits, U08, 660, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "INVALID", "INVALID", "INVALID" +mc33972_cs = bits, U16, 662, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +mc33972_csPinMode = bits, U08, 664, [0:1], "default", "default inverted", "open collector", "open collector inverted" +auxFastSensor1_adcChannel = bits, U08, 665, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tps1_2AdcChannel = bits, U08, 666, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tps2_2AdcChannel = bits, U08, 667, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +throttlePedalPositionSecondAdcChannel = bits, U08, 668, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +fuelLevelValues = array, U08, 669, [8], "%", 1, 0, 0, 100, 0 +afr_type = bits, S08, 677, [0:2], "BPSX", "Innovate", "14Point7", "Narrow", "PLX", "Custom", "INVALID", "INVALID" +idle_antiwindupFreq = scalar, F32, 680, "x", 1, 0, -1000000, 1000000, 4 +triggerInputPins1 = bits, U16, 684, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +triggerInputPins2 = bits, U16, 686, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +triggerInputPins3 = bits, U16, 688, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +hip9011CsPinMode = bits, U08, 690, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tachOutputPin = bits, U16, 692, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tachOutputPinMode = bits, U08, 694, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mainRelayPin = bits, U16, 696, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +sdCardCsPin = bits, U16, 698, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +canTxPin = bits, U16, 700, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +canRxPin = bits, U16, 702, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +throttlePedalUpPinMode = bits, U08, 704, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acIdleExtraOffset = scalar, U08, 705, "%", 1, 0, 0, 100, 0 +finalGearRatio = scalar, U16, 706, "ratio", 0.01, 0, 0, 10, 2 +tcuInputSpeedSensorPin = bits, U16, 708, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tcuInputSpeedSensorTeeth = scalar, U08, 710, "", 1, 0, 0, 100, 0 +wastegatePositionMin = scalar, U16, 712, "mv", 1, 0, 0, 5000, 0 +wastegatePositionMax = scalar, U16, 714, "mv", 1, 0, 0, 5000, 0 +idlePositionMin = scalar, U16, 716, "mv", 1, 0, 0, 5000, 0 +idlePositionMax = scalar, U16, 718, "mv", 1, 0, 0, 5000, 0 +tunerStudioSerialSpeed = scalar, U32, 720, "BPs", 1, 0, 0, 1000000, 0 +compressionRatio = scalar, F32, 724, "CR", 1, 0, 0, 300, 1 +triggerSimulatorPins1 = bits, U16, 728, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +triggerSimulatorPins2 = bits, U16, 730, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +triggerSimulatorPins3 = bits, U16, 732, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +triggerSimulatorPinModes1 = bits, U08, 734, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 735, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes3 = bits, U08, 736, [0:1], "default", "default inverted", "open collector", "open collector inverted" +o2heaterPin = bits, U16, 738, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +o2heaterPinModeTodO = bits, U08, 740, [0:1], "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" +rusefiVerbose29b = bits, U32, 744, [4:4], "11 bit", "29 bit" +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" +verboseTLE8888 = bits, U32, 744, [13:13], "false", "true" +enableVerboseCanTx = 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], "Falling", "Rising" +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" +disableEtbWhenEngineStopped = 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" +enableAemXSeries = bits, U32, 744, [31:31], "false", "true" +logicAnalyzerPins1 = bits, U16, 748, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +logicAnalyzerPins2 = bits, U16, 750, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +logicAnalyzerPins3 = bits, U16, 752, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +logicAnalyzerPins4 = bits, U16, 754, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +mainRelayPinMode = bits, U08, 756, [0:1], "default", "default inverted", "open collector", "open collector inverted" +hip9011CsPin = bits, U16, 758, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +hip9011IntHoldPin = bits, U16, 760, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +hip9011IntHoldPinMode = bits, U08, 762, [0:1], "default", "default inverted", "open collector", "open collector inverted" +verboseCanBaseAddress = scalar, U32, 764, "", 1, 0, 0, 536870911, 0 +mc33_hvolt = scalar, U08, 768, "v", 1, 0, 40, 70, 0 +minimumBoostClosedLoopMap = scalar, U08, 769, "kPa", 1, 0, 0, 255, 0 +acFanPin = bits, U16, 770, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +acFanPinMode = bits, U08, 772, [0:1], "default", "default inverted", "open collector", "open collector inverted" +l9779spiDevice = bits, U08, 773, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "INVALID", "INVALID", "INVALID" +dwellVoltageCorrVoltBins = array, U08, 774, [8], "volts", 0.1, 0, 0, 20, 1 +imuType = bits, U08, 782, [0:4], "None", "VAG", "MM5.10", "type 2", "type 2", "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" +dwellVoltageCorrValues = array, U08, 783, [8], "multiplier", 0.02, 0, 0, 5, 2 +vehicleWeight = scalar, U16, 792, "kg", 1, 0, 0, 10000, 0 +idlePidRpmUpperLimit = scalar, S16, 794, "RPM", 1, 0, 0, 500, 0 +applyNonlinearBelowPulse = scalar, U16, 796, "ms", 0.001, 0, 0, 30, 3 +lps25BaroSensorScl = bits, U16, 798, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +lps25BaroSensorSda = bits, U16, 800, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +vehicleSpeedSensorInputPin = bits, U16, 802, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +clutchUpPin = bits, U08, 804, [0:7], 0="NONE",3="TPS Reference Input (A1)",70="Launch Control (E4)",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +injectorNonlinearMode = bits, U08, 806, [0:0], "None", "Polynomial" +clutchUpPinMode = bits, U08, 807, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +max31855_cs1 = bits, U16, 808, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +max31855_cs2 = bits, U16, 810, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +max31855_cs3 = bits, U16, 812, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +max31855_cs4 = bits, U16, 814, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +max31855_cs5 = bits, U16, 816, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +max31855_cs6 = bits, U16, 818, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +max31855_cs7 = bits, U16, 820, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +max31855_cs8 = bits, U16, 822, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +flexSensorPin = bits, U16, 824, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +test557pin = bits, U16, 826, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +stepperDirectionPinMode = bits, U08, 828, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33972spiDevice = bits, U08, 829, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "INVALID", "INVALID", "INVALID" +stoichRatioSecondary = scalar, U08, 830, ":1", 0.1, 0, 5, 25, 1 +etbMaximumPosition = scalar, U08, 831, "%", 1, 0, 70, 100, 0 +sdCardPeriodMs = scalar, S16, 832, "ms", 1, 0, 0, 30000, 0 +idlePositionSensor = bits, U08, 834, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +debugMapAveraging = bits, U16, 836, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +starterRelayDisablePin = bits, U16, 838, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +starterRelayDisablePinMode = bits, U08, 840, [0:1], "default", "default inverted", "open collector", "open collector inverted" +secondSolenoidPin = bits, U16, 842, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +startStopButtonPin = bits, U08, 844, [0:7], 0="NONE",3="TPS Reference Input (A1)",70="Launch Control (E4)",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +mapMinBufferLength = scalar, S32, 848, "count", 1, 0, 1, 24, 0 +idlePidDeactivationTpsThreshold = scalar, S16, 852, "%", 1, 0, 0, 50, 0 +stepperParkingExtraSteps = scalar, S16, 854, "%", 1, 0, 0, 3000, 0 +tps1SecondaryMin = scalar, U16, 856, "ADC", 1, 0, 0, 1000, 0 +tps1SecondaryMax = scalar, U16, 858, "ADC", 1, 0, 0, 1000, 0 +antiLagRpmTreshold = scalar, S16, 860, "rpm", 1, 0, 0, 20000, 0 +startCrankingDuration = scalar, U16, 862, "Seconds", 1, 0, 0, 30, 0 +triggerErrorPin = bits, U16, 864, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +triggerErrorPinMode = bits, U08, 866, [0:1], "default", "default inverted", "open collector", "open collector inverted" +acRelayPin = bits, U16, 868, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +acRelayPinMode = bits, U08, 870, [0:1], "default", "default inverted", "open collector", "open collector inverted" +scriptSetting1 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 896, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 900, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 904, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi1misoPin = bits, U16, 906, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi1sckPin = bits, U16, 908, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi2mosiPin = bits, U16, 910, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi2misoPin = bits, U16, 912, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi2sckPin = bits, U16, 914, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi3mosiPin = bits, U16, 916, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi3misoPin = bits, U16, 918, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi3sckPin = bits, U16, 920, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +cdmInputPin = bits, U16, 922, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +joystickCenterPin = bits, U16, 924, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +joystickAPin = bits, U16, 926, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +joystickBPin = bits, U16, 928, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +joystickCPin = bits, U16, 930, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +joystickDPin = bits, U16, 932, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +consoleUartDevice = bits, U08, 934, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 935, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 936, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 940, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 940, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 940, [2:2], "false", "true" +multisparkEnable = bits, U32, 940, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 940, [4:4], "false", "true" +unfinishedenableLaunchBoost = bits, U32, 940, [5:5], "false", "true" +unfinishedlaunchDisableBySpeed = bits, U32, 940, [6:6], "false", "true" +enableCanVss = bits, U32, 940, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 940, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 940, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 940, [10:10], "false", "true" +tempBooleanForVerySpecialCases = bits, U32, 940, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 940, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 940, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 940, [14:14], "false", "true" +consumeObdSensors = bits, U32, 940, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 940, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 940, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 940, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 940, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 940, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 940, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 940, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 940, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 940, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 940, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 940, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 940, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 940, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 940, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 940, [30:30], "false", "true" +verboseCan2 = bits, U32, 940, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 944, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +etbIo1_directionPin2 = bits, U16, 946, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +etbIo1_controlPin = bits, U16, 948, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +etbIo1_disablePin = bits, U16, 950, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +etbIo2_directionPin1 = bits, U16, 952, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +etbIo2_directionPin2 = bits, U16, 954, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +etbIo2_controlPin = bits, U16, 956, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +etbIo2_disablePin = bits, U16, 958, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +boostControlPin = bits, U16, 960, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +boostControlPinMode = bits, U08, 962, [0:1], "default", "default inverted", "open collector", "open collector inverted" +antiLagActivatePin = bits, U08, 964, [0:7], 0="NONE",3="TPS Reference Input (A1)",70="Launch Control (E4)",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +launchActivatePin = bits, U08, 966, [0:7], 0="NONE",3="TPS Reference Input (A1)",70="Launch Control (E4)",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +boostPid_pFactor = scalar, F32, 968, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 972, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 976, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 980, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 982, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 984, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 986, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 988, [0:0], "Open Loop", "Closed Loop" +boostPwmFrequency = scalar, S32, 992, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 996, [0:1], "Launch Button", "Clutch Down Switch", "Always Active(Disabled By Speed)", "INVALID" +antiLagActivationMode = bits, S08, 997, [0:0], "Always Active", "Switch Input" +launchSpeedThreshold = scalar, S32, 1000, "Kph", 1, 0, 0, 300, 0 +launchTimingRpmRange = scalar, S32, 1004, "RPM", 1, 0, 0, 8000, 0 +launchFuelAdded = scalar, S32, 1008, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 1012, "%", 1, 0, 0, 100, 0 +hardCutRpmRange = scalar, S32, 1016, "rpm", 1, 0, 0, 3000, 2 +launchAdvanceRpmRange = scalar, S32, 1020, "rpm", 1, 0, 0, 20000, 0 +launchTpsTreshold = scalar, S32, 1024, "rpm", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1028, "rpm", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1032, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1033, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1034, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1035, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1036, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1037, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1038, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1039, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1040, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1041, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1042, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1044, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1045, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1046, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1048, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1049, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1050, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1052, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1053, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1054, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1056, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +stepperDcIo1_directionPin2 = bits, U16, 1058, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +stepperDcIo1_controlPin = bits, U16, 1060, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +stepperDcIo1_disablePin = bits, U16, 1062, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +stepperDcIo2_directionPin1 = bits, U16, 1064, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +stepperDcIo2_directionPin2 = bits, U16, 1066, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +stepperDcIo2_controlPin = bits, U16, 1068, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +stepperDcIo2_disablePin = bits, U16, 1070, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +engineMake = string, ASCII, 1072, 32 +engineCode = string, ASCII, 1104, 32 +vehicleName = string, ASCII, 1136, 32 +tcu_solenoid1 = bits, U16, 1168, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tcu_solenoid2 = bits, U16, 1170, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tcu_solenoid3 = bits, U16, 1172, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tcu_solenoid4 = bits, U16, 1174, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tcu_solenoid5 = bits, U16, 1176, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tcu_solenoid6 = bits, U16, 1178, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +etbFunctions1 = bits, U08, 1180, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1181, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1182, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "INVALID", "INVALID", "INVALID" +drv8860_cs = bits, U16, 1184, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +drv8860_csPinMode = bits, U08, 1186, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1188, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +fuelLevelBins = array, U16, 1190, [8], "volt", 0.001, 0, 0, 5, 3 +luaOutputPins1 = bits, U16, 1206, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +luaOutputPins2 = bits, U16, 1208, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +luaOutputPins3 = bits, U16, 1210, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +luaOutputPins4 = bits, U16, 1212, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +luaOutputPins5 = bits, U16, 1214, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +luaOutputPins6 = bits, U16, 1216, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +luaOutputPins7 = bits, U16, 1218, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +luaOutputPins8 = bits, U16, 1220, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +vvtOffsets1 = scalar, F32, 1224, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1228, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1232, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1236, "value", 1, 0, -720, 1000, 1 + +vrThreshold1_rpmBins = array, U08, 1240, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1246, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1252, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +vrThreshold2_rpmBins = array, U08, 1256, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1262, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1268, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gpPwmNote1 = string, ASCII, 1272, 16 +gpPwmNote2 = string, ASCII, 1288, 16 +gpPwmNote3 = string, ASCII, 1304, 16 +gpPwmNote4 = string, ASCII, 1320, 16 +tps2SecondaryMin = scalar, U16, 1336, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1338, "ADC", 1, 0, 0, 1000, 0 +disablePrimaryUart = bits, U32, 1340, [0:0], "false", "true" +fuelClosedLoopCorrectionEnabled = bits, U32, 1340, [1:1], "false", "true" +isVerboseIAC = bits, U32, 1340, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1340, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1340, [4:4], "Piggyback Mode", "With Pull Ups" +isEngineChartEnabled = bits, U32, 1340, [5:5], "false", "true" +silentTriggerError = bits, U32, 1340, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1340, [7:7], "false", "true" +canReadEnabled = bits, U32, 1340, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1340, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1340, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1340, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1340, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1340, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1340, [14:14], "false", "true" +invertSecondaryTriggerSignal = bits, U32, 1340, [15:15], "false", "true" +cutFuelOnHardLimit = bits, U32, 1340, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1340, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1340, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1340, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1340, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1340, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1340, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1340, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1340, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1340, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1340, [26:26], "With Pull Up", "With Pull Down" +useFSIO5ForCriticalIssueEngineStop = bits, U32, 1340, [27:27], "false", "true" +useFSIO4ForSeriousEngineWarning = bits, U32, 1340, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1340, [29:29], "false", "true" +twoStroke = bits, U32, 1340, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1340, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1344, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +acSwitch = bits, U08, 1346, [0:7], 0="NONE",3="TPS Reference Input (A1)",70="Launch Control (E4)",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +vRefAdcChannel = bits, U08, 1348, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +etbNeutralPosition = scalar, U08, 1349, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1350, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1352, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1352, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1352, [2:2], "false", "true" +complexWallModel = bits, U32, 1352, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1352, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1352, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1352, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1352, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1352, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1352, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1352, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1352, [11:11], "false", "true" +twoWireBatchInjection = bits, U32, 1352, [12:12], "false", "true" +useOnlyRisingEdgeForTrigger = bits, U32, 1352, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1352, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1352, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1352, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1352, [17:17], "false", "true" +flexCranking = bits, U32, 1352, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1352, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1352, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1352, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1352, [22:22], "false", "true" +unused1476b8 = bits, U32, 1352, [23:23], "false", "true" +unused_1484_bit_24 = bits, U32, 1352, [24:24], "false", "true" +unused_1484_bit_25 = bits, U32, 1352, [25:25], "false", "true" +unused_1484_bit_26 = bits, U32, 1352, [26:26], "false", "true" +unused_1484_bit_27 = bits, U32, 1352, [27:27], "false", "true" +unused_1484_bit_28 = bits, U32, 1352, [28:28], "false", "true" +unused_1484_bit_29 = bits, U32, 1352, [29:29], "false", "true" +unused_1484_bit_30 = bits, U32, 1352, [30:30], "false", "true" +unused_1484_bit_31 = bits, U32, 1352, [31:31], "false", "true" +engineChartSize = scalar, U32, 1356, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1360, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1364, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +camInputsDebug2 = bits, U16, 1366, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +camInputsDebug3 = bits, U16, 1368, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +camInputsDebug4 = bits, U16, 1370, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + +acIdleRpmBump = scalar, S16, 1372, "RPM", 1, 0, 0, 1000, 0 +warningPeriod = scalar, S16, 1374, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1376, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1380, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1384, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1388, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1392, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1396, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1400, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1404, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1408, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1412, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1416, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1420, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1422, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1424, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1426, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1428, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1432, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1436, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1440, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1442, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1444, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1446, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1448, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +triggerInputDebugPins2 = bits, U16, 1450, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +triggerInputDebugPins3 = bits, U16, 1452, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +turboSpeedSensorInputPin = bits, U16, 1454, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tps2Min = scalar, S16, 1456, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1458, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1460, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +startStopButtonMode = bits, U08, 1462, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1464, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tachPulsePerRev = scalar, U08, 1466, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1468, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1472, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1476, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1478, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1480, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1484, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1488, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1492, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1494, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1496, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1498, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1500, "Fraction", 1, 0, 0, 1, 2 +communicationLedPin = bits, U16, 1504, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +runningLedPin = bits, U16, 1506, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +binarySerialTxPin = bits, U16, 1508, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +binarySerialRxPin = bits, U16, 1510, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +auxValves1 = bits, U16, 1512, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +auxValves2 = bits, U16, 1514, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tcuUpshiftButtonPin = bits, U08, 1516, [0:7], 0="NONE",3="TPS Reference Input (A1)",70="Launch Control (E4)",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tcuDownshiftButtonPin = bits, U08, 1518, [0:7], 0="NONE",3="TPS Reference Input (A1)",70="Launch Control (E4)",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +throttlePedalUpVoltage = scalar, F32, 1520, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1524, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1528, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1530, "RPM", 1, 0, 0, 200, 0 +targetVBatt = scalar, F32, 1532, "Volts", 1, 0, 0, 30, 1 +alternatorOffAboveTps = scalar, F32, 1536, "%", 1, 0, 0, 200, 2 +afterCrankingIACtaperDuration = scalar, S16, 1540, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1542, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1544, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +warningLedPin = bits, U16, 1546, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +auxSerialRxPin = bits, U16, 1548, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +LIS302DLCsPin = bits, U16, 1550, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tpsAccelLookback = scalar, U08, 1552, "sec", 0.05, 0, 0, 5, 2 +coastingFuelCutVssLow = scalar, U08, 1553, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1554, "kph", 1, 0, 0, 255, 0 +noFuelTrimAfterDfcoTime = scalar, U08, 1555, "sec", 0.1, 0, 0, 10, 1 +tpsAccelEnrichmentThreshold = scalar, F32, 1556, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1560, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +auxSpeedSensorInputPin2 = bits, U16, 1562, [0:7], 0="NONE",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +totalGearsCount = scalar, U08, 1564, "", 1, 0, 1, 8, 0 +injectionTimingMode = bits, U08, 1565, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +uartConsoleSerialSpeed = scalar, U32, 1568, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1572, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1576, "coeff", 1, 0, 0, 200, 2 +slowAdcAlpha = scalar, F32, 1580, "coeff", 1, 0, 0, 200, 3 +debugMode = bits, U08, 1584, [0:5], "INVALID", "TPS acceleration enrichment", "GPPWM", "Idle Control", "Engine Load accl enrich", "Trigger Counters", "Soft Spark Cut", "VVT1 PID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "SD card", "sr5", "Knock", "INVALID", "Electronic Throttle", "Executor", "Bench Test / TS commands", "INVALID", "Analog inputs #1", "INSTANT_RPM", "INVALID", "Status", "CJ125", "INVALID", "MAP", "Metrics", "INVALID", "Ion Sense", "TLE8888", "Analog inputs #2", "Dwell Metric", "INVALID", "INVALID", "Boost Control", "INVALID", "INVALID", "ETB Autotune", "Composite Log", "INVALID", "INVALID", "INVALID", "Dyno_View", "Logic_Analyzer", "rusEFI Wideband", "TCU", "Lua", "VVT2 PID", "VVT3 PID", "VVT4 PID", "mode 52", "mode 53", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +auxSerialSpeed = scalar, U32, 1588, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1592, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1596, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1600, [0:1], "100kbps", "250kbps", "500kbps", "1Mbps" +veOverrideMode = bits, U08, 1601, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1602, [0:1], "100kbps", "250kbps", "500kbps", "1Mbps" +afrOverrideMode = bits, U08, 1603, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1604, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1605, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1606, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1607, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1608, [0:0], "false", "true" +unused1740b0 = bits, U32, 1608, [1:1], "false", "true" +unused1740b1 = bits, U32, 1608, [2:2], "false", "true" +unused1740b2 = bits, U32, 1608, [3:3], "false", "true" +unused1127 = bits, U32, 1608, [4:4], "false", "true" +unused1128 = bits, U32, 1608, [5:5], "false", "true" +unused1129 = bits, U32, 1608, [6:6], "false", "true" +unused1130 = bits, U32, 1608, [7:7], "false", "true" +unusedBit_538_8 = bits, U32, 1608, [8:8], "false", "true" +unusedBit_538_9 = bits, U32, 1608, [9:9], "false", "true" +unusedBit_538_10 = bits, U32, 1608, [10:10], "false", "true" +unusedBit_538_11 = bits, U32, 1608, [11:11], "false", "true" +unusedBit_538_12 = bits, U32, 1608, [12:12], "false", "true" +unusedBit_538_13 = bits, U32, 1608, [13:13], "false", "true" +unusedBit_538_14 = bits, U32, 1608, [14:14], "false", "true" +unusedBit_538_15 = bits, U32, 1608, [15:15], "false", "true" +unusedBit_538_16 = bits, U32, 1608, [16:16], "false", "true" +unusedBit_538_17 = bits, U32, 1608, [17:17], "false", "true" +unusedBit_538_18 = bits, U32, 1608, [18:18], "false", "true" +unusedBit_538_19 = bits, U32, 1608, [19:19], "false", "true" +unusedBit_538_20 = bits, U32, 1608, [20:20], "false", "true" +unusedBit_538_21 = bits, U32, 1608, [21:21], "false", "true" +unusedBit_538_22 = bits, U32, 1608, [22:22], "false", "true" +unusedBit_538_23 = bits, U32, 1608, [23:23], "false", "true" +unusedBit_538_24 = bits, U32, 1608, [24:24], "false", "true" +unusedBit_538_25 = bits, U32, 1608, [25:25], "false", "true" +unusedBit_538_26 = bits, U32, 1608, [26:26], "false", "true" +unusedBit_538_27 = bits, U32, 1608, [27:27], "false", "true" +unusedBit_538_28 = bits, U32, 1608, [28:28], "false", "true" +unusedBit_538_29 = bits, U32, 1608, [29:29], "false", "true" +unusedBit_538_30 = bits, U32, 1608, [30:30], "false", "true" +unusedBit_538_31 = bits, U32, 1608, [31:31], "false", "true" +benchTestOffTime = scalar, U08, 1612, "ms", 5.0, 0, 0, 2000, 1 +benchTestCount = scalar, U08, 1613, "count", 1, 0, 0, 250, 1 +benchTestOnTime = scalar, U08, 1614, "ms", 5.0, 0, 0, 2000, 1 +launchActivatePinMode = bits, U08, 1615, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1616, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +can2RxPin = bits, U16, 1618, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +starterControlPinMode = bits, U08, 1620, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1621, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignOverrideMode = bits, U08, 1622, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1623, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1624, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +hpfpValvePinMode = bits, U08, 1626, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1628, "kPa (absolute)", 1, 0, 0, 500, 0 +tchargeBins = array, U08, 1632, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1648, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1664, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1668, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1672, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1676, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1680, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +vvtPins2 = bits, U16, 1682, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +vvtPins3 = bits, U16, 1684, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +vvtPins4 = bits, U16, 1686, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +cj125SpiDevice = bits, U08, 1688, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "INVALID", "INVALID", "INVALID" +cj125CsPinMode = bits, U08, 1689, [0:1], "default", "default inverted", "open collector", "open collector inverted" +sdCardCsPinMode = bits, U08, 1690, [0:1], "default", "default inverted", "open collector", "open collector inverted" +crankingIACposition = scalar, S32, 1692, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1696, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1700, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1704, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1708, "", 1, 0, 0, 3, 4 +vvtOutputFrequency1 = scalar, U16, 1712, "Hz", 1, 0, 0, 3000, 0 +vvtOutputFrequency2 = scalar, U16, 1714, "Hz", 1, 0, 0, 3000, 0 +fan1ExtraIdle = scalar, U08, 1716, "%", 1, 0, 0, 100, 0 +alternatorPwmFrequency = scalar, S32, 1720, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1724, [0:4], "Inactive", "Single Tooth Second Half", "2JZ", "Miata NB2", "Single Tooth First Half", "Bosch Quick Start", "4/1", "ST 170", "Ford Barra 3+1", "Nissan VQ", "Honda K 4+1", "Nissan MR18", "Mitsu 3A92", "VTwin by MAP", "Mitsu 6G75", "vvt15", "vvt16", "vvt17", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +vvtMode2 = bits, U08, 1725, [0:4], "Inactive", "Single Tooth Second Half", "2JZ", "Miata NB2", "Single Tooth First Half", "Bosch Quick Start", "4/1", "ST 170", "Ford Barra 3+1", "Nissan VQ", "Honda K 4+1", "Nissan MR18", "Mitsu 3A92", "VTwin by MAP", "Mitsu 6G75", "vvt15", "vvt16", "vvt17", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + +fan2ExtraIdle = scalar, U08, 1726, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1727, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1728, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +auxAnalogInputs2 = bits, U08, 1729, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +auxAnalogInputs3 = bits, U08, 1730, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +auxAnalogInputs4 = bits, U08, 1731, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +auxAnalogInputs5 = bits, U08, 1732, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +auxAnalogInputs6 = bits, U08, 1733, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +auxAnalogInputs7 = bits, U08, 1734, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +auxAnalogInputs8 = bits, U08, 1735, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +trailingCoilPins1 = bits, U16, 1736, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +trailingCoilPins2 = bits, U16, 1738, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +trailingCoilPins3 = bits, U16, 1740, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +trailingCoilPins4 = bits, U16, 1742, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +trailingCoilPins5 = bits, U16, 1744, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +trailingCoilPins6 = bits, U16, 1746, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +trailingCoilPins7 = bits, U16, 1748, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +trailingCoilPins8 = bits, U16, 1750, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +trailingCoilPins9 = bits, U16, 1752, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +trailingCoilPins10 = bits, U16, 1754, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +trailingCoilPins11 = bits, U16, 1756, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +trailingCoilPins12 = bits, U16, 1758, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tle8888mode = bits, U08, 1760, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +LIS302DLCsPinMode = bits, U08, 1761, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1762, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1763, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1764, "kPa", 1, 0, 0, 700000, 0 +postCrankingFactor = scalar, F32, 1768, "mult", 1, 0, 1, 3, 2 +postCrankingDurationSec = scalar, F32, 1772, "seconds", 1, 0, 0, 30, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1776, "*C", 1, 0, -40, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1780, "*C", 1, 0, -40, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1784, "*C", 1, 0, -40, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1788, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1792, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1796, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1800, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1804, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +auxTempSensor2_tempC_1 = scalar, F32, 1808, "*C", 1, 0, -40, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1812, "*C", 1, 0, -40, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1816, "*C", 1, 0, -40, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1820, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1824, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1828, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1832, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1836, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +knockSamplingDuration = scalar, S16, 1840, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1842, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1844, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1848, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1852, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1856, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1858, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1860, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1862, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 1864, [0:3], "Full-Step (Default)", "INVALID", "Half-Step", "INVALID", "1/4 Micro-Step", "INVALID", "INVALID", "INVALID", "1/8 Micro-Step", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +stepperMinDutyCycle = scalar, U08, 1865, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 1866, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 1867, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "INVALID", "INVALID", "INVALID" +timing_offset_cylinder1 = scalar, F32, 1868, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 1872, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 1876, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 1880, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 1884, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 1888, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 1892, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 1896, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 1900, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 1904, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 1908, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 1912, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 1916, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = bits, U08, 1920, [0:6], "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", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi1MosiMode = bits, U08, 1921, [0:6], "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", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi1MisoMode = bits, U08, 1922, [0:6], "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", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi2SckMode = bits, U08, 1923, [0:6], "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", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi2MosiMode = bits, U08, 1924, [0:6], "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", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi2MisoMode = bits, U08, 1925, [0:6], "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", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi3SckMode = bits, U08, 1926, [0:6], "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", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi3MosiMode = bits, U08, 1927, [0:6], "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", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi3MisoMode = bits, U08, 1928, [0:6], "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", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +stepperEnablePinMode = bits, U08, 1929, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 1930, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +mc33816_driven = bits, U16, 1932, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +brakePedalPin = bits, U08, 1934, [0:7], 0="NONE",3="TPS Reference Input (A1)",70="Launch Control (E4)",72="Camshaft Input (E6)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +cj125ua = bits, U08, 1936, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +cj125ur = bits, U08, 1937, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +brakePedalPinMode = bits, U08, 1938, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +auxPid1_pFactor = scalar, F32, 1940, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 1944, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 1948, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 1952, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 1954, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 1956, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 1958, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 1960, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 1964, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 1968, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 1972, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 1974, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 1976, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 1978, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 1980, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 1984, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 1988, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 1992, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 1996, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2000, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2004, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2008, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2012, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2020, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +oilPressure_v1 = scalar, F32, 2024, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2028, "kPa", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2032, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2036, "kPa", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2040, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "INVALID", "INVALID", "INVALID" +fan2Pin = bits, U16, 2042, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +fan2OnTemperature = scalar, U08, 2044, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2045, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2046, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tle8888_cs = bits, U16, 2048, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tle8888_csPinMode = bits, U08, 2050, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2052, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +servoOutputPins1 = bits, U16, 2054, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +servoOutputPins2 = bits, U16, 2056, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +servoOutputPins3 = bits, U16, 2058, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +servoOutputPins4 = bits, U16, 2060, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +servoOutputPins5 = bits, U16, 2062, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +servoOutputPins6 = bits, U16, 2064, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +servoOutputPins7 = bits, U16, 2066, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +servoOutputPins8 = bits, U16, 2068, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +coastingFuelCutRpmHigh = scalar, S16, 2070, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2072, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2074, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2076, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2078, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2080, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2084, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +highPressureFuel_v1 = scalar, F32, 2088, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2092, "kPa", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2096, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2100, "kPa", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2104, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +lowPressureFuel_v1 = scalar, F32, 2108, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2112, "kPa", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2116, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2120, "kPa", 1, 0, 0, 1000000, 2 +cltRevLimitRpmBins = array, S08, 2124, [4], "C", 1, 0, -70, 120, 0 +cltRevLimitRpm = array, U16, 2128, [4], "", 1, 0, 0, 8000, 0 +scriptCurveName1 = string, ASCII, 2136, 16 +scriptCurveName2 = string, ASCII, 2152, 16 +scriptCurveName3 = string, ASCII, 2168, 16 +scriptCurveName4 = string, ASCII, 2184, 16 +scriptCurveName5 = string, ASCII, 2200, 16 +scriptCurveName6 = string, ASCII, 2216, 16 +scriptTableName1 = string, ASCII, 2232, 16 +scriptTableName2 = string, ASCII, 2248, 16 +scriptTableName3 = string, ASCII, 2264, 16 +scriptTableName4 = string, ASCII, 2280, 16 +scriptSettingName1 = string, ASCII, 2296, 16 +scriptSettingName2 = string, ASCII, 2312, 16 +scriptSettingName3 = string, ASCII, 2328, 16 +scriptSettingName4 = string, ASCII, 2344, 16 +scriptSettingName5 = string, ASCII, 2360, 16 +scriptSettingName6 = string, ASCII, 2376, 16 +scriptSettingName7 = string, ASCII, 2392, 16 +scriptSettingName8 = string, ASCII, 2408, 16 +tChargeAirCoefMin = scalar, F32, 2424, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2428, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2432, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2436, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2440, "deg/sec", 1, 0, 0, 100, 1 +tChargeMode = bits, U08, 2444, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +hip9011Gain = scalar, F32, 2448, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2452, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2454, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2456, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2460, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2464, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2468, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2470, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2472, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2474, "", 1, 0, -30000, 30000, 0 +idleTimingPidDeadZone = scalar, S16, 2476, "RPM", 1, 0, 0, 1000, 0 +tpsAccelFractionPeriod = scalar, S16, 2478, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2480, "coef", 1, 0, 0, 100, 2 +tle8888spiDevice = bits, U08, 2484, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "INVALID", "INVALID", "INVALID" +mc33816spiDevice = bits, U08, 2485, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "INVALID", "INVALID", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2486, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2488, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "INVALID", "INVALID", "INVALID" +stoichRatioPrimary = scalar, U08, 2489, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2490, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2492, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2496, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2497, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2498, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2499, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2500, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2501, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2502, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2503, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2504, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2505, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2506, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2507, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2508, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2516, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2517, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2518, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2519, "RPM", 50.0, 0, 0, 12000, 0 +idleRpmPid2_pFactor = scalar, F32, 2520, "", 1, 0, -10000, 10000, 4 +idleRpmPid2_iFactor = scalar, F32, 2524, "", 1, 0, -10000, 10000, 4 +idleRpmPid2_dFactor = scalar, F32, 2528, "", 1, 0, -10000, 10000, 4 +idleRpmPid2_offset = scalar, S16, 2532, "", 1, 0, -1000, 1000, 0 +idleRpmPid2_periodMs = scalar, S16, 2534, "ms", 1, 0, 0, 3000, 0 +idleRpmPid2_minValue = scalar, S16, 2536, "", 1, 0, -30000, 30000, 0 +idleRpmPid2_maxValue = scalar, S16, 2538, "", 1, 0, -30000, 30000, 0 +canVssNbcType = bits, U08, 2540, [0:0], "BMW_e46", "W202" +gppwm1_pin = bits, U16, 2544, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm1_dutyIfError = scalar, U08, 2546, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2548, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2550, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2551, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2552, [0:3], "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Zero", "Accel Pedal", "Battery Voltage", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm1_alignmentFill_map = scalar, U08, 2553, "unit", 1, 0, 0, 100, 0 +gppwm1_loadBins = array, U08, 2554, [8], "load", 1, 0, 0, 250, 0 +gppwm1_rpmBins = array, U08, 2562, [8], "RPM", 50.0, 0, 0, 12000, 0 +gppwm1_table = array, U08, 2570, [8x8], "duty", 1, 0, 0, 100, 0 +gppwm2_pin = bits, U16, 2636, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm2_dutyIfError = scalar, U08, 2638, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2640, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2642, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2643, "%", 1, 0, 0, 100, 0 +gppwm2_loadAxis = bits, U08, 2644, [0:3], "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Zero", "Accel Pedal", "Battery Voltage", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm2_alignmentFill_map = scalar, U08, 2645, "unit", 1, 0, 0, 100, 0 +gppwm2_loadBins = array, U08, 2646, [8], "load", 1, 0, 0, 250, 0 +gppwm2_rpmBins = array, U08, 2654, [8], "RPM", 50.0, 0, 0, 12000, 0 +gppwm2_table = array, U08, 2662, [8x8], "duty", 1, 0, 0, 100, 0 +gppwm3_pin = bits, U16, 2728, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm3_dutyIfError = scalar, U08, 2730, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2732, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2734, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2735, "%", 1, 0, 0, 100, 0 +gppwm3_loadAxis = bits, U08, 2736, [0:3], "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Zero", "Accel Pedal", "Battery Voltage", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm3_alignmentFill_map = scalar, U08, 2737, "unit", 1, 0, 0, 100, 0 +gppwm3_loadBins = array, U08, 2738, [8], "load", 1, 0, 0, 250, 0 +gppwm3_rpmBins = array, U08, 2746, [8], "RPM", 50.0, 0, 0, 12000, 0 +gppwm3_table = array, U08, 2754, [8x8], "duty", 1, 0, 0, 100, 0 +gppwm4_pin = bits, U16, 2820, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm4_dutyIfError = scalar, U08, 2822, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2824, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2826, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2827, "%", 1, 0, 0, 100, 0 +gppwm4_loadAxis = bits, U08, 2828, [0:3], "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Zero", "Accel Pedal", "Battery Voltage", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm4_alignmentFill_map = scalar, U08, 2829, "unit", 1, 0, 0, 100, 0 +gppwm4_loadBins = array, U08, 2830, [8], "load", 1, 0, 0, 250, 0 +gppwm4_rpmBins = array, U08, 2838, [8], "RPM", 50.0, 0, 0, 12000, 0 +gppwm4_table = array, U08, 2846, [8x8], "duty", 1, 0, 0, 100, 0 +mc33_i_boost = scalar, U16, 2912, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 2914, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 2916, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 2918, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 2920, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 2922, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 2924, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 2926, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 2928, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 2930, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 2931, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 2932, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 2933, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 2934, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 2935, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 2936, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 2937, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 2938, [0:1], "default", "default inverted", "open collector", "open collector inverted" +knockBaseNoise = array, S08, 2939, [16], "dB", 0.5, 0, -50, 10, 1 +triggerGapOverrideFrom1 = scalar, F32, 2956, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom2 = scalar, F32, 2960, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom3 = scalar, F32, 2964, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom4 = scalar, F32, 2968, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom5 = scalar, F32, 2972, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom6 = scalar, F32, 2976, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom7 = scalar, F32, 2980, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom8 = scalar, F32, 2984, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom9 = scalar, F32, 2988, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom10 = scalar, F32, 2992, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom11 = scalar, F32, 2996, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom12 = scalar, F32, 3000, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom13 = scalar, F32, 3004, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom14 = scalar, F32, 3008, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom15 = scalar, F32, 3012, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom16 = scalar, F32, 3016, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom17 = scalar, F32, 3020, "from", 1, 0, 0, 20, 2 +triggerGapOverrideFrom18 = scalar, F32, 3024, "from", 1, 0, 0, 20, 2 +maxCamPhaseResolveRpm = scalar, U08, 3028, "rpm", 50.0, 0, 0, 12500, 0 +unused4080 = array, S08, 3029, [11], "", 1,0,0,0,0 +triggerGapOverrideTo1 = scalar, F32, 3040, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo2 = scalar, F32, 3044, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo3 = scalar, F32, 3048, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo4 = scalar, F32, 3052, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo5 = scalar, F32, 3056, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo6 = scalar, F32, 3060, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo7 = scalar, F32, 3064, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo8 = scalar, F32, 3068, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo9 = scalar, F32, 3072, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo10 = scalar, F32, 3076, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo11 = scalar, F32, 3080, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo12 = scalar, F32, 3084, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo13 = scalar, F32, 3088, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo14 = scalar, F32, 3092, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo15 = scalar, F32, 3096, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo16 = scalar, F32, 3100, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo17 = scalar, F32, 3104, "to", 1, 0, 0, 20, 2 +triggerGapOverrideTo18 = scalar, F32, 3108, "to", 1, 0, 0, 20, 2 +hpfpCamLobes = scalar, U08, 3112, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3113, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +hpfpPeakPos = scalar, U08, 3114, "deg", 1, 0, 0, 255, 0 +hpfpMinAngle = scalar, U08, 3115, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3116, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3118, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3119, "", 1, 0, 0, 100, 0 +hpfpPidP = scalar, U16, 3120, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3122, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3124, "kPa/s", 1, 0, 0, 65000, 0 +hpfpLobeProfileQuantityBins = array, U08, 3126, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 3142, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 3158, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 3166, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 3182, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 3382, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 3402, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 3412, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 3512, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 3532, [10], "RPM", 50.0, 0, 0, 12500, 0 +stepper_raw_output1 = bits, U16, 3542, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +stepper_raw_output2 = bits, U16, 3544, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +stepper_raw_output3 = bits, U16, 3546, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +stepper_raw_output4 = bits, U16, 3548, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gearRatio1 = scalar, U16, 3550, "ratio", 0.01, 0, 0, 10, 2 +gearRatio2 = scalar, U16, 3552, "ratio", 0.01, 0, 0, 10, 2 +gearRatio3 = scalar, U16, 3554, "ratio", 0.01, 0, 0, 10, 2 +gearRatio4 = scalar, U16, 3556, "ratio", 0.01, 0, 0, 10, 2 +gearRatio5 = scalar, U16, 3558, "ratio", 0.01, 0, 0, 10, 2 +gearRatio6 = scalar, U16, 3560, "ratio", 0.01, 0, 0, 10, 2 +gearRatio7 = scalar, U16, 3562, "ratio", 0.01, 0, 0, 10, 2 +gearRatio8 = scalar, U16, 3564, "ratio", 0.01, 0, 0, 10, 2 +vvtActivationDelayMs = scalar, U16, 3566, "ms", 1, 0, 0, 65000, 0 +wwCltBins = array, S08, 3568, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 3576, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 3584, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 3592, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 3600, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 3608, [8], "", 0.01, 0, 0, 2.5, 2 +torqueTable = array, U08, 3616, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3652, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3664, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3676, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3677, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +auxLinear1_hwChannel = bits, U08, 3680, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +auxLinear1_v1 = scalar, F32, 3684, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3688, "kPa", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3692, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3696, "kPa", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3700, [0:5], 0="NONE",1="Battery Reference Input (A0)",2="TPS Reference Input (A1)",3="CLT Reference Input (A2)",4="IAT Reference Input (A3)",5="O2 Reference Input (A4)",9="MAP Pressure Reference Input (B0)",10="BARO Pressure Reference Input (B1)",15="Fuel Pressure Reference Input (C4)",16="Oil Pressure Reference Input (C5)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +auxLinear2_v1 = scalar, F32, 3704, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3708, "kPa", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3712, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3716, "kPa", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3720, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tcu_tcc_onoff_solenoid_mode = bits, U08, 3722, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3724, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tcu_tcc_pwm_solenoid_mode = bits, U08, 3726, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3728, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3730, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tcu_pc_solenoid_pin_mode = bits, U08, 3732, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3734, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3736, [0:7], 0="NONE",32="Ignition 4 Output (B14)",33="Ignition 3 Output (B15)",40="Idle1 Output (C6)",41="Boost Controller Output (C7)",58="Ignition 5 Output (D8)",59="Ignition 6 Output (D9)",60="Ignition 8 Output (D10)",61="Ignition 7 Output (D11)",62="Ignition 1 Output (D12)",63="Ignition 2 Output (D13)",64="HC2 Output (D14)",65="HC1 Output (D15)",68="Fan Relay (E2)",69="Fuel Relay (E3)",71="Tachometer (E5)",74="Injector 8 Output (E8)",75="Injector 7 Output (E9)",76="Injector 6 Output (E10)",77="Injector 5 Output (E11)",78="Injector 4 Output (E12)",79="Injector 3 Output (E13)",80="Injector 2 Output (E14)",81="Injector 1 Output (E15)", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tcu_32_solenoid_pin_mode = bits, U08, 3738, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3740, "Hz", 1, 0, 0, 3000, 0 +etbMinimumPosition = scalar, F32, 3744, "%", 1, 0, 0.01, 100, 2 +mainUnusedEnd = array, U08, 3748, [246], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 3996, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4028, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4060, [8x8], "%", 1, 0, 0, 999, 2 +iacPidMultLoadBins = array, U08, 4124, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4132, [8], "RPM", 50.0, 0, 0, 12000, 0 +sparkDwellRpmBins = array, U08, 4140, [8], "RPM", 50.0, 0, 0, 18000, 2 +sparkDwellValues = array, F32, 4148, [8], "ms", 1, 0, 0, 30, 2 +cltIdleRpmBins = array, F32, 4180, [16], "C", 1, 0, -100, 250, 2 +cltIdleRpm = array, U08, 4244, [16], "RPM", 50.0, 0, 0, 8000, 0 +cltTimingBins = array, F32, 4260, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4292, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4324, [16], "x", 1, 0, -999, 1000, 3 +scriptCurve1 = array, F32, 4388, [16], "y", 1, 0, -999, 1000, 3 +scriptCurve2Bins = array, F32, 4452, [16], "x", 1, 0, -999, 1000, 3 +scriptCurve2 = array, F32, 4516, [16], "y", 1, 0, -999, 1000, 3 +scriptCurve3Bins = array, F32, 4580, [8], "x", 1, 0, -999, 1000, 3 +scriptCurve3 = array, F32, 4612, [8], "y", 1, 0, -999, 1000, 3 +scriptCurve4Bins = array, F32, 4644, [8], "x", 1, 0, -999, 1000, 3 +scriptCurve4 = array, F32, 4676, [8], "y", 1, 0, -999, 1000, 3 +scriptCurve5Bins = array, F32, 4708, [8], "x", 1, 0, -999, 1000, 3 +scriptCurve5 = array, F32, 4740, [8], "y", 1, 0, -999, 1000, 3 +scriptCurve6Bins = array, F32, 4772, [8], "x", 1, 0, -999, 1000, 3 +scriptCurve6 = array, F32, 4804, [8], "y", 1, 0, -999, 1000, 3 +baroCorrPressureBins = array, F32, 4836, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 4852, [4], "RPM", 1, 0, 0, 18000, 2 +baroCorrTable = array, F32, 4868, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 4932, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 4964, [8], "%", 1, 0, 0, 100, 2 +narrowToWideOxygenBins = array, F32, 4996, [8], "V", 1, 0, -10, 10, 3 +narrowToWideOxygen = array, F32, 5028, [8], "ratio", 1, 0, -40, 40, 2 +crankingAdvanceBins = array, F32, 5060, [4], "RPM", 1, 0, 0, 18000, 2 +crankingAdvance = array, F32, 5076, [4], "deg", 1, 0, -20, 90, 2 +iacCoastingBins = array, F32, 5092, [16], "C", 1, 0, -100, 250, 2 +iacCoasting = array, F32, 5156, [16], "%", 1, 0, 0, 100, 2 +warning_message = string, ASCII, 5220, 120 +afterstartCoolantBins = array, F32, 5340, [8], "C", 1, 0, -100, 250, 0 +afterstartHoldTime = array, F32, 5372, [8], "Seconds", 1, 0, 0, 100, 1 +afterstartEnrich = array, F32, 5404, [8], "%", 1, 0, 0, 600, 1 +afterstartDecayTime = array, F32, 5436, [8], "Seconds", 1, 0, 0, 100, 1 +boostTableOpenLoop = array, U08, 5468, [8x8], "", 0.5, 0 , 0, 100, 1 +boostRpmBins = array, U08, 5532, [8], "RPM", 50.0, 0, 0, 12000, 0 +boostTableClosedLoop = array, U08, 5540, [8x8], "", 2.0, 0 , 0, 3000, 0 +boostTpsBins = array, U08, 5604, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5612, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5676, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5684, [8], "RPM", 50.0, 0, 0, 12000, 0 +cltCrankingCorrBins = array, F32, 5692, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5724, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5756, [8], "RPM", 50.0, 0, 0, 18000, 0 +idleAdvance = array, F32, 5764, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5796, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5800, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5804, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5836, 8000 +cltFuelCorrBins = array, F32, 13836, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13900, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13964, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 14028, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 14092, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14124, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14156, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14188, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14220, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14284, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14348, [256], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 15372, [256], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S16, 16396, [16x16], "deg", 0.1, 0, -720, 720, 1 +ignitionIatCorrLoadBins = array, F32, 16908, [16], "Temperature", 1, 0, 0, 500, 0 +ignitionIatCorrRpmBins = array, U16, 16972, [16], "RPM", 1, 0, 0, 18000, 0 +injectionPhase = array, S16, 17004, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 17516, [16], "Load", 1, 0, 0, 500, 0 +injPhaseRpmBins = array, U16, 17548, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 17580, [6x10], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 17640, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 18152, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 18184, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, U08, 18216, [8x8], "value", 1, 0, 0, 255, 0 +vvtTable1LoadBins = array, U16, 18280, [8], "L", 1, 0, 0, 255, 0 +vvtTable1RpmBins = array, U16, 18296, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, U08, 18312, [8x8], "value", 1, 0, 0, 255, 0 +vvtTable2LoadBins = array, U16, 18376, [8], "L", 1, 0, 0, 255, 0 +vvtTable2RpmBins = array, U16, 18392, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 18408, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 18920, [16], "Load", 1, 0, 0, 500, 0 +ignitionRpmBins = array, U16, 18952, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 18984, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 19496, [16], "kPa", 1, 0, 0, 400, 0 +veRpmBins = array, U16, 19528, [16], "RPM", 1, 0, 0, 18000, 0 +#if LAMBDA +lambdaTable = array, U08, 19560, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 +#else +lambdaTable = array, U08, 19560, [16x16], "afr", 0.1, 0, 0, 25, 1 +#endif +lambdaLoadBins = array, U16, 19816, [16], "", 1, 0, 0, 500, 0 +lambdaRpmBins = array, U16, 19848, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 19880, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 20136, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 20168, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 20200, [8x8], "value", 1, 0, 0, 30000, 2 +scriptTable1LoadBins = array, U16, 20456, [8], "L", 1, 0, 0, 30000, 0 +scriptTable1RpmBins = array, U16, 20472, [8], "RPM", 1, 0, 0, 25500, 0 +scriptTable2 = array, U08, 20488, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable2LoadBins = array, U16, 20552, [8], "L", 1, 0, 0, 255, 0 +scriptTable2RpmBins = array, U16, 20568, [8], "RPM", 1, 0, 0, 25500, 0 +scriptTable3 = array, U08, 20584, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, U16, 20648, [8], "L", 1, 0, 0, 255, 0 +scriptTable3RpmBins = array, U16, 20664, [8], "RPM", 1, 0, 0, 25500, 0 +scriptTable4 = array, U08, 20680, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, U16, 20744, [8], "L", 1, 0, 0, 255, 0 +scriptTable4RpmBins = array, U16, 20760, [8], "RPM", 1, 0, 0, 25500, 0 +ignTrimLoadBins = array, U16, 20776, [4], "", 1, 0, 0, 400, 0 +ignTrimRpmBins = array, U16, 20784, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 20792, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 20808, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 20824, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 20840, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 20856, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 20872, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 20888, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 20904, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 20920, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 20936, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 20952, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 20968, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 20984, [4], "", 1, 0, 0, 400, 0 +fuelTrimRpmBins = array, U16, 20992, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 21000, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 21016, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 21032, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 21048, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 21064, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 21080, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 21096, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 21112, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 21128, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 21144, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 21160, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 21176, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 21192, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 21208, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 21216, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 21224, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 21232, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 21240, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 21248, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 21256, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 21264, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 21272, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 21280, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 21288, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 21296, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 21304, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 21312, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 21320, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 21328, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 21336, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 21344, [8], "%", 1, 0, 0, 255, 0 +; total TS size = 21352 +[SettingContextHelp] + engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type" + sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" + rpmHardLimit = "set rpm_hard_limit X" + launchRpm = "A secondary Rev limit engaged by the driver to help launch the vehicle faster" + engineSnifferRpmThreshold = "Engine sniffer would be disabled above this rpm" + multisparkMaxRpm = "Disable multispark above this engine speed." + maxAcRpm = "Above this RPM, disable AC. Set to 0 to disable check." + maxAcTps = "Above this TPS, disable AC. Set to 0 to disable check." + maxAcClt = "Above this CLT, disable AC to prevent overheating the engine. Set to 0 to disable check." + multisparkMaxSparkingAngle = "This parameter sets the latest that the last multispark can occur after the main ignition event. For example, if the ignition timing is 30 degrees BTDC, and this parameter is set to 45, no multispark will ever be fired after 15 degrees ATDC." + multisparkMaxExtraSparkCount = "Configures the maximum number of extra sparks to fire (does not include main spark)" + injector_flow = "This is your injector flow at the fuel pressure used in the vehicle. cc/min, cubic centimetre per minute" + injector_battLagCorrBins = "set_flat_injector_lag LAG" + injector_battLagCorr = "ms delay between injector open and close dead times" + isForcedInduction = "Does the vehicle have a turbo or supercharger?" + useFordRedundantTps = "On Ford vehicles one of the sensors is not linear on the full range, i.e. in the specific range of the positions we effectively have only one sensor." + enableFan1WithAc = "Turn on this fan when AC is on." + enableFan2WithAc = "Turn on this fan when AC is on." + disableFan1WhenStopped = "Inhibit operation of this fan while the engine is not running." + disableFan2WhenStopped = "Inhibit operation of this fan while the engine is not running." + enableTrailingSparks = "Enable secondary spark outputs that fire after the primary (rotaries, twin plug engines)." + isCJ125Verbose = "enable cj125verbose/disable cj125verbose" + cj125isUaDivided = "Is your UA CJ125 output wired to MCU via resistor divider? Ua can go over 3.3v but only at lambda >3, i.e very lean AFR above 44.1" + etb_use_two_wires = "TLE7209 uses two-wire mode. TLE9201 and VNH2SP30 do NOT use two wire mode." + isDoubleSolenoidIdle = "Subaru/BMW style where default valve position is somewhere in the middle. First solenoid opens it more while second can close it more than default position." + cj125isUrDivided = "Is your UR CJ125 output wired to MCU via resistor divider?" + useCicPidForIdle = "Switch between Industrial and Cic PID implementation" + useSeparateIdleTablesForCrankingTaper = "This uses separate ignition timing and VE tables not only for idle conditions, also during the postcranking-to-idle taper transition (See also afterCrankingIACtaperDuration)." + useRunningMathForCranking = "For cranking either use the specified fixed base fuel mass, or use the normal running math (VE table)." + displayLogicLevelsInEngineSniffer = "Shall we display real life signal or just the part consumed by trigger decoder." + enableMapEstimationTableFallback = "If enabled, the MAP estimate table will be used if the MAP sensor fails to estimate manifold pressure based on RPM and TPS." + verboseCan = "Print incoming and outgoing first bus CAN messages in rusEFI console" + artificialTestMisfire = "Experimental setting that will cause a misfire" + tpsMin = "Closed throttle, 1 volt = 200 units." + tpsMax = "Full throttle." + tpsErrorDetectionTooLow = "TPS error detection: what throttle % is unrealistically low?" + tpsErrorDetectionTooHigh = "TPS error detection: what throttle % is unrealistically high?" + cranking_baseFuel = "Base mass of the per-cylinder fuel injected during cranking. This is then 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. " + ignitionDwellForCrankingMs = "Dwell duration while cranking" + etbRevLimitStart = "Once engine speed passes this value, start reducing ETB angle." + etbRevLimitRange = "This far above 'Soft limiter start', fully close the throttle. At the bottom of the range, throttle control is normal. At the top of the range, the throttle is fully closed." + map_samplingAngle = "MAP averaging sampling start crank degree angle" + map_samplingWindow = "MAP averaging angle crank degree duration" + map_sensor_lowValue = "kPa value at low volts" + map_sensor_highValue = "kPa value at high volts" + clt_tempC_1 = "these values are in Celcius" + clt_bias_resistor = "Pull-up resistor value on your board" + iat_tempC_1 = "these values are in Celcius" + iat_bias_resistor = "Pull-up resistor value on your board" + hip9011PrescalerAndSDO = "value '6' for 8MHz hw osc" + knockBandCustom = "We calculate knock band based of cylinderBore" + displacement = "Engine volume/capacity, in litres" + cylindersCount = "Number of cylinder the engine has." + cylinderBore = "Cylinder diameter in mm." + fuelAlgorithm = "This setting controls which fuel quantity control algorithm is used." + 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". " + crankingTimingAngle = "Ignition advance angle used during engine cranking, 5-10 degrees will work as a base setting for most engines." + ignitionMode = "Single coil = distributor" + gapTrackingLengthOverride = "How many consecutive gap rations have to match expected ranges for sync to happen" + maxIdleVss = "Above this speed, disable closed loop idle control. Set to 0 to disable (allow closed loop idle at any speed)." + minOilPressureAfterStart = "Expected oil pressure after starting the engine. If oil pressure does not reach this level within 5 seconds of engine start, fuel will be cut. Set to 0 to disable and always allow starting." + 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 with a timing light)." + fixedModeTiming = "This value is the ignition timing used when in 'fixed timing' mode, i.e. constant timing" + globalTriggerAngleOffset = "Angle between Top Dead Center (TDC) and the first trigger event." + analogInputDividerCoefficient = "Ratio/coefficient of input voltage dividers on your PCB. For example, use '2' if your board divides 5v into 2.5v. Use '1.66' if your board divides 5v into 3v." + 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" + driveWheelRevPerKm = "Number of revolutions per kilometer for the wheels your vehicle speed sensor is connected to. Use an online calculator to determine this based on your tire size." + canNbcType = "set can_mode X" + canSleepPeriodMs = "CANbus thread period in ms" + tps1_1AdcChannel = "First throttle body, first sensor. See also pedalPositionAdcChannel" + 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." + tps2_1AdcChannel = "Second throttle body position sensor, single channel so far" + idle_derivativeFilterLoss = "0.1 is a good default value" + trailingSparkAngle = "just a temporary solution" + trigger_type = "https://github.com/rusefi/rusefi/wiki/All-Supported-Triggers" + failedMapFallback = "Single value to be used in event of a failed MAP sensor " + boostControlSafeDutyCycle = "Duty cycle to use in case of a sensor failure. This duty cycle should produce the minimum possible amount of boost." + globalFuelCorrection = "set global_fuel_correction X" + 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. 1" + 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. 2" + 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. 3" + 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. 4" + throttlePedalPositionAdcChannel = "Electronic throttle pedal position first channel" + throttlePedalUpPin = "Throttle Pedal not pressed switch - used on some older vehicles like early Mazda Miata" + baroSensor_lowValue = "kPa value at low volts" + baroSensor_highValue = "kPa value at high volts" + manIdlePosition = "Value between 0 and 100 used in Manual mode" + knockRetardAggression = "Ignition timing to remove when a knock event occurs." + knockRetardReapplyRate = "After a knock event, reapply timing at this rate." + knockRetardMaximum = "Maximum amount of knock retard." + vssFilterReciprocal = "Set this so your vehicle speed signal is responsive, but not noisy. Larger value give smoother but slower response." + vssGearRatio = "Number of turns of your vehicle speed sensor per turn of the wheels. For example if your sensor is on the transmission output, enter your axle/differential ratio. If you are using a hub-mounted sensor, enter a value of 1.0." + vssToothCount = "Number of pulses output per revolution of the shaft where your VSS is mounted. For example, GM applications of the T56 output 17 pulses per revolution of the transmission output shaft." + triggerSimulatorFrequency = "Same RPM is used for two ways of producing simulated RPM. See also triggerSimulatorPins (with wires)" + injectionPins1 = "injectionPins 1" + injectionPins2 = "injectionPins 2" + injectionPins3 = "injectionPins 3" + injectionPins4 = "injectionPins 4" + injectionPins5 = "injectionPins 5" + injectionPins6 = "injectionPins 6" + injectionPins7 = "injectionPins 7" + injectionPins8 = "injectionPins 8" + injectionPins9 = "injectionPins 9" + injectionPins10 = "injectionPins 10" + injectionPins11 = "injectionPins 11" + injectionPins12 = "injectionPins 12" + ignitionPins1 = "ignitionPins 1" + ignitionPins2 = "ignitionPins 2" + ignitionPins3 = "ignitionPins 3" + ignitionPins4 = "ignitionPins 4" + ignitionPins5 = "ignitionPins 5" + ignitionPins6 = "ignitionPins 6" + ignitionPins7 = "ignitionPins 7" + ignitionPins8 = "ignitionPins 8" + ignitionPins9 = "ignitionPins 9" + ignitionPins10 = "ignitionPins 10" + ignitionPins11 = "ignitionPins 11" + ignitionPins12 = "ignitionPins 12" + malfunctionIndicatorPin = "Check engine light, also malfunction indicator light. Always blinks once on boot." + clutchDownPin = "Some cars have a switch to indicate that clutch pedal is all the way down" + digitalPotentiometerChipSelect1 = "digitalPotentiometerChipSelect 1" + digitalPotentiometerChipSelect2 = "digitalPotentiometerChipSelect 2" + digitalPotentiometerChipSelect3 = "digitalPotentiometerChipSelect 3" + digitalPotentiometerChipSelect4 = "digitalPotentiometerChipSelect 4" + wboHeaterPin = "set_cj125_heater_pin XXX" + cj125CsPin = "set_cj125_cs_pin XXX" + digitalPotentiometerSpiDevice = "Digital Potentiometer is used by stock ECU stimulation code" + auxFastSensor1_adcChannel = "Useful in Research&Development phase" + tps1_2AdcChannel = "First throttle body, second sensor." + tps2_2AdcChannel = "Second throttle body, second sensor." + throttlePedalPositionSecondAdcChannel = "Electronic throttle pedal position input" + afr_type = "AFR, WBO, EGO - whatever you like to call it" + idle_antiwindupFreq = "0.1 is a good default value" + triggerInputPins1 = "triggerInputPins 1" + triggerInputPins2 = "triggerInputPins 2" + triggerInputPins3 = "triggerInputPins 3" + canTxPin = "set_can_tx_pin X" + canRxPin = "set_can_rx_pin X" + acIdleExtraOffset = "Additional idle % while A/C is active" + finalGearRatio = "Ratio between the wheels and your transmission output." + wastegatePositionMin = "Voltage when the wastegate is closed." + wastegatePositionMax = "Voltage when the wastegate is fully open." + idlePositionMin = "Voltage when the idle valve is closed." + idlePositionMax = "Voltage when the idle valve is open." + tunerStudioSerialSpeed = "Secondary TTL channel baud rate" + compressionRatio = "Just for reference really, not taken into account by any logic at this point" + triggerSimulatorPins1 = "Each rusEFI piece can provide synthetic trigger signal for external ECU. Sometimes these wires are routed back into trigger inputs of the same rusEFI board." + triggerSimulatorPins2 = "Each rusEFI piece can provide synthetic trigger signal for external ECU. Sometimes these wires are routed back into trigger inputs of the same rusEFI board." + triggerSimulatorPins3 = "Each rusEFI piece can provide synthetic trigger signal for external ECU. Sometimes these wires are routed back into trigger inputs of the same rusEFI board." + triggerSimulatorPinModes1 = "triggerSimulatorPinModes 1" + triggerSimulatorPinModes2 = "triggerSimulatorPinModes 2" + triggerSimulatorPinModes3 = "triggerSimulatorPinModes 3" + o2heaterPin = "Narrow band o2 heater, not used for CJ125. 'ON' if engine is running, 'OFF' if stopped or cranking. See wboHeaterPin" + isSdCardEnabled = "enable sd/disable sd" + rusefiVerbose29b = "Use 11 bit (standard) or 29 bit (extended) IDs for rusEFI verbose CAN format." + useStepperIdle = "This setting should only be used if you have a stepper motor idle valve and a stepper motor driver installed." + enableVerboseCanTx = "CAN broadcast using custom rusEFI protocol" + onOffAlternatorLogic = "This will cause the alternator to be operated in a basic on or off mode, this is the simplest alternator control." + isCJ125Enabled = "enable cj125/disable cj125" + vvtCamSensorUseRise = "Use rise or fall signal front" + measureMapOnlyInOneCylinder = "Useful for individual intakes" + isFasterEngineSpinUpEnabled = "If enabled, try to fire the engine before a full engine cycle has been completed using RPM estimated from the last 90 degrees of engine rotation. As soon as the trigger syncs plus 90 degrees rotation, fuel and ignition events will occur. If disabled, worst case may require up to 4 full crank rotations before any events are scheduled." + 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. Used in Auto-PID Idle mode." + disableEtbWhenEngineStopped = "Allows disabling the ETB when the engine is stopped. You may not like the power draw or PWM noise from the motor, so this lets you turn it off until it's necessary." + pauseEtbControl = "Disable the electronic throttle motor and DC idle motor for testing." + useETBforIdleControl = "This setting allows the ETB to act as the idle air control valve and move to regulate the airflow at idle." + enableAemXSeries = "AEM X-Series or rusEFI Wideband" + logicAnalyzerPins1 = "logicAnalyzerPins 1" + logicAnalyzerPins2 = "logicAnalyzerPins 2" + logicAnalyzerPins3 = "logicAnalyzerPins 3" + logicAnalyzerPins4 = "logicAnalyzerPins 4" + minimumBoostClosedLoopMap = "Minimum MAP before closed loop boost is enabled. Use to prevent misbehavior upon entering boost." + acFanPin = "Optional Radiator Fan used with A/C" + idlePidRpmUpperLimit = "How far above idle speed do we consider idling?" + applyNonlinearBelowPulse = "Apply nonlinearity correction below a pulse of this duration. Pulses longer than this duration will receive no adjustment." + clutchUpPin = "Some vehicles have a switch to indicate that clutch pedal is all the way up" + max31855_cs1 = "max31855_cs 1" + max31855_cs2 = "max31855_cs 2" + max31855_cs3 = "max31855_cs 3" + max31855_cs4 = "max31855_cs 4" + max31855_cs5 = "max31855_cs 5" + max31855_cs6 = "max31855_cs 6" + max31855_cs7 = "max31855_cs 7" + max31855_cs8 = "max31855_cs 8" + flexSensorPin = "Continental/GM flex fuel sensor, 50-150hz type" + stoichRatioSecondary = "Stoichiometric ratio for your secondary fuel. This value is used when the Flex Fuel sensor indicates E100, typically 9.0" + etbMaximumPosition = "Maximum allowed ETB position. Some throttles go past fully open, so this allows you to limit it to fully open." + sdCardPeriodMs = "SD card logging period, in milliseconds" + starterRelayDisablePinMode = "On some vehicles we can disable starter once engine is already running" + secondSolenoidPin = "Some Subaru and some Mazda use double-solenoid idle air valve" + startStopButtonPin = "See also starterControlPin" + mapMinBufferLength = "This many MAP samples are used to estimate the current MAP. This many samples are considered, and the minimum taken. Recommended value is 1 for single-throttle engines, and your number of cylinders for individual throttle bodies." + idlePidDeactivationTpsThreshold = "Below this throttle position, the engine is considered idling. If you have an electronic throttle, this checks accelerator pedal position instead of throttle position, and should be set to 1-2%." + startCrankingDuration = "Maximum time to crank starter when start/stop button is pressed" + triggerErrorPin = "This pin is used for debugging - snap a logic analyzer on it and see if it's ever high" + scriptSetting1 = "scriptSetting 1" + scriptSetting2 = "scriptSetting 2" + scriptSetting3 = "scriptSetting 3" + scriptSetting4 = "scriptSetting 4" + scriptSetting5 = "scriptSetting 5" + scriptSetting6 = "scriptSetting 6" + scriptSetting7 = "scriptSetting 7" + scriptSetting8 = "scriptSetting 8" + cdmInputPin = "Saab Combustion Detection Module knock signal input pin" + sensorChartMode = "rusEFI console Sensor Sniffer mode" + useHbridgesToDriveIdleStepper = "If enabled we use two H-bridges to drive stepper idle air valve" + enableCanVss = "Read VSS from OEM CAN bus according to selected CAN vehicle configuration." + stftIgnoreErrorMagnitude = "If enabled, adjust at a constant rate instead of a rate proportional to the current lambda error. This mode may be easier to tune, and more tolerant of sensor noise. Use of this mode is required if you have a narrowband O2 sensor." + verboseVVTDecoding = "enable vvt_details" + invertCamVVTSignal = "get invertCamVVTSignal" + consumeObdSensors = "This property is useful if using rusEFI as TCM or BCM only" + useRawOutputToDriveIdleStepper = "If enabled we use four Push-Pull outputs to directly drive stepper idle air valve coilss" + verboseCan2 = "Print incoming and outgoing second bus CAN messages in rusEFI console" + etbIo1_controlPin = "Acts as EN pin in two-wire mode" + etbIo2_controlPin = "Acts as EN pin in two-wire mode" + boostControlPin = "Wastegate control Solenoid" + boostPid_offset = "Linear addition to PID logic" + boostPid_periodMs = "PID dTime" + boostPid_minValue = "Output Min Duty Cycle" + boostPid_maxValue = "Output Max Duty Cycle" + launchSpeedThreshold = "Disabled above this speed" + launchTimingRpmRange = "Range from Launch Rpm for Timing Retard to activate" + launchFuelAdded = "Extra Fuel Added" + launchBoostDuty = "Duty Cycle for the Boost Solenoid" + hardCutRpmRange = "RPM Range for Hard Cut" + stft_maxIdleRegionRpm = "Below this RPM, the idle region is active" + stft_maxOverrunLoad = "Below this engine load, the overrun region is active" + stft_minPowerLoad = "Above this engine load, the power region is active" + stft_deadband = "When close to correct AFR, pause correction. This can improve stability by not changing the adjustment if the error is extremely small, but is not required." + stft_minClt = "Below this temperature, correction is disabled." + stft_minAfr = "Below this AFR, correction is paused" + stft_maxAfr = "Above this AFR, correction is paused" + stft_startupDelay = "Delay after starting the engine before beginning closed loop correction." + stft_cellCfgs1_timeConstant = "Time constant for correction while in this cell: this sets responsiveness of the closed loop correction. A value of 5.0 means it will try to make most of the correction within 5 seconds, and a value of 1.0 will try to correct within 1 second." + stft_cellCfgs2_timeConstant = "Time constant for correction while in this cell: this sets responsiveness of the closed loop correction. A value of 5.0 means it will try to make most of the correction within 5 seconds, and a value of 1.0 will try to correct within 1 second." + stft_cellCfgs3_timeConstant = "Time constant for correction while in this cell: this sets responsiveness of the closed loop correction. A value of 5.0 means it will try to make most of the correction within 5 seconds, and a value of 1.0 will try to correct within 1 second." + stft_cellCfgs4_timeConstant = "Time constant for correction while in this cell: this sets responsiveness of the closed loop correction. A value of 5.0 means it will try to make most of the correction within 5 seconds, and a value of 1.0 will try to correct within 1 second." + stepperDcIo1_controlPin = "Acts as EN pin in two-wire mode" + stepperDcIo2_controlPin = "Acts as EN pin in two-wire mode" + engineMake = "For example, BMW, GM or Chevrolet" + engineCode = "For example, LS1 or NB2" + vehicleName = "For example, Hunchback or Orange Miata" + tcu_solenoid1 = "tcu_solenoid 1" + tcu_solenoid2 = "tcu_solenoid 2" + tcu_solenoid3 = "tcu_solenoid 3" + tcu_solenoid4 = "tcu_solenoid 4" + tcu_solenoid5 = "tcu_solenoid 5" + tcu_solenoid6 = "tcu_solenoid 6" + etbFunctions1 = "etbFunctions 1" + etbFunctions2 = "etbFunctions 2" + luaOutputPins1 = "luaOutputPins 1" + luaOutputPins2 = "luaOutputPins 2" + luaOutputPins3 = "luaOutputPins 3" + luaOutputPins4 = "luaOutputPins 4" + luaOutputPins5 = "luaOutputPins 5" + luaOutputPins6 = "luaOutputPins 6" + luaOutputPins7 = "luaOutputPins 7" + luaOutputPins8 = "luaOutputPins 8" + vvtOffsets1 = "+Angle between cam sensor and VVT zero position" + vvtOffsets2 = "+Angle between cam sensor and VVT zero position" + vvtOffsets3 = "+Angle between cam sensor and VVT zero position" + vvtOffsets4 = "+Angle between cam sensor and VVT zero position" + gpPwmNote1 = "gpPwmNote 1" + gpPwmNote2 = "gpPwmNote 2" + gpPwmNote3 = "gpPwmNote 3" + gpPwmNote4 = "gpPwmNote 4" + fuelClosedLoopCorrectionEnabled = "Enables lambda sensor closed loop feedback for fuelling." + isVerboseIAC = "Print details into rusEFI console" + 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" + canReadEnabled = "enable can_read/disable can_read" + canWriteEnabled = "enable can_write/disable can_write" + tachPulseDurationAsDutyCycle = "Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50%" + 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." + launchSparkCutEnable = "This is the Cut Mode normally used" + useFSIO5ForCriticalIssueEngineStop = "Sometimes we just have to shut the engine down. Use carefully!" + useFSIO4ForSeriousEngineWarning = "Sometimes we have to miss injection on purpose to attract driver's attention" + skippedWheelOnCam = "Where is your primary skipped wheel located?" + acSwitch = "A/C button input" + etbNeutralPosition = "Expected neutral position" + idleMode = "See also idleRpmPid" + 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." + complexWallModel = "Should we use tables to vary tau/beta based on CLT/MAP, or just with fixed values?" + overrideCrankingIacSetting = "If enabled, use separate temperature multiplier table for cranking idle position." + 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" + isManualSpinningMode = "Usually if we have no trigger events that means engine is stopped" + twoWireBatchInjection = "This is needed if your coils are individually wired and you wish to use batch injection." + useOnlyRisingEdgeForTrigger = "VR sensors are only precise on rising front" + twoWireBatchIgnition = "This is needed if your coils are individually wired (COP) and you wish to use batch ignition (Wasted Spark)." + useSeparateAdvanceForCranking = "In Constant mode, timing is automatically tapered to running as RPM increases." + useAdvanceCorrectionsForCranking = "This enables the various ignition corrections during cranking (IAT, CLT, FSIO and PID idle)." + flexCranking = "Enable a second cranking table to use for E100 flex fuel, interpolating between the two based on flex fuel sensor." + useIacPidMultTable = "This flag allows to use a special 'PID Multiplier' table (0.0-1.0) to compensate for nonlinear nature of IAC-RPM controller" + launchSmoothRetard = "Interpolates the Ignition Retard from 0 to 100% within the RPM Range" + isPhaseSyncRequiredForIgnition = "Some engines are OK running semi-random sequential while other engine require phase synchronization" + camInputsDebug1 = "camInputsDebug 1" + camInputsDebug2 = "camInputsDebug 2" + camInputsDebug3 = "camInputsDebug 3" + camInputsDebug4 = "camInputsDebug 4" + acIdleRpmBump = "Extra idle target speed when A/C is enabled. Some cars need the extra speed to keep the AC efficient while idling." + warningPeriod = "set warningPeriod X" + noAccelAfterHardLimitPeriodSecs = "TODO: finish this #413" + mapAveragingSchedulingAtIndex = "At what trigger index should some MAP-related math be executed? This is a performance trick to reduce load on synchronization trigger callback." + tachPulseDuractionMs = "Duration in ms or duty cycle depending on selected mode" + wwaeTau = "Length of time the deposited wall fuel takes to dissipate after the start of acceleration." + alternatorControl_offset = "Linear addition to PID logic" + alternatorControl_periodMs = "PID dTime" + alternatorControl_minValue = "Output Min Duty Cycle" + alternatorControl_maxValue = "Output Max Duty Cycle" + etb_offset = "Linear addition to PID logic" + etb_periodMs = "PID dTime" + etb_minValue = "Output Min Duty Cycle" + etb_maxValue = "Output Max Duty Cycle" + triggerInputDebugPins1 = "triggerInputDebugPins 1" + triggerInputDebugPins2 = "triggerInputDebugPins 2" + triggerInputDebugPins3 = "triggerInputDebugPins 3" + tps2Min = "Closed throttle#2. todo: extract these two fields into a structure" + tps2Max = "Full throttle#2. tpsMax value as 10 bit ADC value. Not Voltage!" + starterControlPin = "See also startStopButtonPin" + mapErrorDetectionTooLow = "kPa value which is too low to be true" + mapErrorDetectionTooHigh = "kPa value which is too high to be true" + multisparkSparkDuration = "How long to wait for the spark to fire before recharging the coil for another spark." + multisparkDwell = "This sets the dwell time for subsequent sparks. The main spark's dwell is set by the dwell table." + idleRpmPid_offset = "Linear addition to PID logic" + idleRpmPid_periodMs = "PID dTime" + idleRpmPid_minValue = "Output Min Duty Cycle" + idleRpmPid_maxValue = "Output Max Duty Cycle" + 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." + communicationLedPin = "blue LED on many rusEFI boards." + runningLedPin = "Green LED on many rusEFI boards." + binarySerialTxPin = "See also EFI_CONSOLE_RX_BRAIN_PIN" + auxValves1 = "auxValves 1" + auxValves2 = "auxValves 2" + throttlePedalWOTVoltage = "Pedal in the floor" + startUpFuelPumpDuration = "on ECU start turn fuel pump on to build fuel pressure" + idlePidRpmDeadZone = "If the RPM closer to target than this value, disable closed loop idle correction to prevent oscillation" + 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." + 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" + auxSerialTxPin = "Auxiliary sensor serial, not to be confused with secondary calibration serial" + auxSerialRxPin = "Auxiliary sensor serial, not to be confused with secondary calibration serial" + tpsAccelLookback = "How long to look back for TPS-based acceleration enrichment. Increasing this time will trigger enrichment for longer when a throttle position change occurs." + coastingFuelCutVssLow = "Below this speed, disable DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears." + coastingFuelCutVssHigh = "Above this speed, allow DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears." + noFuelTrimAfterDfcoTime = "Pause closed loop fueling after deceleration fuel cut occurs. Set this to a little longer than however long is required for normal fueling behavior to resume after fuel cut." + 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." + auxSpeedSensorInputPin1 = "auxSpeedSensorInputPin 1" + auxSpeedSensorInputPin2 = "auxSpeedSensorInputPin 2" + injectionTimingMode = "Sets what part of injection's is controlled by the injection phase table." + uartConsoleSerialSpeed = "Band rate for primary TTL" + tpsDecelEnleanmentThreshold = "For decel we simply multiply delta of TPS and tFor decel we do not use table?!" + tpsDecelEnleanmentMultiplier = "Magic multiplier, we multiply delta of TPS and get fuel squirt duration" + slowAdcAlpha = "ExpAverage alpha coefficient" + debugMode = "See http://rusefi.com/s/debugmode" + throttlePedalSecondaryWOTVoltage = "Pedal in the floor" + canBaudRate = "set can_baudrate" + veOverrideMode = "Override the Y axis (load) value used for the VE table." + afrOverrideMode = "Override the Y axis (load) value used for the AFR table." + mc33_hpfp_i_hold_off = "How long to deactivate power when hold current is reached before applying power again" + mc33_hpfp_max_hold = "Maximum amount of time the solenoid can be active before assuming a programming error" + stepperDcInvertedPins = "Enable if DC-motor driver (H-bridge) inverts the signals (eg. RZ7899 on Hellen boards)" + benchTestOffTime = "Time between bench test pulses" + benchTestCount = "How many test bench pulses do you want" + benchTestOnTime = "Length of each of the test pulses" + can2TxPin = "set_can2_tx_pin X" + can2RxPin = "set_can2_rx_pin X" + ignOverrideMode = "Override the Y axis (load) value used for the ignition table." + injectorPressureType = "Select which fuel pressure sensor measures the pressure of the fuel at your injectors." + boostCutPressure = "MAP value above which fuel is cut in case of overboost." + fixedTiming = "Fixed timing, useful for TDC testing" + mapLowValueVoltage = "MAP voltage for low point" + mapHighValueVoltage = "MAP voltage for low point" + egoValueShift = "EGO value correction" + vvtPins1 = "vvtPins 1" + vvtPins2 = "vvtPins 2" + vvtPins3 = "vvtPins 3" + vvtPins4 = "vvtPins 4" + crankingIACposition = "This is the IAC position during cranking, some engines start better if given more air during cranking to improve cylinder filling." + vvtOutputFrequency1 = "vvtOutputFrequency 1" + vvtOutputFrequency2 = "vvtOutputFrequency 2" + fan1ExtraIdle = "Additional idle % when fan #1 is active" + vvtMode1 = "set vvt_mode X 1" + vvtMode2 = "set vvt_mode X 2" + fan2ExtraIdle = "Additional idle % when fan #2 is active" + primingDelay = "Delay to allow fuel pressure to build before firing the priming pulse." + auxAnalogInputs1 = "auxAnalogInputs 1" + auxAnalogInputs2 = "auxAnalogInputs 2" + auxAnalogInputs3 = "auxAnalogInputs 3" + auxAnalogInputs4 = "auxAnalogInputs 4" + auxAnalogInputs5 = "auxAnalogInputs 5" + auxAnalogInputs6 = "auxAnalogInputs 6" + auxAnalogInputs7 = "auxAnalogInputs 7" + auxAnalogInputs8 = "auxAnalogInputs 8" + trailingCoilPins1 = "trailingCoilPins 1" + trailingCoilPins2 = "trailingCoilPins 2" + trailingCoilPins3 = "trailingCoilPins 3" + trailingCoilPins4 = "trailingCoilPins 4" + trailingCoilPins5 = "trailingCoilPins 5" + trailingCoilPins6 = "trailingCoilPins 6" + trailingCoilPins7 = "trailingCoilPins 7" + trailingCoilPins8 = "trailingCoilPins 8" + trailingCoilPins9 = "trailingCoilPins 9" + trailingCoilPins10 = "trailingCoilPins 10" + trailingCoilPins11 = "trailingCoilPins 11" + trailingCoilPins12 = "trailingCoilPins 12" + injectorCompensationMode = "None = I have a MAP-referenced fuel pressure regulator" + fuelReferencePressure = "This is the pressure at which your injector flow is known." + postCrankingFactor = "Fuel multiplier (enrichment) immediately after engine start" + postCrankingDurationSec = "Time over which to taper out after start enrichment" + auxTempSensor1_tempC_1 = "these values are in Celcius" + auxTempSensor1_bias_resistor = "Pull-up resistor value on your board" + auxTempSensor2_tempC_1 = "these values are in Celcius" + auxTempSensor2_bias_resistor = "Pull-up resistor value on your board" + etbWastegatePid_offset = "Linear addition to PID logic" + etbWastegatePid_periodMs = "PID dTime" + etbWastegatePid_minValue = "Output Min Duty Cycle" + etbWastegatePid_maxValue = "Output Max Duty Cycle" + stepperNumMicroSteps = "For micro-stepping, make sure that PWM frequency (etbFreq) is high enough" + stepperMinDutyCycle = "Use to limit the current when the stepper motor is idle, not moving (100% = no limit)" + stepperMaxDutyCycle = "Use to limit the max.current through the stepper motor (100% = no limit)" + timing_offset_cylinder1 = "per-cylinder timing correction 1" + timing_offset_cylinder2 = "per-cylinder timing correction 2" + timing_offset_cylinder3 = "per-cylinder timing correction 3" + timing_offset_cylinder4 = "per-cylinder timing correction 4" + timing_offset_cylinder5 = "per-cylinder timing correction 5" + timing_offset_cylinder6 = "per-cylinder timing correction 6" + timing_offset_cylinder7 = "per-cylinder timing correction 7" + timing_offset_cylinder8 = "per-cylinder timing correction 8" + timing_offset_cylinder9 = "per-cylinder timing correction 9" + timing_offset_cylinder10 = "per-cylinder timing correction 10" + timing_offset_cylinder11 = "per-cylinder timing correction 11" + timing_offset_cylinder12 = "per-cylinder timing correction 12" + spi1MosiMode = "Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc." + mc33816_rstb = "ResetB" + brakePedalPin = "Brake pedal switch" + cj125ua = "lambda input" + cj125ur = "heater input" + auxPid1_offset = "Linear addition to PID logic" + auxPid1_periodMs = "PID dTime" + auxPid1_minValue = "Output Min Duty Cycle" + auxPid1_maxValue = "Output Max Duty Cycle" + auxPid2_offset = "Linear addition to PID logic" + auxPid2_periodMs = "PID dTime" + auxPid2_minValue = "Output Min Duty Cycle" + auxPid2_maxValue = "Output Max Duty Cycle" + injectorCorrectionPolynomial1 = "injectorCorrectionPolynomial 1" + injectorCorrectionPolynomial2 = "injectorCorrectionPolynomial 2" + injectorCorrectionPolynomial3 = "injectorCorrectionPolynomial 3" + injectorCorrectionPolynomial4 = "injectorCorrectionPolynomial 4" + injectorCorrectionPolynomial5 = "injectorCorrectionPolynomial 5" + injectorCorrectionPolynomial6 = "injectorCorrectionPolynomial 6" + injectorCorrectionPolynomial7 = "injectorCorrectionPolynomial 7" + injectorCorrectionPolynomial8 = "injectorCorrectionPolynomial 8" + fan2OnTemperature = "Cooling fan turn-on temperature threshold, in Celsius" + fan2OffTemperature = "Cooling fan turn-off temperature threshold, in Celsius" + servoOutputPins1 = "todo: more comments 1" + servoOutputPins2 = "todo: more comments 2" + servoOutputPins3 = "todo: more comments 3" + servoOutputPins4 = "todo: more comments 4" + servoOutputPins5 = "todo: more comments 5" + servoOutputPins6 = "todo: more comments 6" + servoOutputPins7 = "todo: more comments 7" + servoOutputPins8 = "todo: more comments 8" + coastingFuelCutRpmHigh = "This sets the RPM above which fuel cut is active." + coastingFuelCutRpmLow = "This sets the RPM below which fuel cut is deactivated, this prevents jerking or issues transitioning to idle" + coastingFuelCutTps = "Throttle position below which fuel cut is active. With an electronic throttle enabled, this checks against pedal position." + coastingFuelCutClt = "Fuel cutoff is disabled when the engine is cold." + pidExtraForLowRpm = "Increases PID reaction for RPM , 50, , true + + filter = VBatt, "VBatt", VBatt < , 12, , true + + filter = minTps, "Minimum TPS", TPSValue, < , 1, , true + + +; +; in order to add new TunerStudio gauge you need to chagne two places +; 1) add a line here in '[OutputChannels]' +; 2) in rusEFI firmware make a change to output_channels.txt +; +[OutputChannels] + + ochGetCommand = "O%2o%2c" + +; see TS_OUTPUT_SIZE in console source code + ochBlockSize = 1016 + +; +; see TunerStudioOutputChannels struct +; + +sd_present = bits, U32, 0, [0:0] +isIgnitionEnabledIndicator = bits, U32, 0, [1:1] +isInjectionEnabledIndicator = bits, U32, 0, [2:2] +sd_logging_internal = bits, U32, 0, [3:3] +unusedb4 = bits, U32, 0, [4:4] +isFuelPumpOn = bits, U32, 0, [5:5] +isFanOn = bits, U32, 0, [6:6] +isO2HeaterOn = bits, U32, 0, [7:7] +checkEngine = bits, U32, 0, [8:8] +needBurn = bits, U32, 0, [9:9] +sd_msd = bits, U32, 0, [10:10] +clutchUpState = bits, U32, 0, [11:11] +clutchDownState = bits, U32, 0, [12:12] +isFan2On = bits, U32, 0, [13:13] +alternatorOnOff = bits, U32, 0, [14:14] +brakePedalState = bits, U32, 0, [15:15] +toothLogReady = bits, U32, 0, [16:16] +unused3123 = bits, U32, 0, [17:17] +isTpsError = bits, U32, 0, [18:18] +isCltError = bits, U32, 0, [19:19] +isMapError = bits, U32, 0, [20:20] +isIatError = bits, U32, 0, [21:21] +unused131313 = bits, U32, 0, [22:22] +isTriggerError = bits, U32, 0, [23:23] +hasCriticalError = bits, U32, 0, [24:24] +isWarnNow = bits, U32, 0, [25:25] +isPedalError = bits, U32, 0, [26:26] +isKnockChipOk = bits, U32, 0, [27:27] +launchTriggered = bits, U32, 0, [28:28] +isTps2Error = bits, U32, 0, [29:29] +isIdleClosedLoop = bits, U32, 0, [30:30] +isIdleCoasting = bits, U32, 0, [31:31] +RPMValue = scalar, U16, 4, "RPM", 1, 0 +rpmAcceleration = scalar, U16, 6, "RPM/s", 1, 0 +speedToRpmRatio = scalar, U16, 8, "value", 0.01, 0 +vehicleSpeedKph = scalar, U08, 10, "kph", 1, 0 +internalMcuTemperature = scalar, S08, 11, "deg C", 1, 0 +coolant = scalar, S16, 12, "deg C", 0.01, 0 +intake = scalar, S16, 14, "deg C", 0.01, 0 +auxTemp1 = scalar, S16, 16, "deg C", 0.01, 0 +auxTemp2 = scalar, S16, 18, "deg C", 0.01, 0 +TPSValue = scalar, S16, 20, "%", 0.01, 0 +throttlePedalPosition = scalar, S16, 22, "%", 0.01, 0 +tpsADC = scalar, U16, 24, "ADC", 1, 0 +rawMaf = scalar, U16, 26, "V", 0.001, 0 +mafMeasured = scalar, U16, 28, "kg/h", 0.1, 0 +MAPValue = scalar, U16, 30, "kPa", 0.03333333333333333, 0 +baroPressure = scalar, U16, 32, "kPa", 0.03333333333333333, 0 +lambdaValue = scalar, U16, 34, "", 1.0E-4, 0 +knockRetard = scalar, U08, 36, "deg", 0.1, 0 +idleCurrentPosition = scalar, U08, 37, "%", 0.5, 0 +VBatt = scalar, U16, 38, "V", 0.001, 0 +oilPressure = scalar, U16, 40, "kPa", 0.03333333333333333, 0 +vvtPositionB1I = scalar, S16, 42, "deg", 0.02, 0 +chargeAirMass = scalar, U16, 44, "g", 0.001, 0 +crankingFuelMs = scalar, U16, 46, "ms", 0.01, 0 +currentTargetAfr = scalar, U16, 48, "ratio", 0.001, 0 +baseFuel = scalar, U16, 50, "mg", 0.01, 0 +fuelRunning = scalar, U16, 52, "mg", 0.01, 0 +actualLastInjection = scalar, U16, 54, "ms", 0.0033333333333333335, 0 +injectorDutyCycle = scalar, U08, 56, "%", 0.5, 0 +veValue = scalar, U08, 57, "ratio", 0.5, 0 +injectionOffset = scalar, S16, 58, "deg", 1, 0 +tCharge = scalar, S16, 60, "deg C", 0.01, 0 +injectorLagMs = scalar, U16, 62, "ms", 0.0033333333333333335, 0 +iatCorrection = scalar, U16, 64, "%", 0.01, 0 +cltCorrection = scalar, U16, 66, "%", 0.01, 0 +baroCorrection = scalar, U16, 68, "%", 0.01, 0 +currentEnginePhase = scalar, U16, 70, "deg", 1, 0 +wallFuelAmount = scalar, U16, 72, "mg", 0.01, 0 +wallFuelCorrection = scalar, S16, 74, "mg", 0.01, 0 +revolutionCounterSinceStart = scalar, U16, 76, "", 1, 0 +deltaTps = scalar, S16, 78, "ratio", 0.01, 0 +canReadCounter = scalar, U16, 80, "", 1, 0 +tpsAccelFuel = scalar, S16, 82, "ms", 0.0033333333333333335, 0 +ignitionAdvance = scalar, S16, 84, "deg", 0.02, 0 +sparkDwellValue = scalar, U16, 86, "ms", 0.0033333333333333335, 0 +coilDutyCycle = scalar, U16, 88, "%", 0.01, 0 +idleAirValvePosition = scalar, U16, 90, "%", 0.01, 0 +etbTarget = scalar, S16, 92, "%", 0.01, 0 +etb1DutyCycle = scalar, S16, 94, "%", 0.01, 0 +etb1Error = scalar, S16, 96, "%", 0.01, 0 +fuelTankLevel = scalar, S16, 98, "%", 0.01, 0 +totalFuelConsumption = scalar, U16, 100, "grams", 1, 0 +fuelFlowRate = scalar, U16, 102, "gram/s", 0.005, 0 +veTableYAxis = scalar, U16, 104, "%", 0.01, 0 +afrTableYAxis = scalar, U16, 106, "%", 0.01, 0 +knockLevel = scalar, F32, 108, "Volts", 1, 0 +seconds = scalar, U32, 112, "sec", 1, 0 +engineMode = scalar, U32, 116, "em", 1, 0 +firmwareVersion = scalar, U32, 120, "version_f", 1, 0 +tsConfigVersion = scalar, U32, 124, "", 1, 0 +calibrationValue = scalar, F32, 128, "", 1, 0 +calibrationMode = scalar, U08, 132, "", 1, 0 +idleTargetPosition = scalar, U08, 133, "", 1, 0 +fuelingLoad = scalar, U16, 134, "%", 0.01, 0 +ignitionLoad = scalar, U16, 136, "%", 0.01, 0 +engineMakeCodeNameCrc16 = scalar, U16, 138, "crc16", 1, 0 +totalTriggerErrorCounter = scalar, U32, 140, "counter", 1, 0 +orderingErrorCounter = scalar, U32, 144, "", 1, 0 +warningCounter = scalar, U16, 148, "count", 1, 0 +lastErrorCode = scalar, U16, 150, "error", 1, 0 +recentErrorCode1 = scalar, U16, 152, "error", 1, 0 +recentErrorCode2 = scalar, U16, 154, "error", 1, 0 +recentErrorCode3 = scalar, U16, 156, "error", 1, 0 +recentErrorCode4 = scalar, U16, 158, "error", 1, 0 +recentErrorCode5 = scalar, U16, 160, "error", 1, 0 +recentErrorCode6 = scalar, U16, 162, "error", 1, 0 +recentErrorCode7 = scalar, U16, 164, "error", 1, 0 +recentErrorCode8 = scalar, U16, 166, "error", 1, 0 +debugFloatField1 = scalar, F32, 168, "val", 1, 0 +debugFloatField2 = scalar, F32, 172, "val", 1, 0 +debugFloatField3 = scalar, F32, 176, "val", 1, 0 +debugFloatField4 = scalar, F32, 180, "val", 1, 0 +debugFloatField5 = scalar, F32, 184, "val", 1, 0 +debugFloatField6 = scalar, F32, 188, "val", 1, 0 +debugFloatField7 = scalar, F32, 192, "val", 1, 0 +debugIntField1 = scalar, U32, 196, "val", 1, 0 +debugIntField2 = scalar, U32, 200, "val", 1, 0 +debugIntField3 = scalar, U32, 204, "val", 1, 0 +debugIntField4 = scalar, S16, 208, "val", 1, 0 +debugIntField5 = scalar, S16, 210, "val", 1, 0 +accelerationX = scalar, S16, 212, "G", 0.01, 0 +accelerationY = scalar, S16, 214, "G", 0.01, 0 +egt1 = scalar, U16, 216, "deg C", 1, 0 +egt2 = scalar, U16, 218, "deg C", 1, 0 +egt3 = scalar, U16, 220, "deg C", 1, 0 +egt4 = scalar, U16, 222, "deg C", 1, 0 +egt5 = scalar, U16, 224, "deg C", 1, 0 +egt6 = scalar, U16, 226, "deg C", 1, 0 +egt7 = scalar, U16, 228, "deg C", 1, 0 +egt8 = scalar, U16, 230, "deg C", 1, 0 +TPS2Value = scalar, S16, 232, "%", 0.01, 0 +rawTps1Primary = scalar, S16, 234, "V", 0.001, 0 +rawPpsPrimary = scalar, S16, 236, "V", 0.001, 0 +rawClt = scalar, S16, 238, "V", 0.001, 0 +rawIat = scalar, S16, 240, "V", 0.001, 0 +rawOilPressure = scalar, S16, 242, "V", 0.001, 0 +tuneCrc16 = scalar, U16, 244, "crc16", 1, 0 +fuelClosedLoopBinIdx = scalar, U08, 246, "", 1, 0 +tcuCurrentGear = scalar, S08, 247, "gear", 1, 0 +rawPpsSecondary = scalar, S16, 248, "V", 0.001, 0 +knock1 = scalar, S08, 250, "dBv", 1, 0 +knock2 = scalar, S08, 251, "dBv", 1, 0 +knock3 = scalar, S08, 252, "dBv", 1, 0 +knock4 = scalar, S08, 253, "dBv", 1, 0 +knock5 = scalar, S08, 254, "dBv", 1, 0 +knock6 = scalar, S08, 255, "dBv", 1, 0 +knock7 = scalar, S08, 256, "dBv", 1, 0 +knock8 = scalar, S08, 257, "dBv", 1, 0 +knock9 = scalar, S08, 258, "dBv", 1, 0 +knock10 = scalar, S08, 259, "dBv", 1, 0 +knock11 = scalar, S08, 260, "dBv", 1, 0 +knock12 = scalar, S08, 261, "dBv", 1, 0 +tcuDesiredGear = scalar, S08, 262, "gear", 1, 0 +flexPercent = scalar, U08, 263, "%", 0.5, 0 +rawIdlePositionSensor = scalar, S16, 264, "V", 0.001, 0 +rawWastegatePosition = scalar, S16, 266, "V", 0.001, 0 +wastegatePositionSensor = scalar, S16, 268, "%", 0.01, 0 +idlePositionSensor = scalar, S16, 270, "%", 0.01, 0 +rawLowFuelPressure = scalar, S16, 272, "V", 0.001, 0 +rawHighFuelPressure = scalar, S16, 274, "V", 0.001, 0 +lowFuelPressure = scalar, S16, 276, "kpa", 0.03333333333333333, 0 +highFuelPressure = scalar, S16, 278, "bar", 0.1, 0 +targetLambda = scalar, U16, 280, "", 1.0E-4, 0 +AFRValue = scalar, U16, 282, "AFR", 0.001, 0 +VssAcceleration = scalar, U16, 284, "m/s2", 0.0033333333333333335, 0 +lambdaValue2 = scalar, U16, 286, "", 1.0E-4, 0 +AFRValue2 = scalar, U16, 288, "AFR", 0.001, 0 +vvtPositionB1E = scalar, S16, 290, "deg", 0.02, 0 +vvtPositionB2I = scalar, S16, 292, "deg", 0.02, 0 +vvtPositionB2E = scalar, S16, 294, "deg", 0.02, 0 +fuelPidCorrection1 = scalar, S16, 296, "%", 0.01, 0 +fuelPidCorrection2 = scalar, S16, 298, "%", 0.01, 0 +rawTps1Secondary = scalar, S16, 300, "V", 0.001, 0 +rawTps2Primary = scalar, S16, 302, "V", 0.001, 0 +rawTps2Secondary = scalar, S16, 304, "V", 0.001, 0 +knockCount = scalar, U16, 306, "", 1, 0 +accelerationZ = scalar, S16, 308, "G", 0.01, 0 +accelerationRoll = scalar, S16, 310, "G", 0.01, 0 +accelerationYaw = scalar, S16, 312, "G", 0.01, 0 +vvtTargets1 = scalar, S08, 314, "deg", 1, 0 +vvtTargets2 = scalar, S08, 315, "deg", 1, 0 +vvtTargets3 = scalar, S08, 316, "deg", 1, 0 +vvtTargets4 = scalar, S08, 317, "deg", 1, 0 +turboSpeed = scalar, U16, 318, "hz", 1, 0 +wbTemperature1 = scalar, U16, 320, "deg C", 1, 0 +wbTemperature2 = scalar, U16, 322, "deg C", 1, 0 +wbHeaterDuty1 = scalar, U08, 324, "%", 1, 0 +wbHeaterDuty2 = scalar, U08, 325, "%", 1, 0 +tps1Split = scalar, S16, 326, "%", 0.01, 0 +tps2Split = scalar, S16, 328, "%", 0.01, 0 +tps12Split = scalar, S16, 330, "%", 0.01, 0 +accPedalSplit = scalar, S16, 332, "%", 0.01, 0 +m_requested_pump = scalar, S16, 334, "deg", 0.02, 0 +boostControlTarget = scalar, S16, 336, "kPa", 0.03333333333333333, 0 +sparkCutReason = scalar, S08, 338, "code", 1, 0 +fuelCutReason = scalar, S08, 339, "code", 1, 0 +fuel_requested_percent = scalar, F32, 340, "v", 1, 0 +fuel_requested_percent_pi = scalar, F32, 344, "v", 1, 0 +m_I_sum_percent = scalar, F32, 348, "v", 1, 0 +m_pressureTarget_kPa = scalar, F32, 352, "v", 1, 0 +mafEstimate = scalar, U16, 356, "kg/h", 0.1, 0 +instantRpm = scalar, U16, 358, "rpm", 1, 0 +di_nextStart = scalar, F32, 360, "v", 1, 0 +systemEventReuse = scalar, U16, 364, "counter", 1, 0 +rawMap = scalar, U16, 366, "V", 0.001, 0 +rawAfr = scalar, U16, 368, "V", 0.001, 0 +tpsAccelFrom = scalar, U08, 370, "%", 1, 0 +tpsAccelTo = scalar, U08, 371, "%", 1, 0 +calibrationValue2 = scalar, F32, 372, "", 1, 0 +isMainRelayOn = bits, U32, 376, [0:0] +isUsbConnected = bits, U32, 376, [1:1] +unusedBit_182_2 = bits, U32, 376, [2:2] +unusedBit_182_3 = bits, U32, 376, [3:3] +unusedBit_182_4 = bits, U32, 376, [4:4] +unusedBit_182_5 = bits, U32, 376, [5:5] +unusedBit_182_6 = bits, U32, 376, [6:6] +unusedBit_182_7 = bits, U32, 376, [7:7] +unusedBit_182_8 = bits, U32, 376, [8:8] +unusedBit_182_9 = bits, U32, 376, [9:9] +unusedBit_182_10 = bits, U32, 376, [10:10] +unusedBit_182_11 = bits, U32, 376, [11:11] +unusedBit_182_12 = bits, U32, 376, [12:12] +unusedBit_182_13 = bits, U32, 376, [13:13] +unusedBit_182_14 = bits, U32, 376, [14:14] +unusedBit_182_15 = bits, U32, 376, [15:15] +unusedBit_182_16 = bits, U32, 376, [16:16] +unusedBit_182_17 = bits, U32, 376, [17:17] +unusedBit_182_18 = bits, U32, 376, [18:18] +unusedBit_182_19 = bits, U32, 376, [19:19] +unusedBit_182_20 = bits, U32, 376, [20:20] +unusedBit_182_21 = bits, U32, 376, [21:21] +unusedBit_182_22 = bits, U32, 376, [22:22] +unusedBit_182_23 = bits, U32, 376, [23:23] +unusedBit_182_24 = bits, U32, 376, [24:24] +unusedBit_182_25 = bits, U32, 376, [25:25] +unusedBit_182_26 = bits, U32, 376, [26:26] +unusedBit_182_27 = bits, U32, 376, [27:27] +unusedBit_182_28 = bits, U32, 376, [28:28] +unusedBit_182_29 = bits, U32, 376, [29:29] +unusedBit_182_30 = bits, U32, 376, [30:30] +unusedBit_182_31 = bits, U32, 376, [31:31] +luaInvocationCounter = scalar, S32, 380, "count", 1, 0 +luaLastCycleDuration = scalar, S32, 384, "nt", 1, 0 +testBenchIter = scalar, U08, 388, "count", 1, 0 +unusedWat = scalar, U08, 389, "", 1, 0 +tcRatio = scalar, U16, 390, "value", 0.01, 0 +lastShiftTime = scalar, F32, 392, "", 1, 0 +vssEdgeCounter = scalar, S32, 396, "", 1, 0 +issEdgeCounter = scalar, S32, 400, "", 1, 0 +auxLinear1 = scalar, S16, 404, "", 0.01, 0 +auxLinear2 = scalar, S16, 406, "", 0.01, 0 +launchSpeedCondition = bits, U32, 408, [0:0] +launchRpmCondition = bits, U32, 408, [1:1] +launchTpsCondition = bits, U32, 408, [2:2] +launchActivateSwitchCondition = bits, U32, 408, [3:3] +launchIsLaunchCondition = bits, U32, 408, [4:4] +launchCombinedConditions = bits, U32, 408, [5:5] +dfcoActive = bits, U32, 408, [6:6] +tpsAccelActive = bits, U32, 408, [7:7] +unusedBit_230_8 = bits, U32, 408, [8:8] +unusedBit_230_9 = bits, U32, 408, [9:9] +unusedBit_230_10 = bits, U32, 408, [10:10] +unusedBit_230_11 = bits, U32, 408, [11:11] +unusedBit_230_12 = bits, U32, 408, [12:12] +unusedBit_230_13 = bits, U32, 408, [13:13] +unusedBit_230_14 = bits, U32, 408, [14:14] +unusedBit_230_15 = bits, U32, 408, [15:15] +unusedBit_230_16 = bits, U32, 408, [16:16] +unusedBit_230_17 = bits, U32, 408, [17:17] +unusedBit_230_18 = bits, U32, 408, [18:18] +unusedBit_230_19 = bits, U32, 408, [19:19] +unusedBit_230_20 = bits, U32, 408, [20:20] +unusedBit_230_21 = bits, U32, 408, [21:21] +unusedBit_230_22 = bits, U32, 408, [22:22] +unusedBit_230_23 = bits, U32, 408, [23:23] +unusedBit_230_24 = bits, U32, 408, [24:24] +unusedBit_230_25 = bits, U32, 408, [25:25] +unusedBit_230_26 = bits, U32, 408, [26:26] +unusedBit_230_27 = bits, U32, 408, [27:27] +unusedBit_230_28 = bits, U32, 408, [28:28] +unusedBit_230_29 = bits, U32, 408, [29:29] +unusedBit_230_30 = bits, U32, 408, [30:30] +unusedBit_230_31 = bits, U32, 408, [31:31] +boostControllerOutput = scalar, U08, 412, "%", 0.5, 0 +boostControllerOpenLoopPart = scalar, U08, 413, "%", 0.5, 0 +fallbackMap = scalar, U16, 414, "kPa", 0.1, 0 +boostControllerClosedLoopPart = scalar, S08, 416, "%", 0.5, 0 +detectedGear = scalar, U08, 417, "", 1, 0 +timingCltCorrection = scalar, S16, 418, "deg", 0.01, 0 +timingIatCorrection = scalar, S16, 420, "deg", 0.01, 0 +timingPidCorrection = scalar, S16, 422, "deg", 0.01, 0 +instantMAPValue = scalar, U16, 424, "kPa", 0.03333333333333333, 0 +mostRecentTimeBetweenSparkEvents = scalar, U16, 426, "", 1, 0 +mostRecentTimeBetweenIgnitionEvents = scalar, U16, 428, "", 1, 0 +maxLockedDuration = scalar, U16, 430, "", 1, 0 +maxTriggerReentrant = scalar, U16, 432, "", 1, 0 +canWriteOk = scalar, U16, 434, "", 1, 0 +canWriteNotOk = scalar, U16, 436, "", 1, 0 +triggerPrimaryFall = scalar, S32, 440, "", 1, 0 +triggerPrimaryRise = scalar, S32, 444, "", 1, 0 +triggerSecondaryFall = scalar, S32, 448, "", 1, 0 +triggerSecondaryRise = scalar, S32, 452, "", 1, 0 +triggerVvtFall = scalar, S32, 456, "", 1, 0 +triggerVvtRise = scalar, S32, 460, "", 1, 0 +startStopStateToggleCounter = scalar, U08, 464, "", 1, 0 +starterState = scalar, U08, 465, "", 1, 0 +starterRelayDisable = scalar, U08, 466, "", 1, 0 +multiSparkCounter = scalar, U08, 467, "", 1, 0 +injectorFlowPressureRatio = scalar, F32, 468, "", 1, 0 +injectorFlowPressureDelta = scalar, F32, 472, "kPa", 1, 0 +etbIntegralError = scalar, F32, 476, "", 1, 0 +etbCurrentTarget = scalar, F32, 480, "%", 1, 0 +alternatorStatus_iTerm = scalar, S16, 484, "", 0.01, 0 +alternatorStatus_dTerm = scalar, S16, 486, "", 0.01, 0 +alternatorStatus_output = scalar, S16, 488, "", 0.01, 0 +alternatorStatus_error = scalar, S16, 490, "", 0.01, 0 +alternatorStatus_resetCounter = scalar, U32, 492, "", 1, 0 +idleStatus_iTerm = scalar, S16, 496, "", 0.01, 0 +idleStatus_dTerm = scalar, S16, 498, "", 0.01, 0 +idleStatus_output = scalar, S16, 500, "", 0.01, 0 +idleStatus_error = scalar, S16, 502, "", 0.01, 0 +idleStatus_resetCounter = scalar, U32, 504, "", 1, 0 +etbStatus_iTerm = scalar, S16, 508, "", 0.01, 0 +etbStatus_dTerm = scalar, S16, 510, "", 0.01, 0 +etbStatus_output = scalar, S16, 512, "", 0.01, 0 +etbStatus_error = scalar, S16, 514, "", 0.01, 0 +etbStatus_resetCounter = scalar, U32, 516, "", 1, 0 +boostStatus_iTerm = scalar, S16, 520, "", 0.01, 0 +boostStatus_dTerm = scalar, S16, 522, "", 0.01, 0 +boostStatus_output = scalar, S16, 524, "", 0.01, 0 +boostStatus_error = scalar, S16, 526, "", 0.01, 0 +boostStatus_resetCounter = scalar, U32, 528, "", 1, 0 +auxSpeed1 = scalar, U16, 532, "s", 1, 0 +auxSpeed2 = scalar, U16, 534, "s", 1, 0 +ISSValue = scalar, U16, 536, "RPM", 1, 0 +unusedAtTheEnd1 = scalar, U08, 538, "", 1, 0 +unusedAtTheEnd2 = scalar, U08, 539, "", 1, 0 +unusedAtTheEnd3 = scalar, U08, 540, "", 1, 0 +unusedAtTheEnd4 = scalar, U08, 541, "", 1, 0 +unusedAtTheEnd5 = scalar, U08, 542, "", 1, 0 +unusedAtTheEnd6 = scalar, U08, 543, "", 1, 0 +unusedAtTheEnd7 = scalar, U08, 544, "", 1, 0 +unusedAtTheEnd8 = scalar, U08, 545, "", 1, 0 +unusedAtTheEnd9 = scalar, U08, 546, "", 1, 0 +unusedAtTheEnd10 = scalar, U08, 547, "", 1, 0 +unusedAtTheEnd11 = scalar, U08, 548, "", 1, 0 +unusedAtTheEnd12 = scalar, U08, 549, "", 1, 0 +unusedAtTheEnd13 = scalar, U08, 550, "", 1, 0 +unusedAtTheEnd14 = scalar, U08, 551, "", 1, 0 +unusedAtTheEnd15 = scalar, U08, 552, "", 1, 0 +unusedAtTheEnd16 = scalar, U08, 553, "", 1, 0 +unusedAtTheEnd17 = scalar, U08, 554, "", 1, 0 +unusedAtTheEnd18 = scalar, U08, 555, "", 1, 0 +unusedAtTheEnd19 = scalar, U08, 556, "", 1, 0 +unusedAtTheEnd20 = scalar, U08, 557, "", 1, 0 +unusedAtTheEnd21 = scalar, U08, 558, "", 1, 0 +unusedAtTheEnd22 = scalar, U08, 559, "", 1, 0 +unusedAtTheEnd23 = scalar, U08, 560, "", 1, 0 +unusedAtTheEnd24 = scalar, U08, 561, "", 1, 0 +unusedAtTheEnd25 = scalar, U08, 562, "", 1, 0 +unusedAtTheEnd26 = scalar, U08, 563, "", 1, 0 +unusedAtTheEnd27 = scalar, U08, 564, "", 1, 0 +unusedAtTheEnd28 = scalar, U08, 565, "", 1, 0 +unusedAtTheEnd29 = scalar, U08, 566, "", 1, 0 +unusedAtTheEnd30 = scalar, U08, 567, "", 1, 0 +unusedAtTheEnd31 = scalar, U08, 568, "", 1, 0 +unusedAtTheEnd32 = scalar, U08, 569, "", 1, 0 +unusedAtTheEnd33 = scalar, U08, 570, "", 1, 0 +unusedAtTheEnd34 = scalar, U08, 571, "", 1, 0 +unusedAtTheEnd35 = scalar, U08, 572, "", 1, 0 +unusedAtTheEnd36 = scalar, U08, 573, "", 1, 0 +unusedAtTheEnd37 = scalar, U08, 574, "", 1, 0 +unusedAtTheEnd38 = scalar, U08, 575, "", 1, 0 +unusedAtTheEnd39 = scalar, U08, 576, "", 1, 0 +unusedAtTheEnd40 = scalar, U08, 577, "", 1, 0 +unusedAtTheEnd41 = scalar, U08, 578, "", 1, 0 +unusedAtTheEnd42 = scalar, U08, 579, "", 1, 0 +unusedAtTheEnd43 = scalar, U08, 580, "", 1, 0 +unusedAtTheEnd44 = scalar, U08, 581, "", 1, 0 +unusedAtTheEnd45 = scalar, U08, 582, "", 1, 0 +unusedAtTheEnd46 = scalar, U08, 583, "", 1, 0 +unusedAtTheEnd47 = scalar, U08, 584, "", 1, 0 +unusedAtTheEnd48 = scalar, U08, 585, "", 1, 0 +unusedAtTheEnd49 = scalar, U08, 586, "", 1, 0 +unusedAtTheEnd50 = scalar, U08, 587, "", 1, 0 +unusedAtTheEnd51 = scalar, U08, 588, "", 1, 0 +unusedAtTheEnd52 = scalar, U08, 589, "", 1, 0 +unusedAtTheEnd53 = scalar, U08, 590, "", 1, 0 +unusedAtTheEnd54 = scalar, U08, 591, "", 1, 0 +unusedAtTheEnd55 = scalar, U08, 592, "", 1, 0 +unusedAtTheEnd56 = scalar, U08, 593, "", 1, 0 +unusedAtTheEnd57 = scalar, U08, 594, "", 1, 0 +unusedAtTheEnd58 = scalar, U08, 595, "", 1, 0 +unusedAtTheEnd59 = scalar, U08, 596, "", 1, 0 +unusedAtTheEnd60 = scalar, U08, 597, "", 1, 0 +unusedAtTheEnd61 = scalar, U08, 598, "", 1, 0 +unusedAtTheEnd62 = scalar, U08, 599, "", 1, 0 +unusedAtTheEnd63 = scalar, U08, 600, "", 1, 0 +unusedAtTheEnd64 = scalar, U08, 601, "", 1, 0 +unusedAtTheEnd65 = scalar, U08, 602, "", 1, 0 +unusedAtTheEnd66 = scalar, U08, 603, "", 1, 0 +unusedAtTheEnd67 = scalar, U08, 604, "", 1, 0 +unusedAtTheEnd68 = scalar, U08, 605, "", 1, 0 +unusedAtTheEnd69 = scalar, U08, 606, "", 1, 0 +unusedAtTheEnd70 = scalar, U08, 607, "", 1, 0 +unusedAtTheEnd71 = scalar, U08, 608, "", 1, 0 +unusedAtTheEnd72 = scalar, U08, 609, "", 1, 0 +unusedAtTheEnd73 = scalar, U08, 610, "", 1, 0 +unusedAtTheEnd74 = scalar, U08, 611, "", 1, 0 +unusedAtTheEnd75 = scalar, U08, 612, "", 1, 0 +unusedAtTheEnd76 = scalar, U08, 613, "", 1, 0 +unusedAtTheEnd77 = scalar, U08, 614, "", 1, 0 +unusedAtTheEnd78 = scalar, U08, 615, "", 1, 0 +; total TS size = 616 +m_knockRetard = scalar, F32, 616, "", 1, 0 +m_knockThreshold = scalar, F32, 620, "", 1, 0 +m_knockCount = scalar, U32, 624, "", 1, 0 +; total TS size = 628 +m_requested_pump = scalar, F32, 628, "", 1, 0 +fuel_requested_percent = scalar, F32, 632, "", 1, 0 +fuel_requested_percent_pi = scalar, F32, 636, "", 1, 0 +noValve = bits, U32, 640, [0:0] +angleAboveMin = bits, U32, 640, [1:1] +isHpfpInactive = bits, U32, 640, [2:2] +unusedBit_6_3 = bits, U32, 640, [3:3] +unusedBit_6_4 = bits, U32, 640, [4:4] +unusedBit_6_5 = bits, U32, 640, [5:5] +unusedBit_6_6 = bits, U32, 640, [6:6] +unusedBit_6_7 = bits, U32, 640, [7:7] +unusedBit_6_8 = bits, U32, 640, [8:8] +unusedBit_6_9 = bits, U32, 640, [9:9] +unusedBit_6_10 = bits, U32, 640, [10:10] +unusedBit_6_11 = bits, U32, 640, [11:11] +unusedBit_6_12 = bits, U32, 640, [12:12] +unusedBit_6_13 = bits, U32, 640, [13:13] +unusedBit_6_14 = bits, U32, 640, [14:14] +unusedBit_6_15 = bits, U32, 640, [15:15] +unusedBit_6_16 = bits, U32, 640, [16:16] +unusedBit_6_17 = bits, U32, 640, [17:17] +unusedBit_6_18 = bits, U32, 640, [18:18] +unusedBit_6_19 = bits, U32, 640, [19:19] +unusedBit_6_20 = bits, U32, 640, [20:20] +unusedBit_6_21 = bits, U32, 640, [21:21] +unusedBit_6_22 = bits, U32, 640, [22:22] +unusedBit_6_23 = bits, U32, 640, [23:23] +unusedBit_6_24 = bits, U32, 640, [24:24] +unusedBit_6_25 = bits, U32, 640, [25:25] +unusedBit_6_26 = bits, U32, 640, [26:26] +unusedBit_6_27 = bits, U32, 640, [27:27] +unusedBit_6_28 = bits, U32, 640, [28:28] +unusedBit_6_29 = bits, U32, 640, [29:29] +unusedBit_6_30 = bits, U32, 640, [30:30] +unusedBit_6_31 = bits, U32, 640, [31:31] +nextLobe = scalar, F32, 644, "", 1, 0 +nextStart = scalar, F32, 648, "", 1, 0 +; total TS size = 652 +m_deadtime = scalar, F32, 652, "", 1, 0 +pressureDelta = scalar, F32, 656, "", 1, 0 +pressureRatio = scalar, F32, 660, "", 1, 0 +; total TS size = 664 +retardThresholdRpm = scalar, S32, 664, "", 1, 0 +combinedConditions = bits, U32, 668, [0:0] +launchActivatePinState = bits, U32, 668, [1:1] +isLaunchCondition = bits, U32, 668, [2:2] +isSwitchActivated = bits, U32, 668, [3:3] +isClutchActivated = bits, U32, 668, [4:4] +isValidInputPin = bits, U32, 668, [5:5] +activateSwitchCondition = bits, U32, 668, [6:6] +rpmCondition = bits, U32, 668, [7:7] +speedCondition = bits, U32, 668, [8:8] +tpsCondition = bits, U32, 668, [9:9] +unusedBit_11_10 = bits, U32, 668, [10:10] +unusedBit_11_11 = bits, U32, 668, [11:11] +unusedBit_11_12 = bits, U32, 668, [12:12] +unusedBit_11_13 = bits, U32, 668, [13:13] +unusedBit_11_14 = bits, U32, 668, [14:14] +unusedBit_11_15 = bits, U32, 668, [15:15] +unusedBit_11_16 = bits, U32, 668, [16:16] +unusedBit_11_17 = bits, U32, 668, [17:17] +unusedBit_11_18 = bits, U32, 668, [18:18] +unusedBit_11_19 = bits, U32, 668, [19:19] +unusedBit_11_20 = bits, U32, 668, [20:20] +unusedBit_11_21 = bits, U32, 668, [21:21] +unusedBit_11_22 = bits, U32, 668, [22:22] +unusedBit_11_23 = bits, U32, 668, [23:23] +unusedBit_11_24 = bits, U32, 668, [24:24] +unusedBit_11_25 = bits, U32, 668, [25:25] +unusedBit_11_26 = bits, U32, 668, [26:26] +unusedBit_11_27 = bits, U32, 668, [27:27] +unusedBit_11_28 = bits, U32, 668, [28:28] +unusedBit_11_29 = bits, U32, 668, [29:29] +unusedBit_11_30 = bits, U32, 668, [30:30] +unusedBit_11_31 = bits, U32, 668, [31:31] +; total TS size = 672 +isTpsInvalid = bits, U32, 672, [0:0] +m_shouldResetPid = bits, U32, 672, [1:1] +isBelowClosedLoopThreshold = bits, U32, 672, [2:2] +isNotClosedLoop = bits, U32, 672, [3:3] +isZeroRpm = bits, U32, 672, [4:4] +unusedBit_5_5 = bits, U32, 672, [5:5] +unusedBit_5_6 = bits, U32, 672, [6:6] +unusedBit_5_7 = bits, U32, 672, [7:7] +unusedBit_5_8 = bits, U32, 672, [8:8] +unusedBit_5_9 = bits, U32, 672, [9:9] +unusedBit_5_10 = bits, U32, 672, [10:10] +unusedBit_5_11 = bits, U32, 672, [11:11] +unusedBit_5_12 = bits, U32, 672, [12:12] +unusedBit_5_13 = bits, U32, 672, [13:13] +unusedBit_5_14 = bits, U32, 672, [14:14] +unusedBit_5_15 = bits, U32, 672, [15:15] +unusedBit_5_16 = bits, U32, 672, [16:16] +unusedBit_5_17 = bits, U32, 672, [17:17] +unusedBit_5_18 = bits, U32, 672, [18:18] +unusedBit_5_19 = bits, U32, 672, [19:19] +unusedBit_5_20 = bits, U32, 672, [20:20] +unusedBit_5_21 = bits, U32, 672, [21:21] +unusedBit_5_22 = bits, U32, 672, [22:22] +unusedBit_5_23 = bits, U32, 672, [23:23] +unusedBit_5_24 = bits, U32, 672, [24:24] +unusedBit_5_25 = bits, U32, 672, [25:25] +unusedBit_5_26 = bits, U32, 672, [26:26] +unusedBit_5_27 = bits, U32, 672, [27:27] +unusedBit_5_28 = bits, U32, 672, [28:28] +unusedBit_5_29 = bits, U32, 672, [29:29] +unusedBit_5_30 = bits, U32, 672, [30:30] +unusedBit_5_31 = bits, U32, 672, [31:31] +openLoopPart = scalar, F32, 676, "", 1, 0 +closedLoopPart = scalar, F32, 680, "", 1, 0 +; total TS size = 684 +engineTooSlow = bits, U32, 684, [0:0] +engineTooFast = bits, U32, 684, [1:1] +noClt = bits, U32, 684, [2:2] +engineTooHot = bits, U32, 684, [3:3] +tpsTooHigh = bits, U32, 684, [4:4] +m_acEnabled = bits, U32, 684, [5:5] +acButtonState = bits, U32, 684, [6:6] +isDisabledByLua = bits, U32, 684, [7:7] +unusedBit_8_8 = bits, U32, 684, [8:8] +unusedBit_8_9 = bits, U32, 684, [9:9] +unusedBit_8_10 = bits, U32, 684, [10:10] +unusedBit_8_11 = bits, U32, 684, [11:11] +unusedBit_8_12 = bits, U32, 684, [12:12] +unusedBit_8_13 = bits, U32, 684, [13:13] +unusedBit_8_14 = bits, U32, 684, [14:14] +unusedBit_8_15 = bits, U32, 684, [15:15] +unusedBit_8_16 = bits, U32, 684, [16:16] +unusedBit_8_17 = bits, U32, 684, [17:17] +unusedBit_8_18 = bits, U32, 684, [18:18] +unusedBit_8_19 = bits, U32, 684, [19:19] +unusedBit_8_20 = bits, U32, 684, [20:20] +unusedBit_8_21 = bits, U32, 684, [21:21] +unusedBit_8_22 = bits, U32, 684, [22:22] +unusedBit_8_23 = bits, U32, 684, [23:23] +unusedBit_8_24 = bits, U32, 684, [24:24] +unusedBit_8_25 = bits, U32, 684, [25:25] +unusedBit_8_26 = bits, U32, 684, [26:26] +unusedBit_8_27 = bits, U32, 684, [27:27] +unusedBit_8_28 = bits, U32, 684, [28:28] +unusedBit_8_29 = bits, U32, 684, [29:29] +unusedBit_8_30 = bits, U32, 684, [30:30] +unusedBit_8_31 = bits, U32, 684, [31:31] +latest_usage_ac_control = scalar, S32, 688, "", 1, 0 +acSwitchLastChangeTimeMs = scalar, S32, 692, "", 1, 0 +; total TS size = 696 +cranking = bits, U32, 696, [0:0] +notRunning = bits, U32, 696, [1:1] +disabledWhileEngineStopped = bits, U32, 696, [2:2] +brokenClt = bits, U32, 696, [3:3] +enabledForAc = bits, U32, 696, [4:4] +hot = bits, U32, 696, [5:5] +cold = bits, U32, 696, [6:6] +unusedBit_7_7 = bits, U32, 696, [7:7] +unusedBit_7_8 = bits, U32, 696, [8:8] +unusedBit_7_9 = bits, U32, 696, [9:9] +unusedBit_7_10 = bits, U32, 696, [10:10] +unusedBit_7_11 = bits, U32, 696, [11:11] +unusedBit_7_12 = bits, U32, 696, [12:12] +unusedBit_7_13 = bits, U32, 696, [13:13] +unusedBit_7_14 = bits, U32, 696, [14:14] +unusedBit_7_15 = bits, U32, 696, [15:15] +unusedBit_7_16 = bits, U32, 696, [16:16] +unusedBit_7_17 = bits, U32, 696, [17:17] +unusedBit_7_18 = bits, U32, 696, [18:18] +unusedBit_7_19 = bits, U32, 696, [19:19] +unusedBit_7_20 = bits, U32, 696, [20:20] +unusedBit_7_21 = bits, U32, 696, [21:21] +unusedBit_7_22 = bits, U32, 696, [22:22] +unusedBit_7_23 = bits, U32, 696, [23:23] +unusedBit_7_24 = bits, U32, 696, [24:24] +unusedBit_7_25 = bits, U32, 696, [25:25] +unusedBit_7_26 = bits, U32, 696, [26:26] +unusedBit_7_27 = bits, U32, 696, [27:27] +unusedBit_7_28 = bits, U32, 696, [28:28] +unusedBit_7_29 = bits, U32, 696, [29:29] +unusedBit_7_30 = bits, U32, 696, [30:30] +unusedBit_7_31 = bits, U32, 696, [31:31] +; total TS size = 700 +isPrime = bits, U32, 700, [0:0] +engineTurnedRecently = bits, U32, 700, [1:1] +isPumpOn = bits, U32, 700, [2:2] +ignitionOn = bits, U32, 700, [3:3] +unusedBit_4_4 = bits, U32, 700, [4:4] +unusedBit_4_5 = bits, U32, 700, [5:5] +unusedBit_4_6 = bits, U32, 700, [6:6] +unusedBit_4_7 = bits, U32, 700, [7:7] +unusedBit_4_8 = bits, U32, 700, [8:8] +unusedBit_4_9 = bits, U32, 700, [9:9] +unusedBit_4_10 = bits, U32, 700, [10:10] +unusedBit_4_11 = bits, U32, 700, [11:11] +unusedBit_4_12 = bits, U32, 700, [12:12] +unusedBit_4_13 = bits, U32, 700, [13:13] +unusedBit_4_14 = bits, U32, 700, [14:14] +unusedBit_4_15 = bits, U32, 700, [15:15] +unusedBit_4_16 = bits, U32, 700, [16:16] +unusedBit_4_17 = bits, U32, 700, [17:17] +unusedBit_4_18 = bits, U32, 700, [18:18] +unusedBit_4_19 = bits, U32, 700, [19:19] +unusedBit_4_20 = bits, U32, 700, [20:20] +unusedBit_4_21 = bits, U32, 700, [21:21] +unusedBit_4_22 = bits, U32, 700, [22:22] +unusedBit_4_23 = bits, U32, 700, [23:23] +unusedBit_4_24 = bits, U32, 700, [24:24] +unusedBit_4_25 = bits, U32, 700, [25:25] +unusedBit_4_26 = bits, U32, 700, [26:26] +unusedBit_4_27 = bits, U32, 700, [27:27] +unusedBit_4_28 = bits, U32, 700, [28:28] +unusedBit_4_29 = bits, U32, 700, [29:29] +unusedBit_4_30 = bits, U32, 700, [30:30] +unusedBit_4_31 = bits, U32, 700, [31:31] +; total TS size = 704 +isBenchTest = bits, U32, 704, [0:0] +hasIgnitionVoltage = bits, U32, 704, [1:1] +mainRelayState = bits, U32, 704, [2:2] +delayedShutoffRequested = bits, U32, 704, [3:3] +unusedBit_4_4 = bits, U32, 704, [4:4] +unusedBit_4_5 = bits, U32, 704, [5:5] +unusedBit_4_6 = bits, U32, 704, [6:6] +unusedBit_4_7 = bits, U32, 704, [7:7] +unusedBit_4_8 = bits, U32, 704, [8:8] +unusedBit_4_9 = bits, U32, 704, [9:9] +unusedBit_4_10 = bits, U32, 704, [10:10] +unusedBit_4_11 = bits, U32, 704, [11:11] +unusedBit_4_12 = bits, U32, 704, [12:12] +unusedBit_4_13 = bits, U32, 704, [13:13] +unusedBit_4_14 = bits, U32, 704, [14:14] +unusedBit_4_15 = bits, U32, 704, [15:15] +unusedBit_4_16 = bits, U32, 704, [16:16] +unusedBit_4_17 = bits, U32, 704, [17:17] +unusedBit_4_18 = bits, U32, 704, [18:18] +unusedBit_4_19 = bits, U32, 704, [19:19] +unusedBit_4_20 = bits, U32, 704, [20:20] +unusedBit_4_21 = bits, U32, 704, [21:21] +unusedBit_4_22 = bits, U32, 704, [22:22] +unusedBit_4_23 = bits, U32, 704, [23:23] +unusedBit_4_24 = bits, U32, 704, [24:24] +unusedBit_4_25 = bits, U32, 704, [25:25] +unusedBit_4_26 = bits, U32, 704, [26:26] +unusedBit_4_27 = bits, U32, 704, [27:27] +unusedBit_4_28 = bits, U32, 704, [28:28] +unusedBit_4_29 = bits, U32, 704, [29:29] +unusedBit_4_30 = bits, U32, 704, [30:30] +unusedBit_4_31 = bits, U32, 704, [31:31] +; total TS size = 708 +sd_isTChargeAirModel = bits, U32, 708, [0:0] +sd_unusedBit_1_1 = bits, U32, 708, [1:1] +sd_unusedBit_1_2 = bits, U32, 708, [2:2] +sd_unusedBit_1_3 = bits, U32, 708, [3:3] +sd_unusedBit_1_4 = bits, U32, 708, [4:4] +sd_unusedBit_1_5 = bits, U32, 708, [5:5] +sd_unusedBit_1_6 = bits, U32, 708, [6:6] +sd_unusedBit_1_7 = bits, U32, 708, [7:7] +sd_unusedBit_1_8 = bits, U32, 708, [8:8] +sd_unusedBit_1_9 = bits, U32, 708, [9:9] +sd_unusedBit_1_10 = bits, U32, 708, [10:10] +sd_unusedBit_1_11 = bits, U32, 708, [11:11] +sd_unusedBit_1_12 = bits, U32, 708, [12:12] +sd_unusedBit_1_13 = bits, U32, 708, [13:13] +sd_unusedBit_1_14 = bits, U32, 708, [14:14] +sd_unusedBit_1_15 = bits, U32, 708, [15:15] +sd_unusedBit_1_16 = bits, U32, 708, [16:16] +sd_unusedBit_1_17 = bits, U32, 708, [17:17] +sd_unusedBit_1_18 = bits, U32, 708, [18:18] +sd_unusedBit_1_19 = bits, U32, 708, [19:19] +sd_unusedBit_1_20 = bits, U32, 708, [20:20] +sd_unusedBit_1_21 = bits, U32, 708, [21:21] +sd_unusedBit_1_22 = bits, U32, 708, [22:22] +sd_unusedBit_1_23 = bits, U32, 708, [23:23] +sd_unusedBit_1_24 = bits, U32, 708, [24:24] +sd_unusedBit_1_25 = bits, U32, 708, [25:25] +sd_unusedBit_1_26 = bits, U32, 708, [26:26] +sd_unusedBit_1_27 = bits, U32, 708, [27:27] +sd_unusedBit_1_28 = bits, U32, 708, [28:28] +sd_unusedBit_1_29 = bits, U32, 708, [29:29] +sd_unusedBit_1_30 = bits, U32, 708, [30:30] +sd_unusedBit_1_31 = bits, U32, 708, [31:31] +sd_airMassInOneCylinder = scalar, F32, 712, "", 1, 0 +sd_tCharge = scalar, F32, 716, "", 1, 0 +sd_tChargeK = scalar, F32, 720, "", 1, 0 +sd_Tcharge_coff = scalar, F32, 724, "", 1, 0 +sd_airFlow = scalar, F32, 728, "", 1, 0 +targetAFR = scalar, F32, 732, "", 1, 0 +engineCycleDurationMs = scalar, F32, 736, "", 1, 0 +minRpmKcurrentTPS = scalar, F32, 740, "", 1, 0 +currentTpsAdc = scalar, S32, 744, "", 1, 0 +tpsVoltageMCU = scalar, F32, 748, "", 1, 0 +tpsVoltageBoard = scalar, F32, 752, "", 1, 0 +currentBaroCorrectedVE = scalar, F32, 756, "", 1, 0 +injectorFlowCorrection = scalar, F32, 760, "", 1, 0 +baroCorrection = scalar, F32, 764, "", 1, 0 +cranking_baseFuel = scalar, F32, 768, "", 1, 0 +cranking_coolantTemperatureCoefficient = scalar, F32, 772, "", 1, 0 +cranking_tpsCoefficient = scalar, F32, 776, "", 1, 0 +cranking_durationCoefficient = scalar, F32, 780, "", 1, 0 +cranking_fuel = scalar, F32, 784, "", 1, 0 +running_postCrankingFuelCorrection = scalar, F32, 788, "", 1, 0 +running_intakeTemperatureCoefficient = scalar, F32, 792, "", 1, 0 +running_coolantTemperatureCoefficient = scalar, F32, 796, "", 1, 0 +running_timeSinceCrankingInSecs = scalar, F32, 800, "", 1, 0 +running_injectorLag = scalar, F32, 804, "", 1, 0 +running_baseFuel = scalar, F32, 808, "", 1, 0 +running_fuel = scalar, F32, 812, "", 1, 0 +etbFeedForward = bits, F32, 816, [0:2], "not important", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +targetFromTable = bits, F32, 820, [0:2], "not important", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +sparkDwell = scalar, F32, 824, "", 1, 0 +dwellAngle = scalar, F32, 828, "", 1, 0 +cltTimingCorrection = scalar, F32, 832, "", 1, 0 +; total TS size = 836 +tpsFrom = bits, F32, 836, [0:2], "not important", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tpsTo = bits, F32, 840, [0:2], "not important", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +deltaTps = bits, F32, 844, [0:2], "not important", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +extraFuel = scalar, F32, 848, "", 1, 0 +valueFromTable = scalar, F32, 852, "", 1, 0 +isAboveAccelThreshold = bits, U32, 856, [0:0] +isBelowDecelThreshold = bits, U32, 856, [1:1] +isTimeToResetAccumulator = bits, U32, 856, [2:2] +isFractionalEnrichment = bits, U32, 856, [3:3] +belowEpsilon = bits, U32, 856, [4:4] +tooShort = bits, U32, 856, [5:5] +unusedBit_11_6 = bits, U32, 856, [6:6] +unusedBit_11_7 = bits, U32, 856, [7:7] +unusedBit_11_8 = bits, U32, 856, [8:8] +unusedBit_11_9 = bits, U32, 856, [9:9] +unusedBit_11_10 = bits, U32, 856, [10:10] +unusedBit_11_11 = bits, U32, 856, [11:11] +unusedBit_11_12 = bits, U32, 856, [12:12] +unusedBit_11_13 = bits, U32, 856, [13:13] +unusedBit_11_14 = bits, U32, 856, [14:14] +unusedBit_11_15 = bits, U32, 856, [15:15] +unusedBit_11_16 = bits, U32, 856, [16:16] +unusedBit_11_17 = bits, U32, 856, [17:17] +unusedBit_11_18 = bits, U32, 856, [18:18] +unusedBit_11_19 = bits, U32, 856, [19:19] +unusedBit_11_20 = bits, U32, 856, [20:20] +unusedBit_11_21 = bits, U32, 856, [21:21] +unusedBit_11_22 = bits, U32, 856, [22:22] +unusedBit_11_23 = bits, U32, 856, [23:23] +unusedBit_11_24 = bits, U32, 856, [24:24] +unusedBit_11_25 = bits, U32, 856, [25:25] +unusedBit_11_26 = bits, U32, 856, [26:26] +unusedBit_11_27 = bits, U32, 856, [27:27] +unusedBit_11_28 = bits, U32, 856, [28:28] +unusedBit_11_29 = bits, U32, 856, [29:29] +unusedBit_11_30 = bits, U32, 856, [30:30] +unusedBit_11_31 = bits, U32, 856, [31:31] +fractionalInjFuel = scalar, F32, 860, "", 1, 0 +accumulatedValue = scalar, F32, 864, "", 1, 0 +maxExtraPerCycle = scalar, F32, 868, "", 1, 0 +maxExtraPerPeriod = scalar, F32, 872, "", 1, 0 +maxInjectedPerPeriod = scalar, F32, 876, "", 1, 0 +cycleCnt = scalar, S32, 880, "", 1, 0 +; total TS size = 884 +hwEventCounters1 = scalar, S32, 884, "", 1, 0 +hwEventCounters2 = scalar, S32, 888, "", 1, 0 +hwEventCounters3 = scalar, S32, 892, "", 1, 0 +hwEventCounters4 = scalar, S32, 896, "", 1, 0 +hwEventCounters5 = scalar, S32, 900, "", 1, 0 +hwEventCounters6 = scalar, S32, 904, "", 1, 0 +vvtCamCounter = scalar, S32, 908, "", 1, 0 +mapVvt_MAP_AT_SPECIAL_POINT = scalar, F32, 912, "", 1, 0 +mapVvt_MAP_AT_DIFF = scalar, F32, 916, "", 1, 0 +mapVvt_MAP_AT_CYCLE_COUNT = scalar, U08, 920, "", 1, 0 +mapVvt_map_peak = scalar, U08, 921, "", 1, 0 +; total TS size = 924 +totalRevolutionCounter = scalar, U32, 924, "", 1, 0 +vvtSyncGapRatio = scalar, F32, 928, "", 1, 0 +vvtCurrentPosition = scalar, F32, 932, "", 1, 0 +triggerSyncGapRatio = scalar, F32, 936, "", 1, 0 +triggerActualSyncGapRatio = scalar, F32, 940, "", 1, 0 +triggerStateIndex = scalar, U08, 944, "", 1, 0 +vvtCounter = scalar, U08, 945, "", 1, 0 +vvtSyncCounter = scalar, U08, 946, "", 1, 0 +vvtStateIndex = scalar, U08, 947, "", 1, 0 +; total TS size = 948 +wallFuelCorrection = scalar, F32, 948, "", 1, 0 +wallFuel = scalar, F32, 952, "", 1, 0 +; total TS size = 956 +idleState = bits, S32, 956, [0:2], "not important", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +currentIdlePosition = bits, F32, 960, [0:2], "not important", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +baseIdlePosition = bits, F32, 964, [0:2], "not important", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +iacByTpsTaper = bits, F32, 968, [0:2], "not important", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +throttlePedalUpState = scalar, S32, 972, "", 1, 0 +mightResetPid = bits, U32, 976, [0:0] +shouldResetPid = bits, U32, 976, [1:1] +wasResetPid = bits, U32, 976, [2:2] +mustResetPid = bits, U32, 976, [3:3] +isCoasting = bits, U32, 976, [4:4] +useIacTableForCoasting = bits, U32, 976, [5:5] +notIdling = bits, U32, 976, [6:6] +needReset = bits, U32, 976, [7:7] +isInDeadZone = bits, U32, 976, [8:8] +isBlipping = bits, U32, 976, [9:9] +useClosedLoop = bits, U32, 976, [10:10] +badTps = bits, U32, 976, [11:11] +looksLikeRunning = bits, U32, 976, [12:12] +looksLikeCoasting = bits, U32, 976, [13:13] +looksLikeCrankToIdle = bits, U32, 976, [14:14] +useInstantRpmForIdle = bits, U32, 976, [15:15] +isVerboseIAC = bits, U32, 976, [16:16] +unusedBit_22_17 = bits, U32, 976, [17:17] +unusedBit_22_18 = bits, U32, 976, [18:18] +unusedBit_22_19 = bits, U32, 976, [19:19] +unusedBit_22_20 = bits, U32, 976, [20:20] +unusedBit_22_21 = bits, U32, 976, [21:21] +unusedBit_22_22 = bits, U32, 976, [22:22] +unusedBit_22_23 = bits, U32, 976, [23:23] +unusedBit_22_24 = bits, U32, 976, [24:24] +unusedBit_22_25 = bits, U32, 976, [25:25] +unusedBit_22_26 = bits, U32, 976, [26:26] +unusedBit_22_27 = bits, U32, 976, [27:27] +unusedBit_22_28 = bits, U32, 976, [28:28] +unusedBit_22_29 = bits, U32, 976, [29:29] +unusedBit_22_30 = bits, U32, 976, [30:30] +unusedBit_22_31 = bits, U32, 976, [31:31] +targetRpmByClt = scalar, S32, 980, "", 1, 0 +targetRpmAcBump = scalar, S32, 984, "", 1, 0 +; total TS size = 988 +baseDwell = scalar, F32, 988, "", 1, 0 +dwellVoltageCorrection = scalar, F32, 992, "", 1, 0 +luaTimingAdd = scalar, F32, 996, "", 1, 0 +luaTimingMult = scalar, F32, 1000, "", 1, 0 +; total TS size = 1004 +idlePosition = scalar, F32, 1004, "", 1, 0 +trim = scalar, F32, 1008, "", 1, 0 +luaAdjustment = scalar, F32, 1012, "", 1, 0 +; total TS size = 1016 + + + time = { timeNow } + + egoCorrectionForVeAnalyze = { 100 + fuelPidCorrection1 } + + ; These "synthetic" channels provide the Y-axis (load) value for gen purp PWM table's Y axes + gppwm1_load = {(gppwm1_loadAxis == 0) ? TPSValue : ((gppwm1_loadAxis == 1) ? MAPValue : ((gppwm1_loadAxis == 2) ? coolant : ((gppwm1_loadAxis == 3) ? intake : ((gppwm1_loadAxis == 4) ? fuelingLoad : ignitionLoad))))} + gppwm2_load = {(gppwm2_loadAxis == 0) ? TPSValue : ((gppwm2_loadAxis == 1) ? MAPValue : ((gppwm2_loadAxis == 2) ? coolant : ((gppwm2_loadAxis == 3) ? intake : ((gppwm2_loadAxis == 4) ? fuelingLoad : ignitionLoad))))} + gppwm3_load = {(gppwm3_loadAxis == 0) ? TPSValue : ((gppwm3_loadAxis == 1) ? MAPValue : ((gppwm3_loadAxis == 2) ? coolant : ((gppwm3_loadAxis == 3) ? intake : ((gppwm3_loadAxis == 4) ? fuelingLoad : ignitionLoad))))} + gppwm4_load = {(gppwm4_loadAxis == 0) ? TPSValue : ((gppwm4_loadAxis == 1) ? MAPValue : ((gppwm4_loadAxis == 2) ? coolant : ((gppwm4_loadAxis == 3) ? intake : ((gppwm4_loadAxis == 4) ? fuelingLoad : ignitionLoad))))} + +[PcVariables] + tuneCrcPcVariable = continuousChannelValue, tuneCrc16 + + wueAfrTargetOffset = array, S16, [ 16], ":1", 0.1, 0.0, -3.0, 3.0, 1; + wueAnalRecommend = array, U08, [ 16], "%", 1.00, 0.0, 100, 255.00, 0 + + gearCountArray = array, S08, [10], "Gear", 1, 0, -1, { 10 - 2 }, 0, noMsqSave + solenoidCountArray = array, U08, [6], "Solenoid", 1, 0, 1, 6, 0, noMsqSave + +; These are inverted (false = "Yes") so that they default to enabled + enableLogDebugChannels = bits, U08, [0:0], "Yes", "No" + enableLogErrorList = bits, U08, [0:0], "Yes", "No" + +; wall of debug mode :) +; https://rusefi.com/wiki/index.php?title=Manual:Debug_fields +; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT1 PID Cranking Ignition Timing Fu Corr VSS SD Card Knock Wall Wetting ETB PID Executor InstantRpm CJ125 CAN MAP TLE8888 Analog inputs 2 Start ETB Autotune DYNO_VIEW LOGIC_ANALYZER Wideband TCU Lua VVT2 PID VVT3 PID VVT4 PID +; 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 +; DBG_ALTERNATOR_PID DBG_TPS_ACCEL DBG_GPPWM DBG_IDLE_CONTROL + debugFieldF1List = bits, U08, [0:7], "Alt: Controller Output", "From TPS", "GPPWM 1", "Idle: Controller Output", "Idle output", " ", "", "VVT1: Controller Output"," ", "", "Ign IAT Corr", "", "", "Total SD", "last volts", "", "WW: Alpha", "ETB Controller Output", "", "", "df1", "df1", "InstantRpm", "", "24:df1", "CJ125: output", "", "MAP Average", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "","S unused" "", "Osc Amplitude", "", "", "", "" , "VSS", "", "WB: Pump DAC duty", "", "Lua Debug 1", "VVT2: Controller Output","VVT3: Controller Output","VVT4: Controller Output" + debugFieldF2List = bits, U08, [0:7], "Alt: I Term", "To TPS", "GPPWM 2", "Idle: I Term", "Idle df2", " ", "", "VVT1: I Term", " ", "", "Ign CLT Corr", "", "", "Write Cnt","last filtered","", "WW: Beta", "ETB I Term", "", "", "df2", "df2", "InstantRPM Ratio","", "24:df2", "CJ125: i term", "", "MAP Duration", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "","S unused" "", "Duty Amplitude", "", "", "", "" , "Speed", "", "WB: ESR", "", "Lua Debug 2", "VVT2: I Term", "VVT3: I Term", "VVT4: I Term" + debugFieldF3List = bits, U08, [0:7], "Alt: Previous Error", "Current TPS<>TPS", "GPPWM 3", "Idle: prev error", "Idle df3", "ICU sum", "", "VVT1: prev error", "", "", "", "", "", "Sync Cnt", "", "", "WW: film mass", "ETB err", "", "", "df3", "df3", "22df3", "", "24:df3", "CJ125: err", "", "MAP Fast", "", "", "", "", "TPS1/2 Diff", "", "", "", "","S unused" "", "Tu", "", "", "", "" , "DeltaSpeed", "", "WB: Nernst Voltage", "", "Lua Debug 3", "VVT2: prev error", "VVT3: prev error", "VVT4: prev error" + debugFieldF4List = bits, U08, [0:7], "Alt: I Gain", "Extra Fuel", "GPPWM 4", "Idle: I Gain", "Idle df4", " ", "", "VVT1: I Gain", "", "", "Ign PID Adj", "", "", "File Cnt", "", "", "WW: m_cmd", "ETB I setting", "", "", "df4", "df4", "22df4", "", "24:df4", "CJ125: UA", "", "MAP Estimate", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "","S unused" "", "Ku", "", "", "", "", "accel", "", "WB: Lambda", "", "Lua Debug 4", "VVT2: I Gain", "VVT3: I Gain", "VVT4: I Gain" + debugFieldF5List = bits, U08, [0:7], "Alt: D Gain", "df5", "df5", "Idle: D Gain", "Idle df5", " ", "df5", "VVT1: D Gain", "", "", "", "", "", "", "", "", "WW: film mass next","ETB D setting", "df5", "df5", "df5", "df5", "22df5", "", "24:df5", "CJ125: UR", "", "MAP Instant", "", "", "", "", "TPS1 Pri/Sec Ratio", "", "", "", "","S unused" "", "Kp", "", "", "", "", "", "", "", "", "Lua Debug 5", "VVT2: D Gain", "VVT3: D Gain", "VVT4: D Gain" + debugFieldF6List = bits, U08, [0:7], "Alt: D Term", "", "", "Idle: D Term", "Idle df6", " ", "", "VVT1: D Term", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "","S unused" "", "Ki", "", "", "", "", "", "", "", "", "Lua Debug 6", "VVT2: D Term", "VVT3: D Term", "VVT4: D Term" + debugFieldF7List = bits, U08, [0:7], "Alt: Max-Value", "", "", "Idle: Max-Value", "Idle df7", "", "", "VVT1: Max-Value", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "","S unused" "", "Kd", "", "", "", "", "", "", "", "", "Lua Debug 7", "", "", "" + debugFieldI1List = bits, U08, [0:7], "Alt: P Gain", "", "", "Idle: P Gain", "Idle di1", " ", "", "VVT1: P Gain", " ", "Cycle Counter", "Multispark Count", "", "", "", "hip corr", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "Spark Event Gap","", "24:di1", "CJ125: state", "read count","MAP counter", "", "", "", "SPI Counter", "", "", "", "", "","Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "Lua memory used","VVT2: P Gain", "VVT3: P Gain", "VVT4: P Gain" + debugFieldI2List = bits, U08, [0:7], "Alt: Offset", "", "", "Idle: Offset", "Idle di2", " ", "", "VVT1: Offset", "", "", "", "", "", "", "hip incor", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "Inj Event Gap", "", "24:di2", "", "write count","MAP raw ADC", "", "", "", "Latest Transmit","", "", "", "", "","Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "", "VVT2: Offset", "VVT3: Offset", "VVT4: Offset" + debugFieldI3List = bits, U08, [0:7], "Alt: Reset Cnt", "", "", "Idle: Reset Cnt", "Idle di3", " ", "", "VVT1: 10xTarget", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "","Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "", "VVT2: 10xTarger", "VVT3: 10xTarger", "VVT4: 10xTarger" + debugFieldI4List = bits, U08, [0:7], "Alt: Period", "", "", "Idle: State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "","" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "", "", "", "" + debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "", "di5", "di5", "di5", "","" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "", "", "", "" + +[ConstantsExtensions] + ; defaultValue is used to provide TunerStudio with a value to use in the case of + ; the constant not yet being initialized. This is primarily important if the + ; constant is used as a variable in the ini. + ; defaultValue = constantName, value; + defaultValue = wueAfrTargetOffset, -1.5 -1.4 -1.15 -0.95 -0.775 -0.65 -0.5625 -0.5 -0.4375 -0.375 -0.3125 -0.25 -0.1875 -0.125 -0.0625 0 + + ; this magic is best described in output_channels.txt search for 'maintainConstantValue' + ; TPS 1 Primary + maintainConstantValue = tpsMax, { (calibrationMode == 1 ) ? calibrationValue : tpsMax } + maintainConstantValue = tpsMin, { (calibrationMode == 2 ) ? calibrationValue : tpsMin } + + ; TPS 1 Secondary + maintainConstantValue = tps1SecondaryMax, { (calibrationMode == 6 ) ? calibrationValue : tps1SecondaryMax } + maintainConstantValue = tps1SecondaryMin, { (calibrationMode == 7 ) ? calibrationValue : tps1SecondaryMin } + + ; TPS 2 Primary + maintainConstantValue = tps2Max, { (calibrationMode == 8 ) ? calibrationValue : tps2Max } + maintainConstantValue = tps2Min, { (calibrationMode == 9 ) ? calibrationValue : tps2Min } + + ; TPS 2 Secondary + maintainConstantValue = tps2SecondaryMax, { (calibrationMode == 10 ) ? calibrationValue : tps2SecondaryMax } + maintainConstantValue = tps2SecondaryMin, { (calibrationMode == 11 ) ? calibrationValue : tps2SecondaryMin } + + ; ETB Auto Gain Calibration + maintainConstantValue = etb_pFactor, { (calibrationMode == 3 ) ? calibrationValue : etb_pFactor } + maintainConstantValue = etb_iFactor, { (calibrationMode == 4 ) ? calibrationValue : etb_iFactor } + maintainConstantValue = etb_dFactor, { (calibrationMode == 5 ) ? calibrationValue : etb_dFactor } + + maintainConstantValue = throttlePedalUpVoltage, { (calibrationMode == 12 ) ? calibrationValue : throttlePedalUpVoltage } + maintainConstantValue = throttlePedalSecondaryUpVoltage, { (calibrationMode == 12 ) ? calibrationValue2 : throttlePedalSecondaryUpVoltage } + + maintainConstantValue = throttlePedalWOTVoltage, { (calibrationMode == 13 ) ? calibrationValue : throttlePedalWOTVoltage } + maintainConstantValue = throttlePedalSecondaryWOTVoltage,{ (calibrationMode == 13 ) ? calibrationValue2 : throttlePedalSecondaryWOTVoltage } + + requiresPowerCycle = useETBforIdleControl + requiresPowerCycle = warningLedPin + requiresPowerCycle = runningLedPin + requiresPowerCycle = binarySerialTxPin + requiresPowerCycle = binarySerialRxPin + requiresPowerCycle = useSerialPort + requiresPowerCycle = tunerStudioSerialSpeed + requiresPowerCycle = auxSerialRxPin + requiresPowerCycle = auxSerialTxPin + + requiresPowerCycle = etb_use_two_wires + requiresPowerCycle = etbFreq + requiresPowerCycle = etbFunctions1 + requiresPowerCycle = etbFunctions2 + + requiresPowerCycle = idle_solenoidFrequency + requiresPowerCycle = boostPwmFrequency + requiresPowerCycle = alternatorPwmFrequency + requiresPowerCycle = vvtOutputFrequency1 + requiresPowerCycle = vvtOutputFrequency2 + requiresPowerCycle = vvtPins1 + requiresPowerCycle = vvtPins2 + requiresPowerCycle = vvtPins3 + requiresPowerCycle = vvtPins4 + + requiresPowerCycle = auxAnalogInputs1 + requiresPowerCycle = auxAnalogInputs2 + requiresPowerCycle = auxAnalogInputs3 + requiresPowerCycle = auxAnalogInputs4 + requiresPowerCycle = auxAnalogInputs5 + requiresPowerCycle = auxAnalogInputs6 + requiresPowerCycle = auxAnalogInputs7 + requiresPowerCycle = auxAnalogInputs8 + + readOnly = warning_message + + defaultValue = gearCountArray, -1 0 1 2 3 4 5 6 7 8 + readOnly = gearCountArray + defaultValue = solenoidCountArray, 1 2 3 4 5 6 7 8 + readOnly = solenoidCountArray + + +[CurveEditor] +; xAxis = leftValue, rightValue, step +; yAxis = bottomValue, topValue, step + + curve = knockThresholdCurve, "Engine knock threshold RPM based" + columnLabel = "RPM", "Threshold" + xAxis = 0, 8000, 9 + yAxis = 0, 8, 10 + xBins = knockNoiseRpmBins, RPMValue + yBins = knockBaseNoise + gauge = RPMGauge + + curve = narrowToWideOxygenCurve, "Narrow to Wideband approximation" + columnLabel = "Voltage", "AFR" + xAxis = 0, 6, 10 + yAxis = 0, 28, 10 + xBins = narrowToWideOxygenBins + yBins = narrowToWideOxygen +#if LAMBDA + gauge = lambda1Gauge +#else + gauge = afr1Gauge +#endif + + curve = scriptCurve1, "Script Curve #1" + columnLabel = "X", "Y" + xAxis = 0, 128, 10 + yAxis = -155, 150, 10 + xBins = scriptCurve1Bins + yBins = scriptCurve1 + showTextValues = true + + curve = scriptCurve2, "Script Curve #2" + columnLabel = "X", "Y" + xAxis = 0, 128, 10 + yAxis = -150, 150, 10 + xBins = scriptCurve2Bins + yBins = scriptCurve2 + showTextValues = true + + curve = scriptCurve3, "Script Curve #3" + columnLabel = "X", "Y" + xAxis = 0, 128, 10 + yAxis = -5, 5, 10 + xBins = scriptCurve3Bins + yBins = scriptCurve3 + showTextValues = true + + curve = scriptCurve4, "Script Curve #4" + columnLabel = "X", "Y" + xAxis = 0, 128, 10 + yAxis = -5, 5, 10 + xBins = scriptCurve4Bins + yBins = scriptCurve4 + showTextValues = true + + curve = scriptCurve5, "Script Curve #5" + columnLabel = "X", "Y" + xAxis = 0, 128, 10 + yAxis = -5, 5, 10 + xBins = scriptCurve5Bins + yBins = scriptCurve5 + showTextValues = true + + curve = scriptCurve6, "Script Curve #6" + columnLabel = "X", "Y" + xAxis = 0, 128, 10 + yAxis = -5, 5, 10 + xBins = scriptCurve6Bins + yBins = scriptCurve6 + showTextValues = true + + curve = dwellCorrection, "Dwell time base" + columnLabel = "RPM", "Dwell" + xAxis = 0, 8000, 9 + yAxis = 0, 8, 9 + xBins = sparkDwellRpmBins, RPMValue + yBins = sparkDwellValues + gauge = RPMGauge + + curve = dwellVoltageCorrection, "Dwell voltage correction" + columnLabel = "Battery Volts", "Multiplier" + xAxis = 6, 16, 11 + yAxis = 0, 3, 7 + xBins = dwellVoltageCorrVoltBins, VBatt + yBins = dwellVoltageCorrValues + gauge = VBattGauge + + curve = primingPulse, "Priming pulse fuel mass" + columnLabel = "Coolant", "Prime Pulse" + xAxis = -40, 120, 9 + yAxis = 0, 1000, 9 + xBins = primeBins, coolant + yBins = primeValues + gauge = CLTGauge + + curve = map_samplingAngleCurve, "MAP Sampling Start Angle" + columnLabel = "RPM", "Angle" + xAxis = 0, 8000, 9 + yAxis = 0, 180, 10 + xBins = map_samplingAngleBins, RPMValue + yBins = map_samplingAngle + gauge = MAPGauge + + curve = map_samplingWindowCurve, "MAP Sampling Duration" + columnLabel = "RPM", "Window" + xAxis = 0, 8000, 9 + yAxis = 0, 180, 10 + xBins = map_samplingWindowBins, RPMValue + yBins = map_samplingWindow + gauge = MAPGauge + + curve = injectorsDeadTime, "Injector dead time" + columnLabel = "Battery", "Dead Time" + xAxis = 6, 16, 11 + yAxis = 0, 8, 9 + xBins = injector_battLagCorrBins, VBatt + yBins = injector_battLagCorr + gauge = VBattGauge + + curve = vrThresholdCurve1, "VR 1 Threshold" + columnLabel = "RPM", "Voltage" + xAxis = 0, 8000, 9 + yAxis = 0, 2.5, 6 + xBins = vrThreshold1_rpmBins, RPMValue + yBins = vrThreshold1_values + + curve = vrThresholdCurve2, "VR 2 Threshold" + columnLabel = "RPM", "Voltage" + xAxis = 0, 8000, 9 + yAxis = 0, 2.5, 6 + xBins = vrThreshold2_rpmBins, RPMValue + yBins = vrThreshold2_values + + curve = mafDecodingCurve, "MAF sensor" + columnLabel = "Voltage", "kg/hour" + xAxis = -1, 6, 10 + yAxis = -30, 1300, 10 + xBins = mafDecodingBins, rawMaf + yBins = mafDecoding + gauge = rawMafGauge + + curve = iatFuelCorrCurve, "Intake air temperature fuel Multiplier" + columnLabel = "Air Temp", "Multiplier" + xAxis = -40, 120, 9 + yAxis = 0, 2, 11 + xBins = iatFuelCorrBins, intake + yBins = iatFuelCorr + gauge = IATGauge + + curve = cltTimingCorrCurve, "Warmup timing correction" + columnLabel = "Coolant", "Extra" + xAxis = -40, 120, 9 + yAxis = 0, 20, 9 + xBins = cltTimingBins, coolant + yBins = cltTimingExtra + gauge = CLTGauge + + curve = cltFuelCorrCurve, "Warmup fuel manual Multiplier" + columnLabel = "Coolant", "Multiplier" + xAxis = -40, 120, 9 + yAxis = 0, 3, 10 + xBins = cltFuelCorrBins, coolant + yBins = cltFuelCorr + gauge = CLTGauge + + curve = crankingCltCurve, "Cranking Coolant Temperature Multiplier" + columnLabel = "Coolant", "Multiplier" + xAxis = -40, 120, 9 + yAxis = 0, 3, 10 + xBins = crankingFuelBins, coolant + yBins = crankingFuelCoef + gauge = CLTGauge + + curve = crankingCltCurveE100, "Cranking Coolant Temperature Multiplier (Flex Fuel E85)" + columnLabel = "Coolant", "Multiplier" + xAxis = -40, 120, 9 + yAxis = 0, 3, 10 + xBins = crankingFuelBins, coolant + yBins = crankingFuelCoefE100 + gauge = CLTGauge + + curve = etbTpsBiasCurve, "Electronic TB Bias Curve" + columnLabel = "TPS", "duty bias" + xAxis = 0, 50, 11 + yAxis = -40, 40, 9 + xBins = etbBiasBins, TPSValue + yBins = etbBiasValues + gauge = TPSGauge + + curve = crankingTpsCurve, "Cranking TPS Multiplier" + columnLabel = "TPS", "Multiplier" + xAxis = 0, 100, 11 + yAxis = 0, 3, 10 + xBins = crankingTpsBins, TPSValue + yBins = crankingTpsCoef + gauge = TPSGauge + + curve = crankingDurationCurve, "Cranking Duration Multiplier" + columnLabel = "Engine Cycle", "Multiplier" + xAxis = 0, 50, 11 + yAxis = 0, 5, 6 + xBins = crankingCycleBins + yBins = crankingCycleCoef + + + curve = cltIdleCurve, "Warmup Idle multiplier" + columnLabel = "Coolant", "Multiplier" + xAxis = -40, 120, 10 + yAxis = 0, 3, 10 + xBins = cltIdleCorrBins, coolant + yBins = cltIdleCorr + gauge = CLTGauge + + curve = iacCoastingCurve, "Coasting IAC Position for Auto-Idle" + columnLabel = "Coolant", "Multiplier" + xAxis = -40, 120, 9 + yAxis = 0, 100, 10 + xBins = iacCoastingBins, coolant + yBins = iacCoasting + gauge = idleAirValvePositionGauge + + curve = cltCrankingCurve, "Cranking Idle Air multiplier" + columnLabel = "Coolant", "Multiplier" + xAxis = -40, 120, 9 + yAxis = 0, 3, 10 + xBins = cltCrankingCorrBins, coolant + yBins = cltCrankingCorr + gauge = CLTGauge + + curve = cltIdleRPMCurve, "Idle Target RPM" + columnLabel = "Coolant", "RPM" + xAxis = -40, 120, 9 + yAxis = 0, 2400, 13 + xBins = cltIdleRpmBins, coolant + yBins = cltIdleRpm, RPMValue + gauge = CLTGauge + + curve = idleAdvanceCurve, "Idle Advance Angle" + columnLabel = "RPM", "degrees" + xAxis = 0, 2400, 13 + yAxis = -100, 100, 11 + xBins = idleAdvanceBins, RPMValue + yBins = idleAdvance + gauge = RPMGauge + + curve = crankingAdvanceCurve, "Cranking Advance Angle" + columnLabel = "RPM", "degrees" + xAxis = 0, 1200, 13 + yAxis = -30, 30, 11 + xBins = crankingAdvanceBins, RPMValue + yBins = crankingAdvance + gauge = RPMGauge + + curve = fuelLevelCurve, "Fuel Level" + columnLabel = "Voltage", "%" + xAxis = 0, 5, 6 + yAxis = 0, 100, 11 + xBins = fuelLevelBins + yBins = fuelLevelValues + gauge = fuelTankLevelGauge + + curve = wueAfrTargetOffsetCurve, "AFR Target Temperature Adjustment" + columnLabel = "Coolant", "AFR Offset" + xAxis = -40, 200, 9 + yAxis = -3, 1, 5 + xBins = cltFuelCorrBins, coolant + yBins = wueAfrTargetOffset + gauge = cltGauge + + curve = wueAnalyzer_warmup_curve, "Warmup Enrichment" + columnLabel = "Coolant", "Current WUE", "Coolant", "Corrected" + xAxis = -40, 200, 9 + yAxis = 90, 500, 6 + xBins = cltFuelCorrBins, coolant + yBins = cltFuelCorr + yBins = wueAnalRecommend + ;gauge = cltGauge + + lineLabel = "Warmup Correction" + lineLabel = "Recommended WUE" + + curve = hpfpLobeProfileCurve, "HPFP Lobe Profile" + columnLabel = "% pump volume", "angle" + xAxis = 0, 100, 11 + yAxis = 0, 240, 13 + xBins = hpfpLobeProfileQuantityBins + yBins = hpfpLobeProfileAngle + + curve = hpfpDeadtimeCurve, "HPFP Valve Deadtime" + columnLabel = "volts", "ms" + xAxis = 5, 15, 11 + yAxis = 0, 5, 6 + xBins = hpfpDeadtimeVoltsBins + yBins = hpfpDeadtimeMS + + curve = wwTauCltCurve, "Evap time vs. CLT" + columnLabel = "coolant", "seconds" + xAxis = -40, 120, 9 + yAxis = 0, 2, 9 + xBins = wwCltBins, coolant + yBins = wwTauCltValues + gauge = CLTGauge + + curve = wwTauMapCurve, "Evap time vs. MAP" + columnLabel = "MAP", "mult" + xAxis = 0, 100, 5 + yAxis = 0, 2, 9 + xBins = wwMapBins, MAPValue + yBins = wwTauMapValues + gauge = MAPGauge + + curve = wwBetaCltCurve, "Impact fraction vs. CLT" + columnLabel = "coolant", "fraction" + xAxis = -40, 120, 9 + yAxis = 0, 2, 9 + xBins = wwCltBins, coolant + yBins = wwBetaCltValues + gauge = CLTGauge + + curve = wwBetaMapCurve, "Impact fraction vs. MAP" + columnLabel = "MAP", "mult" + xAxis = 0, 100, 5 + yAxis = 0, 2, 9 + xBins = wwMapBins, MAPValue + yBins = wwBetaMapValues + gauge = MAPGauge + + curve = tchargeCurve, "Charge temperature estimation coefficient" + columnLabel = "flow", "coefficient" + xAxis = 0, 500, 6 + yAxis = 0, 100, 5 + xBins = tchargeBins, mafEstimate + yBins = tchargeValues + gauge = tChargeGauge + + curve = tccLockCurve, "TCC Lock Curve" + columnLabel = "TPS", "Lock Speed", "Unlock Speed" + xAxis = 0, 100, 10 + yAxis = 0, 100, 10 + xBins = tcu_tccTpsBins, TPSValue + yBins = tcu_tccLockSpeed + yBins = tcu_tccUnlockSpeed + gauge = TPSGauge + + curve = pcPerGearCurve, "Transmission Line Pressure Control" + columnLabel = "Airmass", "" + xAxis = 0, 5, 10 + yAxis = 0, 100, 10 + xBins = tcu_pcAirmassBins, chargeAirMass + yBins = tcu_pcValsR + yBins = tcu_pcValsN + yBins = tcu_pcVals1 + yBins = tcu_pcVals2 + yBins = tcu_pcVals3 + yBins = tcu_pcVals4 + lineLabel = "R%" + lineLabel = "N%" + lineLabel = "1%" + lineLabel = "2%" + lineLabel = "3%" + lineLabel = "4%" + +curve = pcPerShiftCurve, "Transmission Line Pressure Control - Shift" + columnLabel = "Airmass", "" + xAxis = 0, 5, 10 + yAxis = 0, 100, 10 + xBins = tcu_pcAirmassBins, chargeAirMass + yBins = tcu_pcVals12 + yBins = tcu_pcVals23 + yBins = tcu_pcVals34 + yBins = tcu_pcVals21 + yBins = tcu_pcVals32 + yBins = tcu_pcVals43 + lineLabel = "1->2%" + lineLabel = "2->3%" + lineLabel = "3->4%" + lineLabel = "2->1%" + lineLabel = "3->2%" + lineLabel = "4->3%" + +curve = 32Curve, "3-2 Shift Solenoid Percent by Speed" + columnLabel = "Speed", "%" + xAxis = 0, 200, 20 + yAxis = 0, 100, 10 + xBins = tcu_32SpeedBins, vehicleSpeedKph + yBins = tcu_32Vals + +[TableEditor] + ; table_id, map3d_id, "title", page + +; move table into a panel? or find a way to add a link to https://rusefi.com//wiki/index.php?title=Manual:Software:TPSTPS + table = tpsTpsAccelTbl, tpsTpsAccelMap, "TPS/TPS Acceleration Extra Fuel(ms)", 1 + topicHelp = "tpstpsHelp" + xBins = tpsTpsAccelFromRpmBins, TPSValue + yBins = tpsTpsAccelToRpmBins, TPSValue + zBins = tpsTpsAccelTable + + table = boostTableTbl, boostMapOpen, "Boost control duty cycle (open loop)", 1 + xBins = boostRpmBins, RPMValue + yBins = boostTpsBins, TPSValue + zBins = boostTableOpenLoop + + table = boostTable2Tbl, boostMapClosed, "Boost control target", 1 + xBins = boostRpmBins, RPMValue + yBins = boostTpsBins, TPSValue + zBins = boostTableClosedLoop + + table = vvtTable1Tbl, vvtTable1Map, "Intake VVT closed loop Target", 1 + xBins = vvtTable1RpmBins, RPMValue + yBins = vvtTable1LoadBins, fuelingLoad + zBins = vvtTable1 + + table = vvtTable2Tbl, vvtTable2Map, "Exhaust VVT closed loop Target", 1 + xBins = vvtTable2RpmBins, RPMValue + yBins = vvtTable2LoadBins, fuelingLoad + zBins = vvtTable2 + + + table = scriptTable1Tbl, scriptTable1Map, "Script Table #1", 1 + xBins = scriptTable1RpmBins, RPMValue + yBins = scriptTable1LoadBins, fuelingLoad + zBins = scriptTable1 + + table = scriptTable2Tbl, scriptTable2Map, "Script Table #2", 1 + xBins = scriptTable2RpmBins, RPMValue + yBins = scriptTable2LoadBins, fuelingLoad + zBins = scriptTable2 + + table = scriptTable3Tbl, scriptTable3Map, "Script Table #3", 1 + xBins = scriptTable3RpmBins, RPMValue + yBins = scriptTable3LoadBins, fuelingLoad + zBins = scriptTable3 + + table = scriptTable4Tbl, scriptTable4Map, "Script Table #4", 1 + xBins = scriptTable4RpmBins, RPMValue + yBins = scriptTable4LoadBins, fuelingLoad + zBins = scriptTable4 + + table = baroCorrTbl, baroCorrMap, "Baro Correction", 1 + ; constant, variable + xBins = baroCorrRpmBins, RPMValue + yBins = baroCorrPressureBins, baroPressure + zBins = baroCorrTable + ; gridHeight = 2.0 + gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. + upDownLabel = "(RICHER)", "(LEANER)" + + table = ignitionTableTbl, ignitionTableMap, "Ignition Table", 1 + ; constant, variable + xBins = ignitionRpmBins, RPMValue + yBins = ignitionLoadBins, ignitionLoad + zBins = ignitionTable +; gridHeight = 2.0 + gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. + upDownLabel = "(RICHER)", "(LEANER)" + + table = ignitionIatCorrTableTbl, ignitionIatCorrTableMap, "Ignition Intake Air Temp correction", 1 + ; constant, variable + xBins = ignitionIatCorrRpmBins, RPMValue + yBins = ignitionIatCorrLoadBins, intake + zBins = ignitionIatCorrTable +; gridHeight = 2.0 + gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. + upDownLabel = "(RICHER)", "(LEANER)" + + table = torqueTableTbl, torqueTableMap, "Engine Torque", 1 + xBins = torqueRpmBins, RPMValue + yBins = torqueLoadBins, veTableYAxis + zBins = torqueTable + + table = veTableTbl, veTableMap, "VE Table", 1 + ; constant, variable + xBins = veRpmBins, RPMValue + yBins = veLoadBins, veTableYAxis + zBins = veTable +; gridHeight = 2.0 + gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. + upDownLabel = "(RICHER)", "(LEANER)" + + table = idleVeTableTbl, idleVeTable, "Idle VE" + xBins = idleVeRpmBins, RPMValue + yBins = idleVeLoadBins, veTableYAxis + zBins = idleVeTable + gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. + upDownLabel = "(RICHER)", "(LEANER)" + + table = fuelTrimTbl1, fuelTrimMap1, "Fuel trim cyl 1", 1 + xBins = fuelTrimRpmBins, RPMValue + yBins = fuelTrimLoadBins, veTableYAxis + zBins = fuelTrims1_table + upDownLabel = "(RICHER)", "(LEANER)" + + table = fuelTrimTbl2, fuelTrimMap2, "Fuel trim cyl 2", 1 + xBins = fuelTrimRpmBins, RPMValue + yBins = fuelTrimLoadBins, veTableYAxis + zBins = fuelTrims2_table + upDownLabel = "(RICHER)", "(LEANER)" + + table = fuelTrimTbl3, fuelTrimMap3, "Fuel trim cyl 3", 1 + xBins = fuelTrimRpmBins, RPMValue + yBins = fuelTrimLoadBins, veTableYAxis + zBins = fuelTrims3_table + upDownLabel = "(RICHER)", "(LEANER)" + + table = fuelTrimTbl4, fuelTrimMap4, "Fuel trim cyl 4", 1 + xBins = fuelTrimRpmBins, RPMValue + yBins = fuelTrimLoadBins, veTableYAxis + zBins = fuelTrims4_table + upDownLabel = "(RICHER)", "(LEANER)" + + table = fuelTrimTbl5, fuelTrimMap5, "Fuel trim cyl 5", 1 + xBins = fuelTrimRpmBins, RPMValue + yBins = fuelTrimLoadBins, veTableYAxis + zBins = fuelTrims5_table + upDownLabel = "(RICHER)", "(LEANER)" + + table = fuelTrimTbl6, fuelTrimMap6, "Fuel trim cyl 6", 1 + xBins = fuelTrimRpmBins, RPMValue + yBins = fuelTrimLoadBins, veTableYAxis + zBins = fuelTrims6_table + upDownLabel = "(RICHER)", "(LEANER)" + + table = fuelTrimTbl7, fuelTrimMap7, "Fuel trim cyl 7", 1 + xBins = fuelTrimRpmBins, RPMValue + yBins = fuelTrimLoadBins, veTableYAxis + zBins = fuelTrims7_table + upDownLabel = "(RICHER)", "(LEANER)" + + table = fuelTrimTbl8, fuelTrimMap8, "Fuel trim cyl 8", 1 + xBins = fuelTrimRpmBins, RPMValue + yBins = fuelTrimLoadBins, veTableYAxis + zBins = fuelTrims8_table + upDownLabel = "(RICHER)", "(LEANER)" + + table = fuelTrimTbl9, fuelTrimMap9, "Fuel trim cyl 9", 1 + xBins = fuelTrimRpmBins, RPMValue + yBins = fuelTrimLoadBins, veTableYAxis + zBins = fuelTrims9_table + upDownLabel = "(RICHER)", "(LEANER)" + + table = fuelTrimTbl10, fuelTrimMap10, "Fuel trim cyl 10", 1 + xBins = fuelTrimRpmBins, RPMValue + yBins = fuelTrimLoadBins, veTableYAxis + zBins = fuelTrims10_table + upDownLabel = "(RICHER)", "(LEANER)" + + table = fuelTrimTbl11, fuelTrimMap11, "Fuel trim cyl 11", 1 + xBins = fuelTrimRpmBins, RPMValue + yBins = fuelTrimLoadBins, veTableYAxis + zBins = fuelTrims11_table + upDownLabel = "(RICHER)", "(LEANER)" + + table = fuelTrimTbl12, fuelTrimMap12, "Fuel trim cyl 12", 1 + xBins = fuelTrimRpmBins, RPMValue + yBins = fuelTrimLoadBins, veTableYAxis + zBins = fuelTrims12_table + upDownLabel = "(RICHER)", "(LEANER)" + + table = ignTrimTbl1, ignTrimMap1, "Ign trim cyl 1", 1 + xBins =ignTrimRpmBins, RPMValue + yBins =ignTrimLoadBins, ignitionLoad + zBins =ignTrims1_table + + table = ignTrimTbl2, ignTrimMap2, "Ign trim cyl 2", 1 + xBins =ignTrimRpmBins, RPMValue + yBins =ignTrimLoadBins, ignitionLoad + zBins =ignTrims2_table + + table = ignTrimTbl3, ignTrimMap3, "Ign trim cyl 3", 1 + xBins =ignTrimRpmBins, RPMValue + yBins =ignTrimLoadBins, ignitionLoad + zBins =ignTrims3_table + + table = ignTrimTbl4, ignTrimMap4, "Ign trim cyl 4", 1 + xBins =ignTrimRpmBins, RPMValue + yBins =ignTrimLoadBins, ignitionLoad + zBins =ignTrims4_table + + table = ignTrimTbl5, ignTrimMap5, "Ign trim cyl 5", 1 + xBins =ignTrimRpmBins, RPMValue + yBins =ignTrimLoadBins, ignitionLoad + zBins =ignTrims5_table + + table = ignTrimTbl6, ignTrimMap6, "Ign trim cyl 6", 1 + xBins =ignTrimRpmBins, RPMValue + yBins =ignTrimLoadBins, ignitionLoad + zBins =ignTrims6_table + + table = ignTrimTbl7, ignTrimMap7, "Ign trim cyl 7", 1 + xBins =ignTrimRpmBins, RPMValue + yBins =ignTrimLoadBins, ignitionLoad + zBins =ignTrims7_table + + table = ignTrimTbl8, ignTrimMap8, "Ign trim cyl 8", 1 + xBins =ignTrimRpmBins, RPMValue + yBins =ignTrimLoadBins, ignitionLoad + zBins =ignTrims8_table + + table = ignTrimTbl9, ignTrimMap9, "Ign trim cyl 9", 1 + xBins =ignTrimRpmBins, RPMValue + yBins =ignTrimLoadBins, ignitionLoad + zBins =ignTrims9_table + + table = ignTrimTbl10, ignTrimMap10, "Ign trim cyl 10", 1 + xBins = ignTrimRpmBins, RPMValue + yBins = ignTrimLoadBins, ignitionLoad + zBins = ignTrims10_table + + table = ignTrimTbl11, ignTrimMap11, "Ign trim cyl 11", 1 + xBins = ignTrimRpmBins, RPMValue + yBins = ignTrimLoadBins, ignitionLoad + zBins = ignTrims11_table + + table = ignTrimTbl12, ignTrimMap12, "Ign trim cyl 12", 1 + xBins = ignTrimRpmBins, RPMValue + yBins = ignTrimLoadBins, ignitionLoad + zBins = ignTrims12_table + + table = mapEstimateTableTbl, mapEstimateTableMap, "MAP Estimate", 1 + xBins = mapEstimateRpmBins, RPMValue + yBins = mapEstimateTpsBins, TPSValue + zBins = mapEstimateTable + + table = injPhaseTableTbl, injPhaseTableMap, "Injection Phase", 1 + topicHelp = "fuelHelp" + ; constant, variable + xBins = injPhaseRpmBins, RPMValue + yBins = injPhaseLoadBins, fuelingLoad + zBins = injectionPhase +; gridHeight = 2.0 + gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. + upDownLabel = "(Later)", "(Sooner)" + + table = pedalToTpsTbl, pedalToTpsMap, "ETB Pedal to TPS", 1 + ; constant, variable + xBins = pedalToTpsRpmBins, RPMValue + yBins = pedalToTpsPedalBins, throttlePedalPosition + zBins = pedalToTpsTable +; gridHeight = 2.0 + gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. + upDownLabel = "(Later)", "(Sooner)" + + +#if LAMBDA + table = lambdaTableTbl, lambdaTableMap, "Target Lambda Table", 1 +#else + table = afrTableTbl, afrTableMap, "Target AFR Table", 1 +#endif + ; constant, variable + xBins = lambdaRpmBins, RPMValue + yBins = lambdaLoadBins, afrTableYAxis + zBins = lambdaTable +; gridHeight = 2.0 + gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. + upDownLabel = "(RICHER)", "(LEANER)" + + table = iacPidMultTbl, iacPidMultMap, "IAC PID Multiplier Table", 1 + ; constant, variable + xBins = iacPidMultRpmBins, RPMValue + yBins = iacPidMultLoadBins, fuelingLoad + zBins = iacPidMultTable +; gridHeight = 2.0 + gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. + upDownLabel = "(Later)", "(Sooner)" + + table = gppwm1Tbl, gppwm1Map, "GP#1", 1 + xyLabels = "RPM", "" + xBins = gppwm1_rpmBins, RPMValue + yBins = gppwm1_loadBins, gppwm1_load + zBins = gppwm1_table + + table = gppwm2Tbl, gppwm2Map, "GP#2", 1 + xyLabels = "RPM", "" + xBins = gppwm2_rpmBins, RPMValue + yBins = gppwm2_loadBins, gppwm2_load + zBins = gppwm2_table + + table = gppwm3Tbl, gppwm3Map, "GP#3", 1 + xyLabels = "RPM", "" + xBins = gppwm3_rpmBins, RPMValue + yBins = gppwm3_loadBins, gppwm3_load + zBins = gppwm3_table + + table = gppwm4Tbl, gppwm4Map, "GP#4", 1 + xyLabels = "RPM", "" + xBins = gppwm4_rpmBins, RPMValue + yBins = gppwm4_loadBins, gppwm4_load + zBins = gppwm4_table + + table = tcuSolenoidTableTbl, tcuSolenoidTableMap, "Solenoids Active By Gear", 1 + xBins = solenoidCountArray, tcuCurrentGear + yBins = gearCountArray, tcuCurrentGear + zBins = tcuSolenoidTable + xyLabels = "Solenoid", "Gear" + + table = hpfpTargetTable, hpfpTargetTableId, "HPFP Target Fuel Pressure", 1 + xBins = hpfpTargetRpmBins, RPMValue + yBins = hpfpTargetLoadBins, veTableYAxis + zBins = hpfpTarget + + table = hpfpCompensationTable, hpfpCompensationTableId, "HPFP Pump Compensation Factor", 1 + xBins = hpfpCompensationRpmBins, RPMValue + yBins = hpfpCompensationLoadBins, fuelRunning + zBins = hpfpCompensation + + +[GaugeConfigurations] + +gaugeCategory = Trigger +triggerSyncGapRatioGauge = triggerSyncGapRatio,"triggerSyncGapRatio", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +triggerStateIndexGauge = triggerStateIndex,"triggerStateIndex", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +vvtSyncGapRatioGauge = vvtSyncGapRatio,"vvtSyncGapRatio", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +vvtStateIndexGauge = vvtStateIndex,"vvtStateIndex", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +triggerPrimaryFallGauge = triggerPrimaryFall,"triggerPrimaryFall", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +triggerPrimaryRiseGauge = triggerPrimaryRise,"triggerPrimaryRise", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +triggerSecondaryFallGauge = triggerSecondaryFall,"triggerSecondaryFall", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +triggerSecondaryRiseGauge = triggerSecondaryRise,"triggerSecondaryRise", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +triggerVvtFallGauge = triggerVvtFall,"triggerVvtFall", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +triggerVvtRiseGauge = triggerVvtRise,"triggerVvtRise", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +luaInvocationCounterGauge = luaInvocationCounter,"luaInvocationCounter", "count", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0 +luaLastCycleDurationGauge = luaLastCycleDuration,"luaLastCycleDuration", "nt", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0 +testBenchIterGauge = testBenchIter, "Test Bench Iterations", "count", -10, {benchTestCount + 10}, -5, 0, {benchTestCount}, {benchTestCount + 5}, 1, 1 + +gaugeCategory = PIDs +alternatorStatus_iTermGauge = alternatorStatus_iTerm,"alternatorStatus_ iTerm", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +alternatorStatus_dTermGauge = alternatorStatus_dTerm,"alternatorStatus_ dTerm", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +alternatorStatus_outputGauge = alternatorStatus_output,"alternatorStatus_ output", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +alternatorStatus_errorGauge = alternatorStatus_error,"alternatorStatus_ error", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +alternatorStatus_resetCounterGauge = alternatorStatus_resetCounter,"alternatorStatus_ resetCounter", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 0,0 +idleStatus_iTermGauge = idleStatus_iTerm,"idleStatus_ iTerm", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +idleStatus_dTermGauge = idleStatus_dTerm,"idleStatus_ dTerm", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +idleStatus_outputGauge = idleStatus_output,"idleStatus_ output", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +idleStatus_errorGauge = idleStatus_error,"idleStatus_ error", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +idleStatus_resetCounterGauge = idleStatus_resetCounter,"idleStatus_ resetCounter", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 0,0 +etbStatus_iTermGauge = etbStatus_iTerm,"etbStatus_ iTerm", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +etbStatus_dTermGauge = etbStatus_dTerm,"etbStatus_ dTerm", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +etbStatus_outputGauge = etbStatus_output,"etbStatus_ output", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +etbStatus_errorGauge = etbStatus_error,"etbStatus_ error", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +etbStatus_resetCounterGauge = etbStatus_resetCounter,"etbStatus_ resetCounter", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 0,0 +canReadCounterGauge = canReadCounter,"canReadCounter", "", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0 +canWriteOkGauge = canWriteOk,"canWriteOk", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +canWriteNotOkGauge = canWriteNotOk,"canWriteNotOk", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 + +;gaugeCategory = MAP Cam +;TEMPLOG_map_peakGauge = TEMPLOG_map_peak,"TEMPLOG_map_peak", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +;TEMPLOG_MAP_AT_SPECIAL_POINTGauge = TEMPLOG_MAP_AT_SPECIAL_POINT,"TEMPLOG_MAP_AT_SPECIAL_POINT", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +;TEMPLOG_MAP_AT_DIFFGauge = TEMPLOG_MAP_AT_DIFF,"TEMPLOG_MAP_AT_DIFF", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 +;TEMPLOG_MAP_AT_CYCLE_COUNTGauge = TEMPLOG_MAP_AT_CYCLE_COUNT,"TEMPLOG_MAP_AT_CYCLE_COUNT", "", -10000.0,10000.0, -10000.0,10000.0, -10000.0,10000.0, 3,3 + +gaugeCategory = GDI +systemEventReuseGauge = systemEventReuse,"systemEventReuse", "counter", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0 +di_nextStartGauge = di_nextStart,"DI: next start", "v", 0.0,100.0, 0.0,100.0, 0.0,100.0, 0,0 +m_requested_pumpGauge = m_requested_pump,"DI: Pump Angle", "deg", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0 +fuel_requested_percentGauge = fuel_requested_percent,"DI: fuel_requested_percent", "v", 0.0,100.0, 0.0,100.0, 0.0,100.0, 0,0 +fuel_requested_percent_piGauge = fuel_requested_percent_pi,"DI: fuel_requested_percent_pi", "v", 0.0,100.0, 0.0,100.0, 0.0,100.0, 0,0 +m_I_sum_percentGauge = m_I_sum_percent,"DI: m_I_sum_percent", "v", 0.0,100.0, 0.0,100.0, 0.0,100.0, 0,0 +m_pressureTarget_kPaGauge = m_pressureTarget_kPa,"DI: m_pressureTarget_kPa", "v", 0.0,100.0, 0.0,100.0, 0.0,100.0, 0,0 + highFuelPressureGauge = highFuelPressure, "Fuel pressure (high)", "bar", 0, 200, 0, 0, 200, 200, 1, 0 + +gaugeCategory = Sensors - Extra 2 + egt1Gauge = egt1, "EGT#1", "C", 0, 2000 + egt2Gauge = egt2, "EGT#2", "C", 0, 2000 + egt3Gauge = egt3, "EGT#3", "C", 0, 2000 + egt4Gauge = egt4, "EGT#4", "C", 0, 2000 + egt5Gauge = egt5, "EGT#5", "C", 0, 2000 + egt6Gauge = egt6, "EGT#6", "C", 0, 2000 + egt7Gauge = egt7, "EGT#7", "C", 0, 2000 + egt8Gauge = egt8, "EGT#8", "C", 0, 2000 + rpmAccelerationGa = rpmAcceleration, "rpm delta", "RPM/s", -2000, 2000, -2000, 2000, -2000, 2000, 0, 0 + fuelTankLevelGauge = fuelTankLevel,"Fuel level", "%", 0, 100, 10, 20, 100, 100, 1, 1 + wastegatePosGauge = wastegatePositionSensor, "Wastegate position sensor", "%", 0, 100, 0, 0, 100, 100, 1, 1 + idlePosSensGauge = idlePositionSensor, "Idle position sensor", "%", 0, 100, 0, 0, 100, 100, 1, 1 + currentEnginePhaseGauge = currentEnginePhase, "Engine Phase", "deg", 0, 720, 0, 0, 720, 720, 0, 0 + +gaugeCategory = ECU Status + warningCounterGauge = warningCounter, "Warning count", "", 0, 100, 0, 0, 100, 100, 0, 0 + lastErrorCodeGauge = lastErrorCode, "Last error", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 + triggerErrorsCounterGauge = totalTriggerErrorCounter, "Trigger error count", "count", 0, 15000, 0, 0, 6000, 6000, 0, 0 + recentErrorCode1Gauge = recentErrorCode1, "Error#1", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 + recentErrorCode2Gauge = recentErrorCode2, "Error#2", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 + recentErrorCode3Gauge = recentErrorCode3, "Error#3", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 + recentErrorCode4Gauge = recentErrorCode4, "Error#4", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 + recentErrorCode5Gauge = recentErrorCode5, "Error#5", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 + recentErrorCode6Gauge = recentErrorCode6, "Error#6", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 + recentErrorCode7Gauge = recentErrorCode7, "Error#7", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 + recentErrorCode8Gauge = recentErrorCode8, "Error#8", "", 0, 18000, 0, 0, 18000, 18000, 0, 0 + firmwareVersionGauge = firmwareVersion , "ECU Software Version", "%", 0, 100, 0, 0, 100, 100, 0, 0 + timeSecondsGauge = seconds, "Uptime", "sec", 0, 100, 0, 0, 100, 100, 0, 0 + tuneCrc16Gauge = tuneCrc16, "Tune CRC16", "", 0, 64000, 0, 0, 64000, 64000, 0, 0 + + +gaugeCategory = Debug + debugF1Gauge = debugFloatField1, {bitStringValue( debugFieldF1List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 4, 4 + debugF2Gauge = debugFloatField2, {bitStringValue( debugFieldF2List, debugMode )}, "", -100, 100, 0, 0, 100, 100, 4, 4 + debugF3Gauge = debugFloatField3, {bitStringValue( debugFieldF3List, debugMode )}, "", -100, 100, 0, 0, 100, 100, 4, 4 + debugF4Gauge = debugFloatField4, {bitStringValue( debugFieldF4List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 4, 4 + debugF5Gauge = debugFloatField5, {bitStringValue( debugFieldF5List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 4, 4 + debugF6Gauge = debugFloatField6, {bitStringValue( debugFieldF6List, debugMode )}, "", -100, 100, 0, 0, 100, 100, 4, 4 + debugF7Gauge = debugFloatField7, {bitStringValue( debugFieldF7List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 4, 4 + debugI1Gauge = debugIntField1, {bitStringValue( debugFieldI1List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 0, 0 + debugI2Gauge = debugIntField2, {bitStringValue( debugFieldI2List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 0, 0 + debugI3Gauge = debugIntField3, {bitStringValue( debugFieldI3List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 0, 0 + debugI4Gauge = debugIntField4, {bitStringValue( debugFieldI4List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 0, 0 + debugI5Gauge = debugIntField5, {bitStringValue( debugFieldI5List, debugMode )}, "", 0, 100, 0, 0, 100, 100, 0, 0 + + +gaugeCategory = Sensors - Basic + RPMGauge = RPMValue, "RPM - engine speed", "RPM", 0, {rpmHardLimit + 2000}, 200, {cranking_rpm}, {rpmHardLimit - 500}, {rpmHardLimit}, 0, 0 + CLTGauge = coolant, "Coolant temp", "C", -40, 140, -15, 1, 95, 110, 1, 1 + IATGauge = intake, "Intake air temp", "C", -40, 140, -15, 1, 95, 110, 1, 1 + afr1Gauge = AFRValue, "Air/Fuel Ratio", "", 10, 19.4, 12, 13, 15, 16, 2, 2 + afr2Gauge = AFRValue2, "Air/Fuel Ratio 2", "", 10, 19.4, 12, 13, 15, 16, 2, 2 + lambda1Gauge = lambdaValue, "Lambda", "", 0.65, 1.2, 0.7, 0.75, 1.1, 1.15, 3, 2 + lambda2Gauge = lambdaValue2, "Lambda 2", "", 0.65, 1.2, 0.7, 0.75, 1.1, 1.15, 3, 2 + VBattGauge = VBatt, "Battery", "V", 8, 21, 9, 10, 17, 19, 1, 1 + MAPGauge = MAPValue, "MAP", "kPa", 0, 300, 10, 10, 200, 200, 0, 0 + massAirFlowValueGa = mafMeasured, "MAF sensor", "kg/h", 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 + turboSpeedGauge = turboSpeed, "Turbocharger Speed", "hz", 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 + accelerationZGauge = accelerationZ, "Acceleration: Z", "acc", -11, 11, 1.0, 1.2, 100, 100, 3, 1 + accelerationRollGauge=accelerationRoll, "Acceleration: Roll", "acc", -11, 11, 1.0, 1.2, 100, 100, 3, 1 + accelerationYawGauge=accelerationYaw, "Acceleration: Yaw", "acc", -11, 11, 1.0, 1.2, 100, 100, 3, 1 + atmPresCGauge = baroPressure, "Barometric pressure", "kPa", 0, 1024, 0, 0, 0, 0, 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 + AuxT1Gauge = auxTemp1, "Aux temp 1", "C", -40, 140, -15, 1, 95, 110, 1, 1 + AuxT2Gauge = auxTemp2, "Aux temp 2", "C", -40, 140, -15, 1, 95, 110, 1, 1 + lowFuelPressureGauge = lowFuelPressure, "Fuel pressure (low)", "kPa", 0, 700, 0, 0, 700, 700, 1, 0 + flexPercentGauge = flexPercent, "Flex Ethanol %", "%", 0, 100, 0, 0, 100, 100, 0, 0 + AuxL1Gauge = auxLinear1, "Aux Linear 1", "", -100, 100, -100, -100, 100, 100, 2, 2 + AuxL2Gauge = auxLinear2, "Aux Linear 2", "", -100, 100, -100, -100, 100, 100, 2, 2 + +gaugeCategory = VVT + vvtPositionB1IGauge = vvtPositionB1I, "VVT: bank 1 intake", "deg", -60, 60, -60, -60, 60, 60, 1, 1 + vvtPositionB1EGauge = vvtPositionB1E, "VVT: bank 1 exhaust", "deg", -60, 60, -60, -60, 60, 60, 1, 1 + vvtPositionB2IGauge = vvtPositionB2I, "VVT: bank 2 intake", "deg", -60, 60, -60, -60, 60, 60, 1, 1 + vvtPositionB2EGauge = vvtPositionB2E, "VVT: bank 2 exhaust", "deg", -60, 60, -60, -60, 60, 60, 1, 1 + vvtTargets1Gauge = vvtTargets1, "VVT: bank 1 intake target", "deg", -60, 60, -60, -60, 60, 60, 0, 0 + vvtTargets2Gauge = vvtTargets2, "VVT: bank 1 exhaust target", "deg", -60, 60, -60, -60, 60, 60, 0, 0 + vvtTargets3Gauge = vvtTargets3, "VVT: bank 2 intake target", "deg", -60, 60, -60, -60, 60, 60, 0, 0 + vvtTargets4Gauge = vvtTargets4, "VVT: bank 2 exhaust target", "deg", -60, 60, -60, -60, 60, 60, 0, 0 + +gaugeCategory = Ignition +sparkCutReasonGauge = sparkCutReason,"Spark Cut Code", "code", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0 + ignadvGauge = ignitionAdvance, "Ignition timing", "degrees", -100, 100, -999, -999, 999, 999, 1, 1 + dwellGauge = sparkDwellValue, "Dwell", "mSec", 0, 10, 0.5, 1.0, 6.0, 8.0, 1, 1 + coilDutyCycleGauge = coilDutyCycle, "dwell: coil duty cycle", "%", 0, 110, 0, 0, 90, 100, 1, 1 + ignitionLoadGauge = ignitionLoad, "ign: load", "%", 0, 300, 0, 0, 300, 300, 1, 1 + +gaugeCategory = Acceleration Enrichment + deltaTpsGauge = deltaTps, "AE: TPS change", "", 0, 120, 10, 10, 100, 100, 1, 1 + tpsAccelFuelGauge = tpsAccelFuel,"AE: TPS enrich", "ms", 0, 120, 10, 10, 100, 100, 1, 1 + wallFuelAmountGauge = wallFuelAmount, "AE: wall amount", "mg", 0, 100, 0, 0, 100, 100, 0, 0 + wallFuelCorrectionGauge = wallFuelCorrection, "AE: wall correction extra", "mg", -20, 20, -100, -100, 100, 100, 1, 1 + +gaugeCategory = Fueling + ;Name Var Title Units Lo Hi LoD LoW HiW HiD vd ld +fuelCutReasonGauge = fuelCutReason,"Fuel Cut Code", "code", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0 + tChargeGauge = tCharge, "fuel: Estimated charge temperature", "C", -40, 140, -15, 1, 95, 110, 1, 1 + 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", "mg", 0, 100, 0, 0, 100, 100, 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, 10, 0, 0, 10, 10, 3, 1 + fuelRunningGauge = fuelRunning, "fuel: running", "mg", 0, 100, 0, 0, 100, 100, 3, 1 + baseFuelGauge = baseFuel, "fuel: base mass", "mg", 0, 100, 0, 0, 100, 100, 2, 0 + fuelPidCorrectionGauge = fuelPidCorrection1, "fuel: fuel trim", "%", -10, 10, -8, -5, 5, 8, 3, 1 + fuelPidCorrectionGauge2= fuelPidCorrection2, "fuel: fuel trim 2", "%", -10, 10, -8, -5, 5, 8, 3, 1 + fuelingLoadGauge = fuelingLoad, "fuel: load", "%", 0, 300, 0, 0, 300, 300, 1, 1 + totalFuelConsumptionGauge = totalFuelConsumption, "fuel: Total consumed", "g", 0, 10000, 0, 0, 10000, 10000, 0, 0 + fuelFlowRateGauge = fuelFlowRate, "fuel: Flow rate", "g/s", 0, 50, 0, 0, 50, 50, 2, 0 +targetLambdaGauge = targetLambda,"fuel: target lambda", "", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0 +currentTargetAfrGauge = currentTargetAfr,"fuel: target AFR", "ratio", 0.0,0.0, 0.0,0.0, 0.0,0.0, 0,0 + +gaugeCategory = Throttle Body (incl. ETB) + pedalPositionGauge = throttlePedalPosition, "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 + TPS2Gauge = TPS2Value, "Throttle position #2", "%", 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", "%", -100, 100, -75, -50, 50, 75, 0, 0 + +gaugeCategory = Sensors - Raw + rawTps1PrimaryGauge = rawTps1Primary, "Raw TPS 1 Primary", "V", 0, 5, 0, 0, 5, 5, 3, 0 + rawTps1SecondaryGauge = rawTps1Secondary, "Raw TPS 1 Secondary", "V", 0, 5, 0, 0, 5, 5, 3, 0 + rawTps2PrimaryGauge = rawTps2Primary, "Raw TPS 2 Primary", "V", 0, 5, 0, 0, 5, 5, 3, 0 + rawTps2SecondaryGauge = rawTps2Secondary, "Raw TPS 2 Secondary", "V", 0, 5, 0, 0, 5, 5, 3, 0 + rawPpsPrimaryGauge = rawPpsPrimary , "Raw Pedal Primary", "V", 0, 5, 0, 0, 5, 5, 3, 0 + rawPpsSecondaryGauge = rawPpsSecondary,"Raw Pedal Secondary","V",0, 5, 0, 0, 5, 5, 3, 0 + rawCltGauge = rawClt , "Raw CLT", "V", 0, 5, 0, 0, 5, 5, 3, 0 + rawIatGauge = rawIat , "Raw IAT", "V", 0, 5, 0, 0, 5, 5, 3, 0 + rawOilPressureGauge = rawOilPressure, "Raw Oil Pressure", "V", 0, 5, 0, 0, 5, 5, 3, 0 + rawIdlePositionSensorGauge = rawIdlePositionSensor, "Raw Idle Position", "V", 0, 5, 0, 0, 5, 5, 3, 0 + rawWastegatePositionGauge = rawWastegatePosition,"Raw Wastegate Position","V", 0, 5, 0, 0, 5, 5, 3, 0 + rawLowFuelPressureGauge = rawLowFuelPressure,"Raw fuel pressure (low) voltage","V", 0, 5, 0, 0, 5, 5, 3, 0 + rawHighFuelPressureGauge = rawHighFuelPressure,"Raw fuel pressure (high) voltage","V", 0, 5, 0, 0, 5, 5, 3, 0 + rawMafGauge = rawMaf , "Raw MAF", "V", 0, 5, 0, 0, 5, 5, 3, 0 + rawMapGauge = rawMap , "Raw MAP", "V", 0, 5, 0, 0, 5, 5, 3, 0 + rawAfrGauge = rawAfr , "Raw EGO", "V", 0, 5, 0, 0, 5, 5, 3, 0 + vssEdgeCounterGauge = vssEdgeCounter, "Raw VSS", "counter", 0, 5, 0, 0, 5, 5, 3, 0 + issEdgeCounterGauge = issEdgeCounter, "Raw ISS", "counter", 0, 5, 0, 0, 5, 5, 3, 0 + +gaugeCategory = Transmission + desiredGearGauge = tcuDesiredGear, "Desired Gear", "gear", -1, 10, -1, -1, 10, 10, 0, 0 + currentGearGauge = tcuCurrentGear, "Current Gear", "gear", -1, 10, -1, -1, 10, 10, 0, 0 + detectedGearGauge = detectedGear, "Detected Gear", "gear", 0, 8, 0, 0, 8, 8, 0, 0 + speedToRpmRatioGauge = speedToRpmRatio, "Gearbox Ratio", "", 0, 100, 0, 0, 100, 100, 4, 4 + ISSGauge = ISSValue, "Input Shaft Speed", "RPM", 0, {rpmHardLimit + 2000}, 200, {cranking_rpm}, {rpmHardLimit - 500}, {rpmHardLimit}, 0, 0 + tcRatioGauge = tcRatio, "Torque Converter Ratio", "", 0, 100, 0, 0, 100, 100, 4, 4 + shiftTimeGauge = lastShiftTime, "Last Shift Time", "S", 0, 2, 0, 0, 2, 2, 4, 4 + +gaugeCategory = Knock + knock1Gauge = knock1, "Knock Cyl 1", "dBv", -60, 10, -60, -60, 10, 10, 0, 0 + knock2Gauge = knock2, "Knock Cyl 2", "dBv", -60, 10, -60, -60, 10, 10, 0, 0 + knock3Gauge = knock3, "Knock Cyl 3", "dBv", -60, 10, -60, -60, 10, 10, 0, 0 + knock4Gauge = knock4, "Knock Cyl 4", "dBv", -60, 10, -60, -60, 10, 10, 0, 0 + knock5Gauge = knock5, "Knock Cyl 5", "dBv", -60, 10, -60, -60, 10, 10, 0, 0 + knock6Gauge = knock6, "Knock Cyl 6", "dBv", -60, 10, -60, -60, 10, 10, 0, 0 + knock7Gauge = knock7, "Knock Cyl 7", "dBv", -60, 10, -60, -60, 10, 10, 0, 0 + knock8Gauge = knock8, "Knock Cyl 8", "dBv", -60, 10, -60, -60, 10, 10, 0, 0 + knock9Gauge = knock9, "Knock Cyl 9", "dBv", -60, 10, -60, -60, 10, 10, 0, 0 + knock10Gauge = knock10, "Knock Cyl 10", "dBv", -60, 10, -60, -60, 10, 10, 0, 0 + knock11Gauge = knock11, "Knock Cyl 11", "dBv", -60, 10, -60, -60, 10, 10, 0, 0 + knock12Gauge = knock12, "Knock Cyl 12", "dBv", -60, 10, -60, -60, 10, 10, 0, 0 + knockLevelGauge = knockLevel,"Knock level", "dBv", -60, 10, -60, -60, 10, 10, 0, 0 + knockRetardGauge = knockRetard, "Knock retard", "deg", 0, 10, 0, 0, 10, 10, 1, 1 + knockCountGauge = knockCount, "Knock count", "count", 0, 10000, 0, 0, 10000, 10000, 0, 0 + +gaugeCategory = DynoView + accelGauge = VssAcceleration, "Vehicle acceleration", "m/s2", -10, 10, -6, -4, 4, 6, 2, 2 + +[WueAnalyze] + +; wueCurveName, afrTempCompensationCurve, lambdaTargetTableName, lambdaChannel, coolantTempChannel, egoCorrectionChannel, wueChannel, activeCondition +#if LAMBDA + wueAnalyzeMap = wueAnalyzer_warmup_curve, wueAfrTargetOffsetCurve, lambdaTableTbl, lambdaValue, coolant, cltCorrection, egoCorrectionForVeAnalyze + lambdaTargetTables = lambdaTableTbl, afrTSCustom +#else + wueAnalyzeMap = wueAnalyzer_warmup_curve, wueAfrTargetOffsetCurve, afrTableTbl, AFRValue, coolant, cltCorrection, egoCorrectionForVeAnalyze + lambdaTargetTables = afrTableTbl, afrTSCustom +#endif + + wuePercentOffset = 0 ; for working with 0 based enrichment set to 100 + option = disableLiveUpdates + option = burnOnSend + +; filter = std_DeadLambda ; Auto build + + filter = decelFilterMap,"After Start Enrich", engine, & , 4 , , false + filter = accelFilterTp, "TP Accel Enrich" , engine, & , 16, , false + filter = decelFilterTp, "TP Decel Enrich" , engine, & , 32, , false + filter = accelFilterMap,"MAP Accel Enrich" , engine, & , 64, , false + filter = decelFilterMap,"MAP Decel Enrich" , engine, & , 128, , false + ; this works, just another way to skin a cat + ;filter = decelFilter, "Decel Flag" , tpsaccden, > , 0, , false + filter = overrunFilter, "Overrun" , pulseWidth1, = , 0, , false + filter = highThrottle, "High Throttle" , throttle, > , 15, , true + filter = lowRpm, "Low RPM" , rpm, < , 300, , false + filter = std_Custom ; Standard Custom Expression Filter. + + +[FrontPage] + ; Gauges are numbered left to right, top to bottom. + ; + ; 1 2 3 4 + ; 5 6 7 8 + + gauge1 = RPMGauge + gauge2 = CLTGauge + gauge3 = TPSGauge + gauge4 = MAPGauge +#if LAMBDA + gauge5 = lambda1Gauge +#else + gauge5 = afr1Gauge +#endif + gauge6 = VBattGauge + gauge7 = dwellGauge + gauge8 = ignadvGauge + + + +; = expression, off-label, on-label, off-bg, off-fg, on-bg, on-fg + ; important status + ; todo: do we want to drop this line since we have "config error" feature thing below? + indicator = { hasCriticalError }, "", "CRITICAL ERROR", white, black, red, black + + indicator = { needBurn }, "", "unsaved changes", white, black, yellow, black + indicator = { isWarnNow }, "", "WARNING", white, black, yellow, black + indicator = { checkEngine }, "", "Check Engine", white, black, red, black + indicator = { isTriggerError}, "Trigger OK", "Trigger ERR", white, black, red, black + indicator = { isIgnitionEnabledIndicator}, "no ignition", "ignition", yellow, black, white, black + indicator = { isInjectionEnabledIndicator}, "no injection", "injection", yellow, black, white, black + + + ; this is required so that the "config error" feature works in TS + ; don't change this line - TS is looking for an indicator with particular text/styling + ; you don't even have to show it by default + indicator = { hasCriticalError }, "Config Error", "Config Error", white, black, red, black + + ; minor info + indicator = { isFanOn }, "fan off", "fan on", white, black, green, black + indicator = { isFan2On }, "fan 2 off", "fan 2 on", white, black, green, black + indicator = { isMainRelayOn }, "main relay off", "main relay on", white, black, green, black + indicator = { fuelCutReason == 11 }, "no cyl cleanup", "cyl cleanup", white, black, yellow, black + indicator = { isFuelPumpOn}, "pump off", "pump on", white, black, green, black + indicator = { clutchUpState }, "Clutch Up", "clutch Up", white, black, red, black + indicator = { clutchDownState }, "Clutch Down", "Clutch Down", white, black, yellow, black + indicator = { brakePedalState }, "brake", "brake down", white, black, red, black + indicator = { acButtonState }, "AC switch off", "AC switch on", white, black, blue, white + indicator = { m_acEnabled }, "AC off", "AC on", white, black, blue, white + indicator = { isIdleClosedLoop }, "not idling", "idling", white, black, green, black + indicator = { isIdleCoasting }, "not coasting", "coasting", white, black, green, black + indicator = { dfcoActive }, "no decel cut", "decel cut", white, black, yellow, black + indicator = { tpsAccelActive }, "no TPS accel", "TPS accel active", white, black, yellow, black + + ; error codes + indicator = { isTpsError}, "tps", "tps error", white, black, red, black + indicator = { isTps2Error}, "tps 2", "tps 2 error", white, black, red, black + indicator = { isPedalError}, "pedal", "pedal error", white, black, red, black + indicator = { isCltError}, "clt", "clt error", white, black, red, black + indicator = { isIatError}, "iat", "iat error", white, black, red, black + +; not implemented +; indicator = { ind_map_error}, "map", "map error", white, black, red, black + + indicator = { sd_present }, "no SD card", "SD card OK", white, black, green, black + indicator = { sd_logging_internal }, "SD logging", "SD logging", white, black, green, black + indicator = { sd_msd }, "SD USB", "SD USB", white, black, green, black + +; looks like TS would append four system indicators below: Data Logging, ???, Not Connected, Protocol Error + + +[KeyActions] + showPanel = spi, spiFunction + showPanel = con, connection + +; +; this section defines how we log output channels +; see [OutputChannels] +; +[Datalog] + ; Channel Label Type Format + entry = time, "Time", float, "%.3f" +entry = sd_present, "sd_present", int, "%d" +entry = isIgnitionEnabledIndicator, "isIgnitionEnabledIndicator", int, "%d" +entry = isInjectionEnabledIndicator, "isInjectionEnabledIndicator", int, "%d" +entry = sd_logging_internal, "sd_logging_internal", int, "%d" +entry = isFuelPumpOn, "isFuelPumpOn", int, "%d" +entry = isFanOn, "radiator fan", int, "%d" +entry = isO2HeaterOn, "isO2HeaterOn", int, "%d" +entry = checkEngine, "checkEngine", int, "%d" +entry = needBurn, "needBurn", int, "%d" +entry = sd_msd, "sd_msd", int, "%d" +entry = clutchUpState, "clutch: up", int, "%d" +entry = clutchDownState, "clutch: down", int, "%d" +entry = isFan2On, "isFan2On", int, "%d" +entry = alternatorOnOff, "alternatorOnOff", int, "%d" +entry = brakePedalState, "brake: down", int, "%d" +entry = toothLogReady, "toothLogReady", int, "%d" +entry = isTpsError, "isTpsError", int, "%d" +entry = isCltError, "isCltError", int, "%d" +entry = isMapError, "isMapError", int, "%d" +entry = isIatError, "isIatError", int, "%d" +entry = isTriggerError, "isTriggerError", int, "%d" +entry = hasCriticalError, "hasCriticalError", int, "%d" +entry = isWarnNow, "isWarnNow", int, "%d" +entry = isPedalError, "isPedalError", int, "%d" +entry = isKnockChipOk, "isKnockChipOk", int, "%d" +entry = launchTriggered, "launchTriggered", int, "%d" +entry = isTps2Error, "isTps2Error", int, "%d" +entry = isIdleClosedLoop, "isIdleClosedLoop", int, "%d" +entry = isIdleCoasting, "isIdleCoasting", int, "%d" +entry = RPMValue, "RPM", int, "%d" +entry = rpmAcceleration, "dRPM", int, "%d" +entry = speedToRpmRatio, "Gearbox Ratio", float, "%.3f" +entry = vehicleSpeedKph, "Vehicle Speed", int, "%d" +entry = internalMcuTemperature, "CPU Temperature", int, "%d" +entry = coolant, "CLT", float, "%.3f" +entry = intake, "IAT", float, "%.3f" +entry = auxTemp1, "auxTemp1", float, "%.3f" +entry = auxTemp2, "auxTemp2", float, "%.3f" +entry = TPSValue, "TPS", float, "%.3f" +entry = throttlePedalPosition, "Throttle pedal position", float, "%.3f" +entry = tpsADC, "tpsADC", int, "%d" +entry = rawMaf, "rawMaf", float, "%.3f" +entry = mafMeasured, "MAF sensor", float, "%.3f" +entry = MAPValue, "MAP", float, "%.3f" +entry = baroPressure, "baroPressure", float, "%.3f" +entry = lambdaValue, "Lambda", float, "%.3f" +entry = knockRetard, "knock: retard", float, "%.3f" +entry = idleCurrentPosition, "idleCurrentPosition", float, "%.3f" +entry = VBatt, "VBatt", float, "%.3f" +entry = oilPressure, "Oil Pressure", float, "%.3f" +entry = vvtPositionB1I, "VVT: bank 1 intake", float, "%.3f" +entry = chargeAirMass, "air mass", float, "%.3f" +entry = crankingFuelMs, "crankingFuelMs", float, "%.3f" +entry = currentTargetAfr, "fuel: target AFR", float, "%.3f" +entry = baseFuel, "fuel: base mass", float, "%.3f" +entry = fuelRunning, "fuel: running", float, "%.3f" +entry = actualLastInjection, "fuel: Last injection", float, "%.3f" +entry = injectorDutyCycle, "fuel: injector duty cycle", float, "%.3f" +entry = veValue, "fuel: VE", float, "%.3f" +entry = injectionOffset, "injectionOffset", int, "%d" +entry = tCharge, "tCharge", float, "%.3f" +entry = injectorLagMs, "fuel: injector lag", float, "%.3f" +entry = iatCorrection, "fuel: IAT correction", float, "%.3f" +entry = cltCorrection, "fuel: CLT correction", float, "%.3f" +entry = baroCorrection, "fuel: Barometric pressure correction", float, "%.3f" +entry = currentEnginePhase, "Engine Phase", int, "%d" +entry = wallFuelAmount, "fuel: wall amount", float, "%.3f" +entry = wallFuelCorrection, "fuel: wall correction", float, "%.3f" +entry = revolutionCounterSinceStart, "revolutionCounterSinceStart", int, "%d" +entry = deltaTps, "fuel: TPS change", float, "%.3f" +entry = canReadCounter, "canReadCounter", int, "%d" +entry = tpsAccelFuel, "fuel: TPS acceleration extra fuel ms", float, "%.3f" +entry = ignitionAdvance, "timing", float, "%.3f" +entry = sparkDwellValue, "dwell: coil charge time", float, "%.3f" +entry = coilDutyCycle, "dwell: coil duty cycle", float, "%.3f" +entry = idleAirValvePosition, "Idle Air Valve", float, "%.3f" +entry = etbTarget, "ETB Target", float, "%.3f" +entry = etb1DutyCycle, "ETB Duty", float, "%.3f" +entry = etb1Error, "ETB Error", float, "%.3f" +entry = fuelTankLevel, "Fuel level", float, "%.3f" +entry = totalFuelConsumption, "fuel: Total consumed", int, "%d" +entry = fuelFlowRate, "fuel: Flow rate", float, "%.3f" +entry = veTableYAxis, "veTableYAxis", float, "%.3f" +entry = afrTableYAxis, "afrTableYAxis", float, "%.3f" +entry = knockLevel, "knock: current level", float, "%.3f" +entry = seconds, "Uptime", int, "%d" +entry = engineMode, "Engine Mode", int, "%d" +entry = firmwareVersion, "firmware", int, "%d" +entry = tsConfigVersion, "tsConfigVersion", int, "%d" +entry = calibrationValue, "calibrationValue", float, "%.3f" +entry = calibrationMode, "calibrationMode", int, "%d" +entry = idleTargetPosition, "idleTargetPosition", int, "%d" +entry = fuelingLoad, "fuel: load", float, "%.3f" +entry = ignitionLoad, "ign: load", float, "%.3f" +entry = engineMakeCodeNameCrc16, "Engine CRC16", int, "%d" +entry = totalTriggerErrorCounter, "Trigger Error Counter", int, "%d" +entry = orderingErrorCounter, "orderingErrorCounter", int, "%d" +entry = warningCounter, "warning: counter", int, "%d" +entry = lastErrorCode, "warning: last", int, "%d" +entry = recentErrorCode1, "recentErrorCode 1", int, "%d" +entry = recentErrorCode2, "recentErrorCode 2", int, "%d" +entry = recentErrorCode3, "recentErrorCode 3", int, "%d" +entry = recentErrorCode4, "recentErrorCode 4", int, "%d" +entry = recentErrorCode5, "recentErrorCode 5", int, "%d" +entry = recentErrorCode6, "recentErrorCode 6", int, "%d" +entry = recentErrorCode7, "recentErrorCode 7", int, "%d" +entry = recentErrorCode8, "recentErrorCode 8", int, "%d" +entry = debugFloatField1, "debugFloatField1", float, "%.3f" +entry = debugFloatField2, "debugFloatField2", float, "%.3f" +entry = debugFloatField3, "debugFloatField3", float, "%.3f" +entry = debugFloatField4, "debugFloatField4", float, "%.3f" +entry = debugFloatField5, "debugFloatField5", float, "%.3f" +entry = debugFloatField6, "debugFloatField6", float, "%.3f" +entry = debugFloatField7, "debugFloatField7", float, "%.3f" +entry = debugIntField1, "debugIntField1", int, "%d" +entry = debugIntField2, "debugIntField2", int, "%d" +entry = debugIntField3, "debugIntField3", int, "%d" +entry = debugIntField4, "debugIntField4", int, "%d" +entry = debugIntField5, "debugIntField5", int, "%d" +entry = accelerationX, "Acceleration: X", float, "%.3f" +entry = accelerationY, "Acceleration: Y", float, "%.3f" +entry = egt1, "egt 1", int, "%d" +entry = egt2, "egt 2", int, "%d" +entry = egt3, "egt 3", int, "%d" +entry = egt4, "egt 4", int, "%d" +entry = egt5, "egt 5", int, "%d" +entry = egt6, "egt 6", int, "%d" +entry = egt7, "egt 7", int, "%d" +entry = egt8, "egt 8", int, "%d" +entry = TPS2Value, "TPS2", float, "%.3f" +entry = rawTps1Primary, "rawTps1Primary", float, "%.3f" +entry = rawPpsPrimary, "rawPpsPrimary", float, "%.3f" +entry = rawClt, "rawClt", float, "%.3f" +entry = rawIat, "rawIat", float, "%.3f" +entry = rawOilPressure, "rawOilPressure", float, "%.3f" +entry = tuneCrc16, "Tune CRC16", int, "%d" +entry = fuelClosedLoopBinIdx, "fuelClosedLoopBinIdx", int, "%d" +entry = tcuCurrentGear, "Current Gear", int, "%d" +entry = rawPpsSecondary, "rawPpsSecondary", float, "%.3f" +entry = knock1, "knock 1", int, "%d" +entry = knock2, "knock 2", int, "%d" +entry = knock3, "knock 3", int, "%d" +entry = knock4, "knock 4", int, "%d" +entry = knock5, "knock 5", int, "%d" +entry = knock6, "knock 6", int, "%d" +entry = knock7, "knock 7", int, "%d" +entry = knock8, "knock 8", int, "%d" +entry = knock9, "knock 9", int, "%d" +entry = knock10, "knock 10", int, "%d" +entry = knock11, "knock 11", int, "%d" +entry = knock12, "knock 12", int, "%d" +entry = tcuDesiredGear, "Desired Gear", int, "%d" +entry = flexPercent, "Flex Ethanol %", float, "%.3f" +entry = rawIdlePositionSensor, "rawIdlePositionSensor", float, "%.3f" +entry = rawWastegatePosition, "rawWastegatePosition", float, "%.3f" +entry = wastegatePositionSensor, "Wastegate position sensor", float, "%.3f" +entry = idlePositionSensor, "Idle position sensor", float, "%.3f" +entry = rawLowFuelPressure, "rawLowFuelPressure", float, "%.3f" +entry = rawHighFuelPressure, "rawHighFuelPressure", float, "%.3f" +entry = lowFuelPressure, "Fuel pressure (low)", float, "%.3f" +entry = highFuelPressure, "Fuel pressure (high)", float, "%.3f" +entry = targetLambda, "fuel: target lambda", float, "%.3f" +entry = AFRValue, "Air/Fuel Ratio", float, "%.3f" +entry = VssAcceleration, "Vss Accel", float, "%.3f" +entry = lambdaValue2, "Lambda 2", float, "%.3f" +entry = AFRValue2, "Air/Fuel Ratio 2", float, "%.3f" +entry = vvtPositionB1E, "VVT: bank 1 exhaust", float, "%.3f" +entry = vvtPositionB2I, "VVT: bank 2 intake", float, "%.3f" +entry = vvtPositionB2E, "VVT: bank 2 exhaust", float, "%.3f" +entry = fuelPidCorrection1, "fuelPidCorrection 1", float, "%.3f" +entry = fuelPidCorrection2, "fuelPidCorrection 2", float, "%.3f" +entry = rawTps1Secondary, "rawTps1Secondary", float, "%.3f" +entry = rawTps2Primary, "rawTps2Primary", float, "%.3f" +entry = rawTps2Secondary, "rawTps2Secondary", float, "%.3f" +entry = knockCount, "knock: count", int, "%d" +entry = accelerationZ, "Acceleration: Z", float, "%.3f" +entry = accelerationRoll, "Acceleration: Roll", float, "%.3f" +entry = accelerationYaw, "Acceleration: Yaw", float, "%.3f" +entry = vvtTargets1, "vvtTargets 1", int, "%d" +entry = vvtTargets2, "vvtTargets 2", int, "%d" +entry = vvtTargets3, "vvtTargets 3", int, "%d" +entry = vvtTargets4, "vvtTargets 4", int, "%d" +entry = turboSpeed, "Turbocharger Speed", int, "%d" +entry = wbTemperature1, "wbTemperature 1", int, "%d" +entry = wbTemperature2, "wbTemperature 2", int, "%d" +entry = wbHeaterDuty1, "wbHeaterDuty 1", int, "%d" +entry = wbHeaterDuty2, "wbHeaterDuty 2", int, "%d" +entry = tps1Split, "tps1Split", float, "%.3f" +entry = tps2Split, "tps2Split", float, "%.3f" +entry = tps12Split, "tps12Split", float, "%.3f" +entry = accPedalSplit, "accPedalSplit", float, "%.3f" +entry = m_requested_pump, "DI: Pump Angle", float, "%.3f" +entry = boostControlTarget, "Boost Target", float, "%.3f" +entry = sparkCutReason, "Spark Cut Code", int, "%d" +entry = fuelCutReason, "Fuel Cut Code", int, "%d" +entry = fuel_requested_percent, "DI: fuel_requested_percent", float, "%.3f" +entry = fuel_requested_percent_pi, "DI: fuel_requested_percent_pi", float, "%.3f" +entry = m_I_sum_percent, "DI: m_I_sum_percent", float, "%.3f" +entry = m_pressureTarget_kPa, "DI: m_pressureTarget_kPa", float, "%.3f" +entry = mafEstimate, "MAF estimate", float, "%.3f" +entry = instantRpm, "instantRpm", int, "%d" +entry = di_nextStart, "DI: next start", float, "%.3f" +entry = systemEventReuse, "systemEventReuse", int, "%d" +entry = rawMap, "rawMap", float, "%.3f" +entry = rawAfr, "rawAfr", float, "%.3f" +entry = tpsAccelFrom, "tpsAccelFrom", int, "%d" +entry = tpsAccelTo, "tpsAccelTo", int, "%d" +entry = calibrationValue2, "calibrationValue2", float, "%.3f" +entry = isMainRelayOn, "isMainRelayOn", int, "%d" +entry = isUsbConnected, "Original reason for this is to check if USB is connected from Lua", int, "%d" +entry = luaInvocationCounter, "luaInvocationCounter", int, "%d" +entry = luaLastCycleDuration, "luaLastCycleDuration", int, "%d" +entry = testBenchIter, "testBenchIter", int, "%d" +entry = tcRatio, "Torque Converter Ratio", float, "%.3f" +entry = lastShiftTime, "S", float, "%.3f" +entry = vssEdgeCounter, "vssEdgeCounter", int, "%d" +entry = issEdgeCounter, "issEdgeCounter", int, "%d" +entry = auxLinear1, "Aux Linear 1", float, "%.3f" +entry = auxLinear2, "Aux Linear 2", float, "%.3f" +entry = launchSpeedCondition, "launchSpeedCondition", int, "%d" +entry = launchRpmCondition, "launchRpmCondition", int, "%d" +entry = launchTpsCondition, "launchTpsCondition", int, "%d" +entry = launchActivateSwitchCondition, "launchActivateSwitchCondition", int, "%d" +entry = launchIsLaunchCondition, "launchIsLaunchCondition", int, "%d" +entry = launchCombinedConditions, "launchCombinedConditions", int, "%d" +entry = dfcoActive, "dfcoActive", int, "%d" +entry = tpsAccelActive, "tpsAccelActive", int, "%d" +entry = boostControllerOutput, "Boost Output", float, "%.3f" +entry = boostControllerOpenLoopPart, "Boost Open Loop", float, "%.3f" +entry = fallbackMap, "fallbackMap", float, "%.3f" +entry = boostControllerClosedLoopPart, "Boost Closed Loop", float, "%.3f" +entry = detectedGear, "Detected Gear", int, "%d" +entry = timingCltCorrection, "timingCltCorrection", float, "%.3f" +entry = timingIatCorrection, "timingIatCorrection", float, "%.3f" +entry = timingPidCorrection, "timingPidCorrection", float, "%.3f" +entry = instantMAPValue, "Instant MAP", float, "%.3f" +entry = mostRecentTimeBetweenSparkEvents, "mostRecentTimeBetweenSparkEvents", int, "%d" +entry = mostRecentTimeBetweenIgnitionEvents, "mostRecentTimeBetweenIgnitionEvents", int, "%d" +entry = maxLockedDuration, "maxLockedDuration", int, "%d" +entry = maxTriggerReentrant, "maxTriggerReentrant", int, "%d" +entry = canWriteOk, "canWriteOk", int, "%d" +entry = canWriteNotOk, "canWriteNotOk", int, "%d" +entry = triggerPrimaryFall, "triggerPrimaryFall", int, "%d" +entry = triggerPrimaryRise, "triggerPrimaryRise", int, "%d" +entry = triggerSecondaryFall, "triggerSecondaryFall", int, "%d" +entry = triggerSecondaryRise, "triggerSecondaryRise", int, "%d" +entry = triggerVvtFall, "triggerVvtFall", int, "%d" +entry = triggerVvtRise, "triggerVvtRise", int, "%d" +entry = startStopStateToggleCounter, "startStopStateToggleCounter", int, "%d" +entry = starterState, "starterState", int, "%d" +entry = starterRelayDisable, "starterRelayDisable", int, "%d" +entry = multiSparkCounter, "multiSparkCounter", int, "%d" +entry = injectorFlowPressureRatio, "injectorFlowPressureRatio", float, "%.3f" +entry = injectorFlowPressureDelta, "injectorFlowPressureDelta", float, "%.3f" +entry = etbIntegralError, "etbIntegralError", float, "%.3f" +entry = etbCurrentTarget, "etbCurrentTarget", float, "%.3f" +entry = alternatorStatus_iTerm, "alternatorStatus_iTerm", float, "%.3f" +entry = alternatorStatus_dTerm, "alternatorStatus_dTerm", float, "%.3f" +entry = alternatorStatus_output, "alternatorStatus_output", float, "%.3f" +entry = alternatorStatus_error, "alternatorStatus_error", float, "%.3f" +entry = alternatorStatus_resetCounter, "alternatorStatus_resetCounter", int, "%d" +entry = idleStatus_iTerm, "idleStatus_iTerm", float, "%.3f" +entry = idleStatus_dTerm, "idleStatus_dTerm", float, "%.3f" +entry = idleStatus_output, "idleStatus_output", float, "%.3f" +entry = idleStatus_error, "idleStatus_error", float, "%.3f" +entry = idleStatus_resetCounter, "idleStatus_resetCounter", int, "%d" +entry = etbStatus_iTerm, "etbStatus_iTerm", float, "%.3f" +entry = etbStatus_dTerm, "etbStatus_dTerm", float, "%.3f" +entry = etbStatus_output, "etbStatus_output", float, "%.3f" +entry = etbStatus_error, "etbStatus_error", float, "%.3f" +entry = etbStatus_resetCounter, "etbStatus_resetCounter", int, "%d" +entry = boostStatus_iTerm, "boostStatus_iTerm", float, "%.3f" +entry = boostStatus_dTerm, "boostStatus_dTerm", float, "%.3f" +entry = boostStatus_output, "boostStatus_output", float, "%.3f" +entry = boostStatus_error, "boostStatus_error", float, "%.3f" +entry = boostStatus_resetCounter, "boostStatus_resetCounter", int, "%d" +entry = auxSpeed1, "aux speed 1", int, "%d" +entry = auxSpeed2, "aux speed 2", int, "%d" +entry = ISSValue, "Input Shaft Speed", int, "%d" +entry = m_knockRetard, "Degrees retarded: larger number = more retard", float, "%.3f" +entry = m_knockThreshold, "m_knockThreshold", float, "%.3f" +entry = m_knockCount, "m_knockCount", int, "%d" +entry = m_requested_pump, "Computed requested pump duration in degrees (not including deadtime)", float, "%.3f" +entry = fuel_requested_percent, "fuel_requested_percent", float, "%.3f" +entry = fuel_requested_percent_pi, "fuel_requested_percent_pi", float, "%.3f" +entry = noValve, "noValve", int, "%d" +entry = angleAboveMin, "angleAboveMin", int, "%d" +entry = isHpfpInactive, "isHpfpInactive", int, "%d" +entry = nextLobe, "nextLobe", float, "%.3f" +entry = nextStart, "nextStart", float, "%.3f" +entry = m_deadtime, "m_deadtime", float, "%.3f" +entry = pressureDelta, "pressureDelta", float, "%.3f" +entry = pressureRatio, "pressureRatio", float, "%.3f" +entry = retardThresholdRpm, "retardThresholdRpm", int, "%d" +entry = combinedConditions, "combinedConditions", int, "%d" +entry = launchActivatePinState, "launchActivatePinState", int, "%d" +entry = isLaunchCondition, "isLaunchCondition", int, "%d" +entry = isSwitchActivated, "isSwitchActivated", int, "%d" +entry = isClutchActivated, "isClutchActivated", int, "%d" +entry = isValidInputPin, "isValidInputPin", int, "%d" +entry = activateSwitchCondition, "activateSwitchCondition", int, "%d" +entry = rpmCondition, "rpmCondition", int, "%d" +entry = speedCondition, "speedCondition", int, "%d" +entry = tpsCondition, "tpsCondition", int, "%d" +entry = isTpsInvalid, "isTpsInvalid", int, "%d" +entry = m_shouldResetPid, "m_shouldResetPid", int, "%d" +entry = isBelowClosedLoopThreshold, "isBelowClosedLoopThreshold", int, "%d" +entry = isNotClosedLoop, "isNotClosedLoop", int, "%d" +entry = isZeroRpm, "isZeroRpm", int, "%d" +entry = openLoopPart, "openLoopPart", float, "%.3f" +entry = closedLoopPart, "closedLoopPart", float, "%.3f" +entry = engineTooSlow, "engineTooSlow", int, "%d" +entry = engineTooFast, "engineTooFast", int, "%d" +entry = noClt, "noClt", int, "%d" +entry = engineTooHot, "engineTooHot", int, "%d" +entry = tpsTooHigh, "tpsTooHigh", int, "%d" +entry = m_acEnabled, "m_acEnabled", int, "%d" +entry = acButtonState, "AC switch", int, "%d" +entry = isDisabledByLua, "For setAcDisabled Lua method", int, "%d" +entry = latest_usage_ac_control, "latest_usage_ac_control", int, "%d" +entry = acSwitchLastChangeTimeMs, "acSwitchLastChangeTimeMs", int, "%d" +entry = cranking, "cranking", int, "%d" +entry = notRunning, "notRunning", int, "%d" +entry = disabledWhileEngineStopped, "disabledWhileEngineStopped", int, "%d" +entry = brokenClt, "brokenClt", int, "%d" +entry = enabledForAc, "enabledForAc", int, "%d" +entry = hot, "hot", int, "%d" +entry = cold, "cold", int, "%d" +entry = isPrime, "isPrime", int, "%d" +entry = engineTurnedRecently, "engineTurnedRecently", int, "%d" +entry = isPumpOn, "isPumpOn", int, "%d" +entry = ignitionOn, "ignitionOn", int, "%d" +entry = isBenchTest, "isBenchTest", int, "%d" +entry = hasIgnitionVoltage, "hasIgnitionVoltage", int, "%d" +entry = mainRelayState, "mainRelayState", int, "%d" +entry = delayedShutoffRequested, "delayedShutoffRequested", int, "%d" +entry = sd_isTChargeAirModel, "sd_isTChargeAirModel", int, "%d" +entry = sd_airMassInOneCylinder, "Speed-density logic: calculated air mass in one cylinder, in grams", float, "%.3f" +entry = sd_tCharge, "speed density", float, "%.3f" +entry = sd_tChargeK, "sd_tChargeK", float, "%.3f" +entry = sd_Tcharge_coff, "sd_Tcharge_coff", float, "%.3f" +entry = sd_airFlow, "sd_airFlow", float, "%.3f" +entry = targetAFR, "targetAFR", float, "%.3f" +entry = engineCycleDurationMs, "engineCycleDurationMs", float, "%.3f" +entry = minRpmKcurrentTPS, "minRpmKcurrentTPS", float, "%.3f" +entry = currentTpsAdc, "currentTpsAdc", int, "%d" +entry = tpsVoltageMCU, "tpsVoltageMCU", float, "%.3f" +entry = tpsVoltageBoard, "tpsVoltageBoard", float, "%.3f" +entry = currentBaroCorrectedVE, "currentBaroCorrectedVE", float, "%.3f" +entry = injectorFlowCorrection, "injectorFlowCorrection", float, "%.3f" +entry = baroCorrection, "baroCorrection", float, "%.3f" +entry = cranking_baseFuel, "Duration of injection, in ms. During cranking we do not account for injector flow, so if you change injectors you would need to change settings.", float, "%.3f" +entry = cranking_coolantTemperatureCoefficient, "cranking_coolantTemperatureCoefficient", float, "%.3f" +entry = cranking_tpsCoefficient, "cranking_tpsCoefficient", float, "%.3f" +entry = cranking_durationCoefficient, "cranking_durationCoefficient", float, "%.3f" +entry = cranking_fuel, "Actual injection duration based on all above coefficients.", float, "%.3f" +entry = running_postCrankingFuelCorrection, "running_postCrankingFuelCorrection", float, "%.3f" +entry = running_intakeTemperatureCoefficient, "running_intakeTemperatureCoefficient", float, "%.3f" +entry = running_coolantTemperatureCoefficient, "running_coolantTemperatureCoefficient", float, "%.3f" +entry = running_timeSinceCrankingInSecs, "running_timeSinceCrankingInSecs", float, "%.3f" +entry = running_injectorLag, "injectorLag(VBatt)", float, "%.3f" +entry = running_baseFuel, "running_baseFuel", float, "%.3f" +entry = running_fuel, "Actual injection duration with CLT, IAT and TPS acceleration corrections per cycle, as squirt duration.", float, "%.3f" +entry = etbFeedForward, "etbFeedForward", float, "%.3f" +entry = targetFromTable, "targetFromTable", float, "%.3f" +entry = sparkDwell, "ignition dwell duration in ms", float, "%.3f" +entry = dwellAngle, "ignition dwell duration as crankshaft angle", float, "%.3f" +entry = cltTimingCorrection, "cltTimingCorrection", float, "%.3f" +entry = tpsFrom, "tpsFrom", float, "%.3f" +entry = tpsTo, "tpsTo", float, "%.3f" +entry = deltaTps, "deltaTps", float, "%.3f" +entry = extraFuel, "extraFuel", float, "%.3f" +entry = valueFromTable, "valueFromTable", float, "%.3f" +entry = isAboveAccelThreshold, "isAboveAccelThreshold", int, "%d" +entry = isBelowDecelThreshold, "isBelowDecelThreshold", int, "%d" +entry = isTimeToResetAccumulator, "isTimeToResetAccumulator", int, "%d" +entry = isFractionalEnrichment, "isFractionalEnrichment", int, "%d" +entry = belowEpsilon, "belowEpsilon", int, "%d" +entry = tooShort, "tooShort", int, "%d" +entry = fractionalInjFuel, "fractionalInjFuel", float, "%.3f" +entry = accumulatedValue, "accumulatedValue", float, "%.3f" +entry = maxExtraPerCycle, "maxExtraPerCycle", float, "%.3f" +entry = maxExtraPerPeriod, "maxExtraPerPeriod", float, "%.3f" +entry = maxInjectedPerPeriod, "maxInjectedPerPeriod", float, "%.3f" +entry = cycleCnt, "cycleCnt", int, "%d" +entry = hwEventCounters1, "Hardware events since boot 1", int, "%d" +entry = hwEventCounters2, "Hardware events since boot 2", int, "%d" +entry = hwEventCounters3, "Hardware events since boot 3", int, "%d" +entry = hwEventCounters4, "Hardware events since boot 4", int, "%d" +entry = hwEventCounters5, "Hardware events since boot 5", int, "%d" +entry = hwEventCounters6, "Hardware events since boot 6", int, "%d" +entry = vvtCamCounter, "vvtCamCounter", int, "%d" +entry = mapVvt_MAP_AT_SPECIAL_POINT, "mapVvt_MAP_AT_SPECIAL_POINT", float, "%.3f" +entry = mapVvt_MAP_AT_DIFF, "mapVvt_MAP_AT_DIFF", float, "%.3f" +entry = mapVvt_MAP_AT_CYCLE_COUNT, "mapVvt_MAP_AT_CYCLE_COUNT", int, "%d" +entry = mapVvt_map_peak, "mapVvt_map_peak", int, "%d" +entry = totalRevolutionCounter, "Crank revolution counter", int, "%d" +entry = vvtSyncGapRatio, "vvtSyncGapRatio", float, "%.3f" +entry = vvtCurrentPosition, "vvtCurrentPosition", float, "%.3f" +entry = triggerSyncGapRatio, "Trigger Sync Latest Ratio", float, "%.3f" +entry = triggerActualSyncGapRatio, "triggerActualSyncGapRatio", float, "%.3f" +entry = triggerStateIndex, "triggerStateIndex", int, "%d" +entry = vvtCounter, "vvtCounter", int, "%d" +entry = vvtSyncCounter, "vvtSyncCounter", int, "%d" +entry = vvtStateIndex, "vvtStateIndex", int, "%d" +entry = wallFuelCorrection, "fuel injection time correction to account for wall wetting effect for current cycle", float, "%.3f" +entry = wallFuel, "Amount of fuel on the wall, in ms of injector open time for each injector.", float, "%.3f" +entry = idleState, "idleState", int, "%d" +entry = currentIdlePosition, "that's current position with CLT and IAT corrections", float, "%.3f" +entry = baseIdlePosition, "current position without adjustments (iacByTpsTaper, afterCrankingIACtaperDuration)", float, "%.3f" +entry = iacByTpsTaper, "iacByTpsTaper portion of idle", float, "%.3f" +entry = throttlePedalUpState, "true in IDLE throttle pedal state, false if driver is touching the pedal", int, "%d" +entry = mightResetPid, "The idea of 'mightResetPid' is to reset PID only once - each time when TPS > idlePidDeactivationTpsThreshold.", int, "%d" +entry = shouldResetPid, "shouldResetPid", int, "%d" +entry = wasResetPid, "This is needed to slowly turn on the PID back after it was reset.", int, "%d" +entry = mustResetPid, "This is used when the PID configuration is changed, to guarantee the reset", int, "%d" +entry = isCoasting, "isCoasting", int, "%d" +entry = useIacTableForCoasting, "useIacTableForCoasting", int, "%d" +entry = notIdling, "notIdling", int, "%d" +entry = needReset, "needReset", int, "%d" +entry = isInDeadZone, "isInDeadZone", int, "%d" +entry = isBlipping, "isBlipping", int, "%d" +entry = useClosedLoop, "useClosedLoop", int, "%d" +entry = badTps, "badTps", int, "%d" +entry = looksLikeRunning, "looksLikeRunning", int, "%d" +entry = looksLikeCoasting, "looksLikeCoasting", int, "%d" +entry = looksLikeCrankToIdle, "looksLikeCrankToIdle", int, "%d" +entry = useInstantRpmForIdle, "useInstantRpmForIdle", int, "%d" +entry = isVerboseIAC, "isVerboseIAC", int, "%d" +entry = targetRpmByClt, "targetRpmByClt", int, "%d" +entry = targetRpmAcBump, "targetRpmAcBump", int, "%d" +entry = baseDwell, "baseDwell", float, "%.3f" +entry = dwellVoltageCorrection, "dwellVoltageCorrection", float, "%.3f" +entry = luaTimingAdd, "luaTimingAdd", float, "%.3f" +entry = luaTimingMult, "luaTimingMult", float, "%.3f" +entry = idlePosition, "idlePosition", float, "%.3f" +entry = trim, "trim", float, "%.3f" +entry = luaAdjustment, "luaAdjustment", float, "%.3f" + + +[Menu] + +menuDialog = main +; see #1653 +; menu = "Data Logging" +; subMenu = std_ms3SdConsole, "Browse / Import SD Card" + + menu = "&Base &Engine" + subMenu = engineChars, "Base engine" + subMenu = limitsAndFallback, "Limits and fallbacks" + subMenu = triggerConfiguration, "Trigger" + subMenu = triggerConfiguration_IO, "Advanced Trigger" + subMenu = triggerConfiguration_gap, "Trigger Gap Override" + subMenu = std_separator + subMenu = energySystems, "Battery and alternator" + subMenu = std_separator + + # Digital outputs + subMenu = mainRelayDialog, "Main relay" + subMenu = starterRelay, "Starter Disable relay" + subMenu = fuelPump, "Fuel pump" + subMenu = fanSetting, "Fan" + subMenu = acSettings, "Air Conditioning" + subMenu = tachSettings, "Tachometer" + subMenu = malfunction, "Check engine light" + subMenu = statusLeds, "Status LEDs" + + menu = "Fuel" + # basic + subMenu = injectorConfig, "Injection configuration" + subMenu = injectionSettings, "Injection hardware", 0, {isInjectionEnabled == 1} + subMenu = cylinderBankSelect, "Cylinder bank selection", 0, {isInjectionEnabled == 1} + subMenu = injectorNonlinear, "Injector small-pulse correction", 0, {isInjectionEnabled == 1} + + groupMenu = "Cylinder fuel trims" + groupChildMenu = fuelTrimTbl1, "Fuel trim cyl 1" + groupChildMenu = fuelTrimTbl2, "Fuel trim cyl 2" + groupChildMenu = fuelTrimTbl3, "Fuel trim cyl 3" + groupChildMenu = fuelTrimTbl4, "Fuel trim cyl 4" + groupChildMenu = fuelTrimTbl5, "Fuel trim cyl 5" + groupChildMenu = fuelTrimTbl6, "Fuel trim cyl 6" + groupChildMenu = fuelTrimTbl7, "Fuel trim cyl 7" + groupChildMenu = fuelTrimTbl8, "Fuel trim cyl 8" + groupChildMenu = fuelTrimTbl9, "Fuel trim cyl 9" + groupChildMenu = fuelTrimTbl10, "Fuel trim cyl 10" + groupChildMenu = fuelTrimTbl11, "Fuel trim cyl 11" + groupChildMenu = fuelTrimTbl12, "Fuel trim cyl 12" + + subMenu = std_separator + + # Air mass model + subMenu = veTableDialog, "VE", 0, {isInjectionEnabled == 1} + subMenu = tChargeSettings, "Charge temperature estimation", 0, {isInjectionEnabled == 1} + subMenu = baroCorrTbl, "Barometric pressure correction", 0, {isInjectionEnabled == 1 && fuelAlgorithm == 3} + subMenu = mapEstimateTableTbl, "MAP estimate table", 0, { enableMapEstimationTableFallback } + subMenu = std_separator + + # Fuel model +#if LAMBDA + subMenu = lambdaTableTbl, "Target lambda", 0, {isInjectionEnabled == 1} +#else + subMenu = afrTableTbl, "Target AFR", 0, {isInjectionEnabled == 1} +#endif + subMenu = cltFuelCorrCurve, "CLT multiplier", 0, {isInjectionEnabled == 1} + subMenu = iatFuelCorrCurve, "IAT multiplier", 0, {isInjectionEnabled == 1} + subMenu = fuelClosedLoopDialog, "Closed loop fuel correction", 0, {isInjectionEnabled == 1} + subMenu = coastingFuelCutControl, "Deceleration fuel cutoff (DFCO)", 0, {isInjectionEnabled == 1} + subMenu = std_separator + + # Injector model + subMenu = injPhaseTableTbl, "Injection phase", 0, {isInjectionEnabled == 1} + subMenu = std_separator + + # Accel enrichment + subMenu = AccelEnrich, "Acceleration enrichment", 0, {isInjectionEnabled == 1} + subMenu = tpsTpsAccelTbl, "TPS/TPS acceleration extra fuel", 0, {isInjectionEnabled == 1} + + groupMenu = "Wall wetting AE" + groupChildMenu = wwTauCurves, "Evap time", 0, { complexWallModel != 0 } + groupChildMenu = wwBetaCurves, "Impact fraction", 0, { complexWallModel != 0 } + + menu = "Ignition" + subMenu = ignitionSettings, "Ignition settings" + subMenu = std_separator + + subMenu = dwellSettings, "Dwell", 0, {isIgnitionEnabled == 1} + subMenu = multisparkSettings, "Multispark", 0, {isIgnitionEnabled == 1} + subMenu = std_separator + + subMenu = ignitionTableTbl, "Ignition advance", 0, {isIgnitionEnabled} + + groupMenu = "Cylinder ign trims" + groupChildMenu = ignTrimTbl1, "Ignition trim cyl 1" + groupChildMenu = ignTrimTbl2, "Ignition trim cyl 2" + groupChildMenu = ignTrimTbl3, "Ignition trim cyl 3" + groupChildMenu = ignTrimTbl4, "Ignition trim cyl 4" + groupChildMenu = ignTrimTbl5, "Ignition trim cyl 5" + groupChildMenu = ignTrimTbl6, "Ignition trim cyl 6" + groupChildMenu = ignTrimTbl7, "Ignition trim cyl 7" + groupChildMenu = ignTrimTbl8, "Ignition trim cyl 8" + groupChildMenu = ignTrimTbl9, "Ignition trim cyl 9" + groupChildMenu = ignTrimTbl10, "Ignition trim cyl 10" + groupChildMenu = ignTrimTbl11, "Ignition trim cyl 11" + groupChildMenu = ignTrimTbl12, "Ignition trim cyl 12" + + subMenu = std_separator + + # corrections + subMenu = cltTimingCorrCurve, "CLT correction", 0, {isIgnitionEnabled == 1} + subMenu = ignitionIatCorrTableTbl, "IAT correction", 0, {isIgnitionEnabled == 1} + + menu = "&Cranking" + subMenu = crankingDialog, "Cranking settings" + subMenu = postCrankingEnrichment, "After-start enrichment" + subMenu = primingFuelPulsePanel, "Priming pulse" + subMenu = std_separator + + subMenu = crankingCltCurve, "Fuel CLT multiplier" + subMenu = crankingCltCurveE100, "Fuel CLT multiplier (Flex Fuel E85)", 0, { flexSensorPin != 0 && flexCranking } + subMenu = crankingDurationCurve, "Fuel duration multiplier" + subMenu = crankingTpsCurve, "Fuel TPS multiplier" + subMenu = std_separator + + subMenu = crankingAdvanceCurve, "Cranking ignition advance", 0, {useSeparateAdvanceForCranking == 1} + subMenu = std_separator + + subMenu = cltCrankingCurve, "Cranking IAC CLT multiplier", 0, {overrideCrankingIacSetting == 1} + + menu = "&Idle" + subMenu = idleSettings, "Idle settings" + subMenu = idlehw, "Idle hardware" + subMenu = std_separator + subMenu = cltIdleRPMCurve, "Target RPM" + subMenu = cltIdleCurve, "CLT multiplier" + subMenu = std_separator + subMenu = idleTimingPidCorrDialog, "Closed-loop idle timing" + subMenu = iacPidMultTbl, "IAC PID Multiplier", 0, {idleMode == 0 && useIacPidMultTable == 1} + subMenu = iacCoastingCurve, "Coasting IAC Position for Auto-Idle", 0, {useIacTableForCoasting == 1} + subMenu = std_separator + subMenu = idleVeTableTbl, "Idle VE", 0, {useSeparateVeForIdle == 1} + subMenu = idleAdvanceCurve, "Ignition advance", 0, {useSeparateAdvanceForIdle == 1} + + menu = "&View" + subMenu = knock_controllerDialog, "knock_controller" + subMenu = high_pressure_fuel_pumpDialog, "high_pressure_fuel_pump" + subMenu = injector_modelDialog, "injector_model" + subMenu = launch_control_stateDialog, "launch_control_state" + subMenu = boost_controlDialog, "boost_control" + subMenu = ac_controlDialog, "ac_control" + subMenu = fan_controlDialog, "fan_control" + subMenu = fuel_pump_controlDialog, "fuel_pump_control" + subMenu = main_relayDialog, "main_relay" + subMenu = engine_stateDialog, "engine_state" + subMenu = tps_accel_stateDialog, "tps_accel_state" + subMenu = trigger_centralDialog, "trigger_central" + subMenu = trigger_stateDialog, "trigger_state" + subMenu = wall_fuel_stateDialog, "wall_fuel_state" + subMenu = idle_stateDialog, "idle_state" + subMenu = ignition_stateDialog, "ignition_state" + subMenu = electronic_throttleDialog, "electronic_throttle" + + + menu = "&Advanced" + subMenu = ignitionCylExtra, "Cylinder offsets", 0 + subMenu = gearDetection, "Gear detection", 0 + + subMenu = std_separator + subMenu = boostDialog, "Boost control" + subMenu = boostOpenLoopDialog, "Boost control open loop", { isBoostControlEnabled } + subMenu = boostPidDialog, "Boost control PID", { isBoostControlEnabled && boostType == 1 } + subMenu = boostTargetDialog, "Boost control target", { isBoostControlEnabled && boostType == 1 } + subMenu = boostEtbPid, "ETB-style Wastegate Actuator", { etbFunctions1 == 4 || etbFunctions2 == 4 } + + subMenu = std_separator + subMenu = gppwm1, "General Purpose PWM 1" + subMenu = gppwm2, "General Purpose PWM 2" + subMenu = gppwm3, "General Purpose PWM 3" + subMenu = gppwm4, "General Purpose PWM 4" + + subMenu = std_separator + subMenu = etbDialog, "Electronic throttle body" + subMenu = etbTpsBiasCurve, "ETB bias curve (feed forward)" + subMenu = pedalToTpsTbl, "ETB pedal target" + + subMenu = std_separator + subMenu = vvtPidDialog, "VVT outputs and PID", { vvtMode1 != 0 } + subMenu = vvtTable1Tbl, "VVT intake target", { vvtMode1 != 0 } + subMenu = vvtTable2Tbl, "VVT exhaust target", { vvtMode2 != 0 } + + subMenu = std_separator + subMenu = auxInputsDialog, "Aux inputs" + subMenu = luaOutputs, "Lua Script PWM Outputs" + subMenu = scriptSetting, "Lua Script Settings" + + subMenu = std_separator + subMenu = scriptTable1TblSettings, "Script Table #1" + subMenu = scriptTable2TblSettings, "Script Table #2" + subMenu = scriptTable3TblSettings, "Script Table #3" + subMenu = scriptTable4TblSettings, "Script Table #4" + subMenu = scriptCurve1Settings, "Script Curve #1" + subMenu = scriptCurve2Settings, "Script Curve #2" + subMenu = scriptCurve3Settings, "Script Curve #3" + subMenu = scriptCurve4Settings, "Script Curve #4" + subMenu = scriptCurve5Settings, "Script Curve #5" + subMenu = scriptCurve6Settings, "Script Curve #6" + + subMenu = std_separator + subMenu = tcuControls, "Transmission Settings" + subMenu = gearControls, "Gear Selection Settings" + subMenu = inputSpeedSensor, "Input Speed Sensor" + subMenu = tcuSolenoidTableTbl, "Shift Solenoids" + subMenu = tccCurves, "TCC Lock/Unlock Speed" + subMenu = pcPerGearDialog, "Line Pressure Per Gear" + subMenu = pcPerShiftDialog, "Line Pressure Per Shift" + subMenu = 32Dialog, "3-2 Shift Solenoid Percent by Speed" + + menu = "&Sensors" + # Base analog input settings + subMenu = otherSensorInputs, "Misc sensors" + subMenu = analogInputSettings, "Analog input settings" + subMenu = std_separator + + # Thermistors + subMenu = cltSensor, "CLT sensor" + subMenu = iatSensor, "IAT sensor" + subMenu = auxTempSensor1Sensor, "AuxTemp1 sensor" + subMenu = auxTempSensor2Sensor, "AuxTemp2 sensor" + subMenu = std_separator + + # TPS/pedal + subMenu = tpsSensor, "TPS" + subMenu = pedalSensor, "Accelerator pedal" + subMenu = std_separator + + # MAP/Baro + subMenu = mapSettings, "MAP sensor" + subMenu = mapCurves, "MAP sampling" + subMenu = baroSettings, "Baro sensor" + subMenu = std_separator + + # MAF + subMenu = mafSettings, "MAF sensor" + subMenu = mafDecodingCurve, "MAF transfer function", 0, {mafAdcChannel != 0 } + subMenu = std_separator + + # O2 sensor(s) + subMenu = egoSettings, "EGO sensor" + subMenu = widebandConfig, "rusEFI Wideband Controller", 0, { canReadEnabled && canWriteEnabled } + subMenu = narrowToWideOxygenCurve, "Narrow to Wideband approximation" + subMenu = std_separator + + # Misc sensors + subMenu = speedSensor, "Vehicle speed sensor" + subMenu = oilPressureSensor, "Oil pressure" + subMenu = fuelPressureSensor, "Fuel pressure" + subMenu = fuelLevelDialog, "Fuel level sensor" + subMenu = egtInputs, "EGT" + subMenu = wastegateIdlePos, "Wastegate and idle position sensors" + subMenu = std_separator + + subMenu = auxLinearSensors, "Aux Linear Sensors" + + menu = "&Controller" + subMenu = ecuStimulator, "ECU stimulator" + subMenu = datalogSettings, "Datalogging" + subMenu = ioTest, "Bench test" + subMenu = injTest, "Injector test" + subMenu = engineTypeDialog, "Popular vehicles" + subMenu = std_separator + + subMenu = spiFunction, "SPI" + subMenu = monitoringSettings, "rusEFI console" + subMenu = std_separator + + subMenu = canBusMain, "CAN Bus Communication" + subMenu = sdCard, "SD Card Logger" + subMenu = connection, "Connection" + subMenu = tle8888, "TLE8888" + + subMenu = allPins1, "Full pinout 1/3" + subMenu = allPins2, "Full pinout 2/3" + subMenu = allPins3_1_and_2 "Full pinout 3/3" + subMenu = std_separator + + + # EXPERIMENTAL FEATURES + subMenu = mc33Dialog, "GDI Dreams" + subMenu = hpfpCamDialog, "HPFP Cam Configuration" + subMenu = hpfpPumpDialog, "HPFP Pump Configuration", {hpfpCamLobes != 0} + subMenu = hpfpTargetTable, "HPFP Target Pressure", {hpfpCamLobes != 0} + subMenu = hpfpCompensationTable, "HPFP Pump Compensation", {hpfpCamLobes != 0} + subMenu = std_separator + subMenu = vrThreshold, "VR Sensor Threshold" + subMenu = fancyHardwareDialog, "Fancy Hardware" + subMenu = parkingLot, "Experimental/Broken" + subMenu = rotaryDialog, "Rotary" + subMenu = std_separator + + subMenu = softwareKnock, "Software Knock" + subMenu = std_separator + + subMenu = smLaunchControl, "Launch Control" + subMenu = std_separator +# subMenu = smRollingLaunch, "Rolling Launch" +# subMenu = std_separator +# subMenu = antiLag, "Antilag Setup" +# subMenu = std_separator + + menu = "Help" + subMenu = helpGeneral, "rusEFI Info" + + +[ControllerCommands] +; commandName = command1, command2, commandn... +; command in standard ini format, a command name can be assigned to 1 to n commands that will be executed in order. +; This does not include any resultant protocol envelope data, only the response data itself. + +; WARNING!! These commands bypass TunerStudio's normal memory synchronization. If these commands +; alter mapped settings (Constant) memory in the controller, TunerStudio will have an out of sync condition +; and may create error messages. +; It is expected that these commands would not typically alter any ram mapped to a Constant. + +; +; see TS_IO_TEST_COMMAND in firmware code +; + +cmd_test_spk1 = "Z\x00\x12\x00\x01" +cmd_test_spk2 = "Z\x00\x12\x00\x02" +cmd_test_spk3 = "Z\x00\x12\x00\x03" +cmd_test_spk4 = "Z\x00\x12\x00\x04" +cmd_test_spk5 = "Z\x00\x12\x00\x05" +cmd_test_spk6 = "Z\x00\x12\x00\x06" +cmd_test_spk7 = "Z\x00\x12\x00\x07" +cmd_test_spk8 = "Z\x00\x12\x00\x08" +cmd_test_spk9 = "Z\x00\x12\x00\x09" +cmd_test_spk10 = "Z\x00\x12\x00\x0a" +cmd_test_spk11 = "Z\x00\x12\x00\x0b" +cmd_test_spk12 = "Z\x00\x12\x00\x0c" + +cmd_test_lua1 = "Z\x00\x21\x00\x01" +cmd_test_lua2 = "Z\x00\x21\x00\x02" +cmd_test_lua3 = "Z\x00\x21\x00\x03" +cmd_test_lua4 = "Z\x00\x21\x00\x04" +cmd_test_lua5 = "Z\x00\x21\x00\x05" +cmd_test_lua6 = "Z\x00\x21\x00\x06" +cmd_test_lua7 = "Z\x00\x21\x00\x07" +cmd_test_lua8 = "Z\x00\x21\x00\x08" + +cmd_test_debug_mode_vvt = "Z\x00\x00\x00\x07" + +cmd_test_inj1 = "Z\x00\x13\x00\x01" +cmd_test_inj2 = "Z\x00\x13\x00\x02" +cmd_test_inj3 = "Z\x00\x13\x00\x03" +cmd_test_inj4 = "Z\x00\x13\x00\x04" +cmd_test_inj5 = "Z\x00\x13\x00\x05" +cmd_test_inj6 = "Z\x00\x13\x00\x06" +cmd_test_inj7 = "Z\x00\x13\x00\x07" +cmd_test_inj8 = "Z\x00\x13\x00\x08" +cmd_test_inj9 = "Z\x00\x13\x00\x09" +cmd_test_inj10 = "Z\x00\x13\x00\x0a" +cmd_test_inj11 = "Z\x00\x13\x00\x0b" +cmd_test_inj12 = "Z\x00\x13\x00\x0c" + +cmd_test_sol1 = "Z\x00\x29\x00\x01" +cmd_test_sol2 = "Z\x00\x29\x00\x02" +cmd_test_sol3 = "Z\x00\x29\x00\x03" +cmd_test_sol4 = "Z\x00\x29\x00\x04" +cmd_test_sol5 = "Z\x00\x29\x00\x05" +cmd_test_sol6 = "Z\x00\x29\x00\x06" + +cmd_test_main_relay = "Z\x00\x16\x00\x00" +cmd_test_fuel_pump = "Z\x00\x16\x00\x01" +cmd_test_starter_relay = "Z\x00\x16\x00\x02" +cmd_test_starter_disable_relay = "Z\x00\x16\x00\x03" +cmd_test_ac_relay = "Z\x00\x16\x00\x06" +cmd_test_fan_1 = "Z\x00\x16\x00\x04" +cmd_test_fan_2 = "Z\x00\x16\x00\x05" +cmd_test_check_engine_light = "Z\x00\x16\x00\x07" +cmd_test_idle_valve = "Z\x00\x16\x00\x08" +cmd_test_second_idle_valve = "Z\x00\x16\x00\x0e" +cmd_test_hpfp_valve = "Z\x00\x16\x00\x09" + +cmd_calibrate_tps_1_closed = "Z\x00\x14\x00\x02" +cmd_calibrate_tps_1_wot = "Z\x00\x14\x00\x03" +cmd_calibrate_tps_2_closed = "Z\x00\x14\x00\x04" +cmd_calibrate_tps_2_wot = "Z\x00\x14\x00\x05" +cmd_calibrate_pedal_up = "Z\x00\x14\x00\x06" +cmd_calibrate_pedal_down = "Z\x00\x14\x00\x07" +cmd_tle8888_init = "Z\x00\x14\x00\x08" +cmd_write_config = "Z\x00\x14\x00\x0A" +cmd_etb_autotune = "Z\x00\x14\x00\x0C" +cmd_enable_self_stim = "Z\x00\x14\x00\x0D" +cmb_etb_auto_calibrate = "Z\x00\x14\x00\x0E" +cmd_disable_self_stim = "Z\x00\x14\x00\x0F" +cmd_etb_autotune_stop = "Z\x00\x14\x00\x10" +cmb_etb_auto_calibrate_2 = "Z\x00\x14\x00\x11" +cmd_wideband_firmare_update = "Z\x00\x14\x00\x12" +cmd_enable_ext_stim = "Z\x00\x14\x00\x13" +cmd_burn_without_flash = "Z\x00\x14\x00\x15" + +cmd_set_wideband_idx_0 = "Z\x00\x15\x00\x00" +cmd_set_wideband_idx_1 = "Z\x00\x15\x00\x01" + +cmd_cj125_calibrate = "Z\x00\x18\x00\x00" +cmd_call_from_pit = "Z\x00\x20\x34\x56" +cmd_stop_engine = "Z\x00\x79\x00\x00" + +; reboot ECU +cmd_reset_controller = "Z\x00\xbb\x00\x00" +; jump to DFU mode +cmd_dfu = "Z\x00\xba\x00\x00" + +; See 'executeTSCommand' in firmware source code + + +; MRE_MIATA_NB2_MAP = 11 +cmd_set_engine_type_microRusEFI_Miata_NB2_MAP = "Z\x00\x30\x00\x0b" + +cmd_set_engine_type_microRusEFI_VW_B6 = "Z\x00\x30\x00\x3e" +cmd_set_engine_type_Proteus_VW_B6 = "Z\x00\x30\x00\x27" +cmd_set_engine_type_microRusEFI_MRE_BODY_CONTROL = "Z\x00\x30\x00\x17" +cmd_set_engine_type_MRE_SECONDARY_CAN = "Z\x00\x30\x00\x04" + + +; MRE_MIATA_NA6 12 +cmd_set_engine_type_microRusEFI_Miata_NA6_VAF = "Z\x00\x30\x00\x0c" + +cmd_set_engine_type_microRusEFI_Miata_NA6_MAP = "Z\x00\x30\x00\x42" + +cmd_set_engine_type_microRusEFI_Miata_94_MAP = "Z\x00\x30\x00\x14" + + +; MRE_MIATA_NB2_MAF = 15 +cmd_set_engine_type_microRusEFI_Miata_NB2_MAF = "Z\x00\x30\x00\x0f" + +cmd_set_engine_type_MRE_SUBARU_EJ18 = "Z\x00\x30\x00\x25" + +cmd_set_engine_type_MRE_M111 = "Z\x00\x30\x00\x44" + +cmd_set_engine_type_hellen_NA6 = "Z\x00\x30\x00\x22" +cmd_set_engine_type_hellen_NA94 = "Z\x00\x30\x00\x50" + +cmd_set_engine_type_hellen_NB1_36 = "Z\x00\x30\x00\x5e" +cmd_set_engine_type_hellen_NB2_36 = "Z\x00\x30\x00\x56" + +cmd_set_engine_type_hellen_nissan_121_4 = "Z\x00\x30\x00\x54" +cmd_set_engine_type_hellen_nissan_121_6 = "Z\x00\x30\x00\x48" +cmd_set_engine_type_hellen_nissan_121_8 = "Z\x00\x30\x00\x55" + +cmd_set_engine_type_hellen_121_vag_4 = "Z\x00\x30\x00\x47" +cmd_set_engine_type_hellen_121_vag_5 = "Z\x00\x30\x00\x4d" +cmd_set_engine_type_hellen_121_vag_v6 = "Z\x00\x30\x00\x4e" +cmd_set_engine_type_hellen_121_vag_vr6 = "Z\x00\x30\x00\x4f" +cmd_set_engine_type_hellen_121_vag_8 = "Z\x00\x30\x00\x51" + +cmd_set_engine_type_hellen_128_merc_4 = "Z\x00\x30\x00\x24" +cmd_set_engine_type_hellen_128_merc_6 = "Z\x00\x30\x00\x58" +cmd_set_engine_type_hellen_128_merc_8 = "Z\x00\x30\x00\x59" + +cmd_set_engine_type_hellen_couple_bk1 = "Z\x00\x30\x00\x52" +cmd_set_engine_type_hellen_couple_bk2 = "Z\x00\x30\x00\x5f" + +; MIATA_NA6_MAP = 41 +cmd_set_engine_type_Frankenso_Miata_NA6_MAP = "Z\x00\x30\x00\x29" +; MIATA_NA6_VAF = 57 +cmd_set_engine_type_Frankenso_Miata_NA6_VAF = "Z\x00\x30\x00\x39" +; MAZDA_MIATA_2003 = 47 +cmd_set_engine_type_Frankenso_Miata_NB2 = "Z\x00\x30\x00\x2f" + +cmd_set_engine_type_Proteus_M73 = "Z\x00\x30\x00\x3f" +cmd_set_engine_type_PROTEUS_HONDA_ELEMENT_2003 = "Z\x00\x30\x00\x5a" +cmd_set_engine_type_PROTEUS_HONDA_OBD2A = "Z\x00\x30\x00\x5b" +cmd_set_engine_type_PROTEUS_MIATA_NB2 = "Z\x00\x30\x00\x43" +cmd_set_engine_type_Proteus_Miata_TCU = "Z\x00\x30\x00\x01" +cmd_set_engine_type_PROTEUS_LUA_DEMO = "Z\x00\x30\x00\x19" +cmd_set_engine_type_PROTEUS_HARLEY = "Z\x00\x30\x00\x06" + + +; ETB_BENCH_ENGINE = 58 +cmd_set_engine_type_etb_test = "Z\x00\x30\x00\x3A" +; ETB_BENCH_ENGINE = 59 +cmd_set_engine_type_8888_test = "Z\x00\x30\x00\x3B" +cmd_set_engine_type_default = "Z\x00\x31\x00\x00" + +[UserDefined] + +dialog = knock_controllerDialog, "knock_controller" + liveGraph = knock_controller_1_Graph, "Graph", South + graphLine = m_knockRetard + graphLine = m_knockThreshold + graphLine = m_knockCount + +indicatorPanel = high_pressure_fuel_pumpIndicatorPanel, 2 + indicator = {noValve}, "noValve No", "noValve Yes" + indicator = {angleAboveMin}, "angleAboveMin No", "angleAboveMin Yes" + indicator = {isHpfpInactive}, "isHpfpInactive No", "isHpfpInactive Yes" + +dialog = high_pressure_fuel_pumpDialog, "high_pressure_fuel_pump" + panel = high_pressure_fuel_pumpIndicatorPanel + liveGraph = high_pressure_fuel_pump_1_Graph, "Graph", South + graphLine = m_requested_pump + graphLine = fuel_requested_percent + graphLine = fuel_requested_percent_pi + graphLine = nextLobe + liveGraph = high_pressure_fuel_pump_2_Graph, "Graph", South + graphLine = nextStart + + +dialog = injector_modelDialog, "injector_model" + liveGraph = injector_model_1_Graph, "Graph", South + graphLine = m_deadtime + graphLine = pressureDelta + graphLine = pressureRatio + +indicatorPanel = launch_control_stateIndicatorPanel, 2 + indicator = {combinedConditions}, "combinedConditions No", "combinedConditions Yes" + indicator = {launchActivatePinState}, "launchActivatePinState No", "launchActivatePinState Yes" + indicator = {isLaunchCondition}, "isLaunchCondition No", "isLaunchCondition Yes" + indicator = {isSwitchActivated}, "isSwitchActivated No", "isSwitchActivated Yes" + indicator = {isClutchActivated}, "isClutchActivated No", "isClutchActivated Yes" + indicator = {isValidInputPin}, "isValidInputPin No", "isValidInputPin Yes" + indicator = {activateSwitchCondition}, "activateSwitchCondition No", "activateSwitchCondition Yes" + indicator = {rpmCondition}, "rpmCondition No", "rpmCondition Yes" + indicator = {speedCondition}, "speedCondition No", "speedCondition Yes" + indicator = {tpsCondition}, "tpsCondition No", "tpsCondition Yes" + +dialog = launch_control_stateDialog, "launch_control_state" + panel = launch_control_stateIndicatorPanel + liveGraph = launch_control_state_1_Graph, "Graph", South + graphLine = retardThresholdRpm + +indicatorPanel = boost_controlIndicatorPanel, 2 + indicator = {isTpsInvalid}, "isTpsInvalid No", "isTpsInvalid Yes" + indicator = {m_shouldResetPid}, "m_shouldResetPid No", "m_shouldResetPid Yes" + indicator = {isBelowClosedLoopThreshold}, "isBelowClosedLoopThreshold No", "isBelowClosedLoopThreshold Yes" + indicator = {isNotClosedLoop}, "isNotClosedLoop No", "isNotClosedLoop Yes" + indicator = {isZeroRpm}, "isZeroRpm No", "isZeroRpm Yes" + +dialog = boost_controlDialog, "boost_control" + panel = boost_controlIndicatorPanel + liveGraph = boost_control_1_Graph, "Graph", South + graphLine = openLoopPart + graphLine = closedLoopPart + +indicatorPanel = ac_controlIndicatorPanel, 2 + indicator = {engineTooSlow}, "engineTooSlow No", "engineTooSlow Yes" + indicator = {engineTooFast}, "engineTooFast No", "engineTooFast Yes" + indicator = {noClt}, "noClt No", "noClt Yes" + indicator = {engineTooHot}, "engineTooHot No", "engineTooHot Yes" + indicator = {tpsTooHigh}, "tpsTooHigh No", "tpsTooHigh Yes" + indicator = {m_acEnabled}, "m_acEnabled No", "m_acEnabled Yes" + indicator = {acButtonState}, "acButtonState No", "acButtonState Yes" + indicator = {isDisabledByLua}, "isDisabledByLua No", "isDisabledByLua Yes" + +dialog = ac_controlDialog, "ac_control" + panel = ac_controlIndicatorPanel + liveGraph = ac_control_1_Graph, "Graph", South + graphLine = latest_usage_ac_control + graphLine = acSwitchLastChangeTimeMs + +indicatorPanel = fan_controlIndicatorPanel, 2 + indicator = {cranking}, "cranking No", "cranking Yes" + indicator = {notRunning}, "notRunning No", "notRunning Yes" + indicator = {disabledWhileEngineStopped}, "disabledWhileEngineStopped No", "disabledWhileEngineStopped Yes" + indicator = {brokenClt}, "brokenClt No", "brokenClt Yes" + indicator = {enabledForAc}, "enabledForAc No", "enabledForAc Yes" + indicator = {hot}, "hot No", "hot Yes" + indicator = {cold}, "cold No", "cold Yes" + +dialog = fan_controlDialog, "fan_control" + panel = fan_controlIndicatorPanel + +indicatorPanel = fuel_pump_controlIndicatorPanel, 2 + indicator = {isPrime}, "isPrime No", "isPrime Yes" + indicator = {engineTurnedRecently}, "engineTurnedRecently No", "engineTurnedRecently Yes" + indicator = {isPumpOn}, "isPumpOn No", "isPumpOn Yes" + indicator = {ignitionOn}, "ignitionOn No", "ignitionOn Yes" + +dialog = fuel_pump_controlDialog, "fuel_pump_control" + panel = fuel_pump_controlIndicatorPanel + +indicatorPanel = main_relayIndicatorPanel, 2 + indicator = {isBenchTest}, "isBenchTest No", "isBenchTest Yes" + indicator = {hasIgnitionVoltage}, "hasIgnitionVoltage No", "hasIgnitionVoltage Yes" + indicator = {mainRelayState}, "mainRelayState No", "mainRelayState Yes" + indicator = {delayedShutoffRequested}, "delayedShutoffRequested No", "delayedShutoffRequested Yes" + +dialog = main_relayDialog, "main_relay" + panel = main_relayIndicatorPanel + +indicatorPanel = engine_stateIndicatorPanel, 2 + indicator = {sd_isTChargeAirModel}, "isTChargeAirModel No", "isTChargeAirModel Yes" + +dialog = engine_stateDialog, "engine_state" + panel = engine_stateIndicatorPanel + liveGraph = engine_state_1_Graph, "Graph", South + graphLine = sd_airMassInOneCylinder + graphLine = sd_tCharge + graphLine = sd_tChargeK + graphLine = sd_Tcharge_coff + liveGraph = engine_state_2_Graph, "Graph", South + graphLine = sd_airFlow + graphLine = targetAFR + graphLine = engineCycleDurationMs + graphLine = minRpmKcurrentTPS + liveGraph = engine_state_3_Graph, "Graph", South + graphLine = currentTpsAdc + graphLine = tpsVoltageMCU + graphLine = tpsVoltageBoard + graphLine = currentBaroCorrectedVE + liveGraph = engine_state_4_Graph, "Graph", South + graphLine = injectorFlowCorrection + graphLine = baroCorrection + graphLine = cranking_baseFuel + graphLine = cranking_coolantTemperatureCoefficient + liveGraph = engine_state_5_Graph, "Graph", South + graphLine = cranking_tpsCoefficient + graphLine = cranking_durationCoefficient + graphLine = cranking_fuel + graphLine = running_postCrankingFuelCorrection + liveGraph = engine_state_6_Graph, "Graph", South + graphLine = running_intakeTemperatureCoefficient + graphLine = running_coolantTemperatureCoefficient + graphLine = running_timeSinceCrankingInSecs + graphLine = running_injectorLag + liveGraph = engine_state_7_Graph, "Graph", South + graphLine = running_baseFuel + graphLine = running_fuel + graphLine = etbFeedForward + graphLine = targetFromTable + liveGraph = engine_state_8_Graph, "Graph", South + graphLine = sparkDwell + graphLine = dwellAngle + graphLine = cltTimingCorrection + +indicatorPanel = tps_accel_stateIndicatorPanel, 2 + indicator = {isAboveAccelThreshold}, "isAboveAccelThreshold No", "isAboveAccelThreshold Yes" + indicator = {isBelowDecelThreshold}, "isBelowDecelThreshold No", "isBelowDecelThreshold Yes" + indicator = {isTimeToResetAccumulator}, "isTimeToResetAccumulator No", "isTimeToResetAccumulator Yes" + indicator = {isFractionalEnrichment}, "isFractionalEnrichment No", "isFractionalEnrichment Yes" + indicator = {belowEpsilon}, "belowEpsilon No", "belowEpsilon Yes" + indicator = {tooShort}, "tooShort No", "tooShort Yes" + +dialog = tps_accel_stateDialog, "tps_accel_state" + panel = tps_accel_stateIndicatorPanel + liveGraph = tps_accel_state_1_Graph, "Graph", South + graphLine = tpsFrom + graphLine = tpsTo + graphLine = deltaTps + graphLine = extraFuel + liveGraph = tps_accel_state_2_Graph, "Graph", South + graphLine = valueFromTable + graphLine = fractionalInjFuel + graphLine = accumulatedValue + graphLine = maxExtraPerCycle + liveGraph = tps_accel_state_3_Graph, "Graph", South + graphLine = maxExtraPerPeriod + graphLine = maxInjectedPerPeriod + graphLine = cycleCnt + + +dialog = trigger_centralDialog, "trigger_central" + liveGraph = trigger_central_1_Graph, "Graph", South + graphLine = hwEventCounters1 + graphLine = hwEventCounters2 + graphLine = hwEventCounters3 + graphLine = hwEventCounters4 + liveGraph = trigger_central_2_Graph, "Graph", South + graphLine = hwEventCounters5 + graphLine = hwEventCounters6 + graphLine = vvtCamCounter + graphLine = mapVvt_MAP_AT_SPECIAL_POINT + liveGraph = trigger_central_3_Graph, "Graph", South + graphLine = mapVvt_MAP_AT_DIFF + graphLine = mapVvt_MAP_AT_CYCLE_COUNT + graphLine = mapVvt_map_peak + + +dialog = trigger_stateDialog, "trigger_state" + liveGraph = trigger_state_1_Graph, "Graph", South + graphLine = totalRevolutionCounter + graphLine = vvtSyncGapRatio + graphLine = vvtCurrentPosition + graphLine = triggerSyncGapRatio + liveGraph = trigger_state_2_Graph, "Graph", South + graphLine = triggerActualSyncGapRatio + graphLine = triggerStateIndex + graphLine = vvtCounter + graphLine = vvtSyncCounter + liveGraph = trigger_state_3_Graph, "Graph", South + graphLine = vvtStateIndex + + +dialog = wall_fuel_stateDialog, "wall_fuel_state" + liveGraph = wall_fuel_state_1_Graph, "Graph", South + graphLine = wallFuelCorrection + graphLine = wallFuel + +indicatorPanel = idle_stateIndicatorPanel, 2 + indicator = {mightResetPid}, "mightResetPid No", "mightResetPid Yes" + indicator = {shouldResetPid}, "shouldResetPid No", "shouldResetPid Yes" + indicator = {wasResetPid}, "wasResetPid No", "wasResetPid Yes" + indicator = {mustResetPid}, "mustResetPid No", "mustResetPid Yes" + indicator = {isCoasting}, "isCoasting No", "isCoasting Yes" + indicator = {useIacTableForCoasting}, "useIacTableForCoasting No", "useIacTableForCoasting Yes" + indicator = {notIdling}, "notIdling No", "notIdling Yes" + indicator = {needReset}, "needReset No", "needReset Yes" + indicator = {isInDeadZone}, "isInDeadZone No", "isInDeadZone Yes" + indicator = {isBlipping}, "isBlipping No", "isBlipping Yes" + indicator = {useClosedLoop}, "useClosedLoop No", "useClosedLoop Yes" + indicator = {badTps}, "badTps No", "badTps Yes" + indicator = {looksLikeRunning}, "looksLikeRunning No", "looksLikeRunning Yes" + indicator = {looksLikeCoasting}, "looksLikeCoasting No", "looksLikeCoasting Yes" + indicator = {looksLikeCrankToIdle}, "looksLikeCrankToIdle No", "looksLikeCrankToIdle Yes" + indicator = {useInstantRpmForIdle}, "useInstantRpmForIdle No", "useInstantRpmForIdle Yes" + indicator = {isVerboseIAC}, "isVerboseIAC No", "isVerboseIAC Yes" + +dialog = idle_stateDialog, "idle_state" + panel = idle_stateIndicatorPanel + liveGraph = idle_state_1_Graph, "Graph", South + graphLine = idleState + graphLine = currentIdlePosition + graphLine = baseIdlePosition + graphLine = iacByTpsTaper + liveGraph = idle_state_2_Graph, "Graph", South + graphLine = throttlePedalUpState + graphLine = targetRpmByClt + graphLine = targetRpmAcBump + + +dialog = ignition_stateDialog, "ignition_state" + liveGraph = ignition_state_1_Graph, "Graph", South + graphLine = baseDwell + graphLine = dwellVoltageCorrection + graphLine = luaTimingAdd + graphLine = luaTimingMult + + +dialog = electronic_throttleDialog, "electronic_throttle" + liveGraph = electronic_throttle_1_Graph, "Graph", South + graphLine = idlePosition + graphLine = trim + graphLine = luaAdjustment + + + + dialog = scriptTable1TblSettings, "", yAxis + field = "Name", scriptTableName1 + panel = scriptTable1Tbl + + dialog = scriptTable2TblSettings, "", yAxis + field = "Name", scriptTableName2 + panel = scriptTable2Tbl + + dialog = scriptTable3TblSettings, "", yAxis + field = "Name", scriptTableName3 + panel = scriptTable3Tbl + + dialog = scriptTable4TblSettings, "", yAxis + field = "Name", scriptTableName4 + panel = scriptTable4Tbl + + dialog = scriptCurve1Settings, "", yAxis + field = "Name", scriptCurveName1 + panel = scriptCurve1 + + dialog = scriptCurve2Settings, "", yAxis + field = "Name", scriptCurveName2 + panel = scriptCurve2 + + dialog = scriptCurve3Settings, "", yAxis + field = "Name", scriptCurveName3 + panel = scriptCurve3 + + dialog = scriptCurve4Settings, "", yAxis + field = "Name", scriptCurveName4 + panel = scriptCurve4 + + dialog = scriptCurve5Settings, "", yAxis + field = "Name", scriptCurveName5 + panel = scriptCurve5 + + dialog = scriptCurve6Settings, "", yAxis + field = "Name", scriptCurveName6 + panel = scriptCurve6 + + dialog = tChargeRpmTpsSettings, "RPM+TPS mode" + field = "We use these coefficients to approximate air/fuel charge" + field = "temperature based on CLT and IAT, depending on RPM and TPM" + field = "Low RPM/Low TPS", tChargeMinRpmMinTps + field = "Low RPM/High TPS", tChargeMinRpmMaxTps + field = "High RPM/Low TPS", tChargeMaxRpmMinTps + field = "High RPM/High TPS", tChargeMaxRpmMaxTps + + dialog = tChargeGeneralSettings, "" + field = "Mode", tChargeMode + field = "#These two parameters limit the estimate's rate of change" + field = "Increase rate limit", tChargeAirIncrLimit + field = "Decrease rate limit", tChargeAirDecrLimit + field = "" + + dialog = tChargeAirInterpSettings, "Airflow interpolation mode" + field = "Low flow coefficient", tChargeAirCoefMin + field = "High flow coefficient", tChargeAirCoefMax + field = "Max air flow", tChargeAirFlowMax + + dialog = tChargeSettings, "Charge temperature estimation" + panel = tChargeGeneralSettings + panel = tChargeRpmTpsSettings, { tChargeMode == 0} + panel = tChargeAirInterpSettings, { tChargeMode == 1} + panel = tchargeCurve, { tChargeMode == 2 } + + dialog = baseInjection, "General" + field = "Enabled", isInjectionEnabled + field = "Mode", injectionMode, {isInjectionEnabled == 1} + field = "#Batch injection with individual wiring" + field = "Individually wired Batch Fuel", twoWireBatchInjection, {isInjectionEnabled == 1 && injectionMode == 2 } + field = "Override VE table load axis", veOverrideMode, { isInjectionEnabled } + field = "Override AFR table load axis", afrOverrideMode, { isInjectionEnabled } + field = "Injection phase control mode", injectionTimingMode, { isInjectionEnabled } + + dialog = ignitionOutputs, "Ignition Outputs" + field = "Ignition Pin Mode", ignitionPinMode, {isIgnitionEnabled == 1} + 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 >= 2) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 2) || (firingOrder == 7) || (firingOrder == 9) || (firingOrder == 11) || (firingOrder == 12) || (firingOrder == 16) || (firingOrder == 19) || (firingOrder == 20) || (firingOrder == 23) || (firingOrder == 25) || (firingOrder == 29)))} + field = "Ignition Pin 3", ignitionPins3, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount >= 3) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 1) || (firingOrder == 3) || (firingOrder == 4) || (firingOrder == 5) || (firingOrder == 9) || (firingOrder == 13) || (firingOrder == 14) || (firingOrder == 15) || (firingOrder == 18) || (firingOrder == 20) || (firingOrder == 23) || (firingOrder == 25) || (firingOrder == 27) || (firingOrder == 28)))} + field = "Ignition Pin 4", ignitionPins4, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount >= 4) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 7) || (firingOrder == 12) || (firingOrder == 14) || (firingOrder == 16) || (firingOrder == 17) || (firingOrder == 22) || (firingOrder == 23) || (firingOrder == 25) || (firingOrder == 26) || (firingOrder == 27) || (firingOrder == 31)))} + field = "Ignition Pin 5", ignitionPins5, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount >= 5) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 4) || (firingOrder == 12) || (firingOrder == 15) || (firingOrder == 18) || (firingOrder == 23) || (firingOrder == 26) || (firingOrder == 30) || (firingOrder == 31)))} + field = "Ignition Pin 6", ignitionPins6, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount >= 6) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 13) || (firingOrder == 22) || (firingOrder == 23) || (firingOrder == 29) || (firingOrder == 30)))} + field = "Ignition Pin 7", ignitionPins7, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount >= 7) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 11) || (firingOrder == 15) || (firingOrder == 16) || (firingOrder == 19) || (firingOrder == 20) || (firingOrder == 22) || (firingOrder == 28)))} + field = "Ignition Pin 8", ignitionPins8, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount >= 8) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11) || (firingOrder == 16) || (firingOrder == 18) || (firingOrder == 19) || (firingOrder == 26) || (firingOrder == 28)))} + field = "Ignition Pin 9", ignitionPins9, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount >= 9) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 14) || (firingOrder == 15) || (firingOrder == 22)))} + field = "Ignition Pin 10", ignitionPins10, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount >= 10) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 14) || (firingOrder == 16) || (firingOrder == 18)))} + field = "Ignition Pin 11", ignitionPins11, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount >= 11) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 15)))} + field = "Ignition Pin 12", ignitionPins12, {isIgnitionEnabled == 1 && (ignitionMode != 0 && cylindersCount >= 12) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 18) || (firingOrder == 22)))} + + + dialog = ignitionBasic, "" + field = "Enabled", isIgnitionEnabled + field = "Mode", ignitionMode, {isIgnitionEnabled == 1} + field = "Individually wired Wasted Spark", twoWireBatchIgnition, {isIgnitionEnabled == 1 && ignitionMode == 2 } + field = "Override ignition table load axis", ignOverrideMode, {isIgnitionEnabled} + field = "#Use fixed timing while validating with a timing gun" + field = "Timing Mode", timingMode, {isIgnitionEnabled == 1} + field = "Fixed Timing", fixedTiming, {isIgnitionEnabled == 1 && timingMode == 1} + + dialog = ignitionSettings, "", xAxis + panel = ignitionBasic + panel = ignitionOutputs + + dialog = baseEngineConfig, "Engine Configuration" +; field = "Engine preset", engineType + field = "Number of cylinders", cylindersCount + field = "Displacement", displacement + field = "Firing order", firingOrder + field = "Vehicle weight", vehicleWeight + + dialog = engineMetadata, "Engine Metadata" + field = "#These metadata are used by rusEFI Online" + field = "Engine Make", engineMake + field = "Manufacturer Engine Code", engineCode + field = "Vehicle Name", vehicleName + field = "Compression Ratio", compressionRatio + field = "Forced Induction?", isForcedInduction + +; Engine->Trigger configuration + dialog = triggerConfiguration_settings, "Trigger Pattern" + topicHelp = "triggerHelp" + field = "Trigger type", trigger_type + field = "Total tooth count", trigger_customTotalToothCount, {trigger_type == 0}, {trigger_type == 0} + field = "Missing/skipped tooth count", trigger_customSkippedToothCount, {trigger_type == 0}, {trigger_type == 0} + + ; see also in firmware '[doesTriggerImplyOperationMode]' tag + field = "What kind of engine", twoStroke + field = "Skipped wheel location", skippedWheelOnCam, { twoStroke == 0 && (trigger_type == 8 || trigger_type == 9 || trigger_type == 17 || trigger_type == 18 || trigger_type == 23 || trigger_type == 48 || trigger_type == 69) } + field = "With VR sensors only rising edge has reliable position" + field = "use only rising edge", useOnlyRisingEdgeForTrigger + field = "!Reminder that 4-stroke cycle is 720 degrees" + field = "!For well-known trigger types use '0' trigger angle offset" + field = "Trigger Angle Advance", globalTriggerAngleOffset + + dialog = triggerConfiguration_gap, "Trigger Gap Override" + field = "!This is a pretty advanced feature for when you are debugging trigger synchronization" + field = "Override well known trigger gaps", overrideTriggerGaps + field = gapTrackingLengthOverride, gapTrackingLengthOverride, { overrideTriggerGaps == 1 } + field = "First gap from", triggerGapOverrideFrom1, { overrideTriggerGaps == 1 } + field = "First gap to", triggerGapOverrideTo1 , { overrideTriggerGaps == 1 } + + field = "Second gap from", triggerGapOverrideFrom2, { overrideTriggerGaps == 1 } + field = "Second gap to", triggerGapOverrideTo2, { overrideTriggerGaps == 1 } + + field = "Third gap from", triggerGapOverrideFrom3, { overrideTriggerGaps == 1 } + field = "Third gap to", triggerGapOverrideTo3, { overrideTriggerGaps == 1 } + + field = "Gap #4 from", triggerGapOverrideFrom4, { overrideTriggerGaps == 1 } + field = "Gap #4 to", triggerGapOverrideTo4, { overrideTriggerGaps == 1 } + field = "Gap #5 from", triggerGapOverrideFrom5, { overrideTriggerGaps == 1 } + field = "Gap #5 to", triggerGapOverrideTo5, { overrideTriggerGaps == 1 } + + dialog = triggerConfiguration_IO, "Advanced Trigger" + field = "!https://rusefi.com/s/vvt" +; todo: code generator to hard-code all triggers not requiring VVT? +; todo: https://github.com/rusefi/rusefi/issues/2077 + + field = "Cam mode (intake cams)", vvtMode1, {trigger_type != 3} + field = "Cam mode (exhaust cams)", vvtMode2, {trigger_type != 3} + field = "VVT sync edge", vvtCamSensorUseRise, {trigger_type != 3} + field = "#Set offset so VVT indicates 0 degrees in default position" + field = "VVT offset bank 1 intake", vvtOffsets1, { camInputs1 != 0 } + field = "VVT offset bank 1 exhaust", vvtOffsets2, { camInputs2 != 0 } + field = "VVT offset bank 2 intake", vvtOffsets3, { camInputs3 != 0 } + field = "VVT offset bank 2 exhaust", vvtOffsets4, { camInputs4 != 0 } + field = "Require CAM/VVT sync for ignition", isPhaseSyncRequiredForIgnition + field = "Maximum cam/VVT sync RPM", maxCamPhaseResolveRpm + field = "Print verbose VVT sync details to console",verboseVVTDecoding + field = "Print verbose trigger sync to console", verboseTriggerSynchDetails + field = "Do not print messages in case of sync error", silentTriggerError + field = "Enable noise filtering", useNoiselessTriggerDecoder, {trigger_type == 8 || trigger_type == 9} + + dialog = triggerInputs, "Trigger Inputs" + field = "#Cam is primary if you have cam sensor as part of trigger shape" + ; cam if + ; two-stroke, or + ; not crank trigger and ((vague trigger and cam choice) or not vague trigger) + field = "Cam Sensor (Primary channel)", triggerInputPins1, 1, { twoStroke == 1 || ( !(trigger_type == 5 || trigger_type == 10 || trigger_type == 20 || trigger_type == 26 || trigger_type == 27 || trigger_type == 39 || trigger_type == 46 || trigger_type == 53 || trigger_type == 55 || trigger_type == 57 || trigger_type == 62 || trigger_type == 70 || trigger_type == 71 || trigger_type == 74) && ( ( (trigger_type == 8 || trigger_type == 9 || trigger_type == 17 || trigger_type == 18 || trigger_type == 23 || trigger_type == 48 || trigger_type == 69) && skippedWheelOnCam) || !(trigger_type == 8 || trigger_type == 9 || trigger_type == 17 || trigger_type == 18 || trigger_type == 23 || trigger_type == 48 || trigger_type == 69) ) ) } + field = "Crank Sensor (Primary channel)", triggerInputPins1, 1, { !(twoStroke == 1 || ( !(trigger_type == 5 || trigger_type == 10 || trigger_type == 20 || trigger_type == 26 || trigger_type == 27 || trigger_type == 39 || trigger_type == 46 || trigger_type == 53 || trigger_type == 55 || trigger_type == 57 || trigger_type == 62 || trigger_type == 70 || trigger_type == 71 || trigger_type == 74) && ( ( (trigger_type == 8 || trigger_type == 9 || trigger_type == 17 || trigger_type == 18 || trigger_type == 23 || trigger_type == 48 || trigger_type == 69) && skippedWheelOnCam) || !(trigger_type == 8 || trigger_type == 9 || trigger_type == 17 || trigger_type == 18 || trigger_type == 23 || trigger_type == 48 || trigger_type == 69) ) )) } + + field = "Invert Primary", invertPrimaryTriggerSignal + field = "Secondary channel", triggerInputPins2, { triggerInputPins1 != 0 && (trigger_type == 1 || trigger_type == 2 || trigger_type == 3 || trigger_type == 4 || trigger_type == 11 || trigger_type == 12 || trigger_type == 13 || trigger_type == 15 || trigger_type == 16 || trigger_type == 19 || trigger_type == 21 || trigger_type == 25 || trigger_type == 28 || trigger_type == 29 || trigger_type == 31 || trigger_type == 34 || trigger_type == 35 || trigger_type == 36 || trigger_type == 37 || trigger_type == 40 || trigger_type == 49 || trigger_type == 50 || trigger_type == 53 || trigger_type == 54 || trigger_type == 63 || trigger_type == 64) } + field = "Invert Secondary", invertSecondaryTriggerSignal, { triggerInputPins2 != 0 && (trigger_type == 1 || trigger_type == 2 || trigger_type == 3 || trigger_type == 4 || trigger_type == 11 || trigger_type == 12 || trigger_type == 13 || trigger_type == 15 || trigger_type == 16 || trigger_type == 19 || trigger_type == 21 || trigger_type == 25 || trigger_type == 28 || trigger_type == 29 || trigger_type == 31 || trigger_type == 34 || trigger_type == 35 || trigger_type == 36 || trigger_type == 37 || trigger_type == 40 || trigger_type == 49 || trigger_type == 50 || trigger_type == 53 || trigger_type == 54 || trigger_type == 63 || trigger_type == 64) } + field = "#VVT or Cam for 60/2 goes below" + field = "#If your engine has no exhaust cam sensor, use intake cam inputs" + field = "Cam sensor bank 1 intake", camInputs1, { camInputs1 != 0 || (vvtMode1 != 0 ) } + field = "Cam sensor bank 1 exhaust", camInputs2, { camInputs2 != 0 || (vvtMode2 != 0 && camInputs1 != 0 ) } + field = "Cam sensor bank 2 intake", camInputs3, { camInputs3 != 0 || (vvtMode1 != 0 && camInputs1 != 0 ) } + field = "Cam sensor bank 2 exhaust", camInputs4, { camInputs4 != 0 || (vvtMode2 != 0 && camInputs2 != 0 ) } + field = "Invert cam inputs", invertCamVVTSignal, { camInputs1 != 0 } + + + dialog = triggerConfiguration + panel = triggerConfiguration_settings, {1}, { consumeObdSensors == 0 } + panel = triggerInputs, {1}, { consumeObdSensors == 0 } + field = "Display logic signals", displayLogicLevelsInEngineSniffer + +; Engine->Injection Settings + dialog = injChars, "Injector Settings", yAxis + field = "Injector Flow", injector_flow, {isInjectionEnabled == 1} + field = "Fuel rail pressure sensor", injectorPressureType, { isInjectionEnabled && (highPressureFuel_hwChannel || lowPressureFuel_hwChannel) } + field = "Injector flow compensation mode", injectorCompensationMode, { isInjectionEnabled } + field = "Injector reference pressure", fuelReferencePressure, { isInjectionEnabled && injectorCompensationMode != 0 } + + dialog = fuelParams, "Fuel characteristics", yAxis + field = "Stoichiometric ratio", stoichRatioPrimary, {isInjectionEnabled == 1} + field = "E100 stoichiometric ratio", stoichRatioSecondary, {isInjectionEnabled == 1 && flexSensorPin != 0 } + + dialog = injectorOutputSettings, "Injector Outputs", yAxis + field = "Use only first half of pins for batch mode" + field = "Injection Pin 1", injectionPins1, {isInjectionEnabled == 1} + field = "Injection Pin 2", injectionPins2, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 1} + field = "Injection Pin 3", injectionPins3, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 2} + field = "Injection Pin 4", injectionPins4, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 3} + field = "Injection Pin 5 ", injectionPins5, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 4} + field = "Injection Pin 6 ", injectionPins6, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 5} + field = "Injection Pin 7 ", injectionPins7, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 6} + field = "Injection Pin 8 ", injectionPins8, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 7} + field = "Injection Pin 9 ", injectionPins9, {isInjectionEnabled == 1 && cylindersCount > 8} + field = "Injection Pin 10 ", injectionPins10, {isInjectionEnabled == 1 && cylindersCount > 9} + field = "Injection Pin 11 ", injectionPins11, {isInjectionEnabled == 1 && cylindersCount > 10} + field = "Injection Pin 12 ", injectionPins12, {isInjectionEnabled == 1 && cylindersCount > 11} + field = "" + field = "injection Pin Mode", injectionPinMode, {isInjectionEnabled == 1} + + dialog = cylinderBankSelect, "Cylinder Banks", yAxis + field = "Cylinder 1", cylinderBankSelect1, {isInjectionEnabled == 1} + field = "Cylinder 2", cylinderBankSelect2, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 1} + field = "Cylinder 3", cylinderBankSelect3, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 2} + field = "Cylinder 4", cylinderBankSelect4, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 3} + field = "Cylinder 5 ", cylinderBankSelect5, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 4} + field = "Cylinder 6 ", cylinderBankSelect6, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 5} + field = "Cylinder 7 ", cylinderBankSelect7, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 6} + field = "Cylinder 8 ", cylinderBankSelect8, {isInjectionEnabled == 1 && injectionMode != 3 && cylindersCount > 7} + field = "Cylinder 9 ", cylinderBankSelect9, {isInjectionEnabled == 1 && cylindersCount > 8} + field = "Cylinder 10 ", cylinderBankSelect10, {isInjectionEnabled == 1 && cylindersCount > 9} + field = "Cylinder 11 ", cylinderBankSelect11, {isInjectionEnabled == 1 && cylindersCount > 10} + field = "Cylinder 12 ", cylinderBankSelect12, {isInjectionEnabled == 1 && cylindersCount > 11} + + dialog = injectorNonlinearPolynomial, "Polynomial Adder", yAxis + field = "Add nonlinearity below pulse", applyNonlinearBelowPulse + field = "constant", injectorCorrectionPolynomial1 + field = "x^1", injectorCorrectionPolynomial2 + field = "x^2", injectorCorrectionPolynomial3 + field = "x^3", injectorCorrectionPolynomial4 + field = "x^4", injectorCorrectionPolynomial5 + field = "x^5", injectorCorrectionPolynomial6 + field = "x^6", injectorCorrectionPolynomial7 + field = "x^7", injectorCorrectionPolynomial8 + + dialog = injectorNonlinear + field = "Small pulse correction mode", injectorNonlinearMode + panel = injectorNonlinearPolynomial, {1}, { injectorNonlinearMode != 0 } + + dialog = testLuaOut, "Lua Out Test" + commandButton = "Lua Out #1", cmd_test_lua1 + commandButton = "Lua Out #2", cmd_test_lua2 + commandButton = "Lua Out #3", cmd_test_lua3 + commandButton = "Lua Out #4", cmd_test_lua4 + commandButton = "Lua Out #5", cmd_test_lua5 + commandButton = "Lua Out #6", cmd_test_lua6 + commandButton = "Lua Out #7", cmd_test_lua7 + commandButton = "Lua Out #8", cmd_test_lua8 + + dialog = testInjectors, "Injector Test" + commandButton = "Injector #1", cmd_test_inj1 + commandButton = "Injector #2", cmd_test_inj2, { cylindersCount >= 2 } + commandButton = "Injector #3", cmd_test_inj3, { cylindersCount >= 3 } + commandButton = "Injector #4", cmd_test_inj4, { cylindersCount >= 4 } + commandButton = "Injector #5", cmd_test_inj5, { cylindersCount >= 5 } + commandButton = "Injector #6", cmd_test_inj6, { cylindersCount >= 6 } + commandButton = "Injector #7", cmd_test_inj7, { cylindersCount >= 7 } + commandButton = "Injector #8", cmd_test_inj8, { cylindersCount >= 8 } + commandButton = "Injector #9", cmd_test_inj9, { cylindersCount >= 9 } + commandButton = "Injector #10", cmd_test_inj10, { cylindersCount >= 10 } + commandButton = "Injector #11", cmd_test_inj11, { cylindersCount >= 11 } + commandButton = "Injector #12", cmd_test_inj12, { cylindersCount >= 12 } + + dialog = testSolenoids, "TCU Solenoid Test" + commandButton = "Solenoid #1", cmd_test_sol1 + commandButton = "Solenoid #2", cmd_test_sol2 + commandButton = "Solenoid #3", cmd_test_sol3 + commandButton = "Solenoid #4", cmd_test_sol4 + commandButton = "Solenoid #5", cmd_test_sol5 + commandButton = "Solenoid #6", cmd_test_sol6 + + dialog = testOther + field = "Count", benchTestCount + field = "On Time", benchTestOnTime + field = "Off Time", benchTestOffTime + panel = testSolenoids + + dialog = injectionSettingsEast, "", yAxis + panel = testInjectors + field = "" + + dialog = injectionSettingsWest, "", yAxis + panel = injectorOutputSettings + field = "" + + dialog = injectionSettings, "", xAxis + panel = injectionSettingsWest + panel = injectionSettingsEast + + dialog = injectorConfig, "", yAxis + topicHelp = "fuelHelp" + panel = baseInjection + panel = injChars + panel = fuelParams + panel = injectorsDeadTime + + dialog = ignitionCylExtra, "Cylinder offsets" + field = "Offset angle for each cylinder if you have an odd fire" + field = "engine, like a v-twin or some V6/V10 engines" + field = "#Positive numbers retard, negative numbers advance" + field = "Offset cyl 1", timing_offset_cylinder1 + field = "Offset cyl 2", timing_offset_cylinder2, {cylindersCount > 1} + field = "Offset cyl 3", timing_offset_cylinder3, {cylindersCount > 2} + field = "Offset cyl 4", timing_offset_cylinder4, {cylindersCount > 3} + field = "Offset cyl 5", timing_offset_cylinder5, {cylindersCount > 4} + field = "Offset cyl 6", timing_offset_cylinder6, {cylindersCount > 5} + field = "Offset cyl 7", timing_offset_cylinder7, {cylindersCount > 6} + field = "Offset cyl 8", timing_offset_cylinder8, {cylindersCount > 7} + field = "Offset cyl 9", timing_offset_cylinder9, {cylindersCount > 8} + field = "Offset cyl 10", timing_offset_cylinder10, {cylindersCount > 9} + field = "Offset cyl 11", timing_offset_cylinder11, {cylindersCount > 10} + field = "Offset cyl 12", timing_offset_cylinder12, {cylindersCount > 11} + + dialog = multisparkDwellParams, "Delay & Dwell" + field = "Spark duration", multisparkSparkDuration, {multisparkEnable} + field = "Subsequent spark dwell", multisparkDwell, {multisparkEnable} + + dialog = multisparkMain, "Configuration" + field = "Maximum engine speed", multisparkMaxRpm, {multisparkEnable} + field = "Fire sparks for this angle duration" multisparkMaxSparkingAngle, {multisparkEnable} + field = "Maximum extra spark count" multisparkMaxExtraSparkCount, {multisparkEnable} + + dialog = multisparkSettings, "Multispark" + field = "#WARNING! These settings have the potential to overheat ignition components" + field = "#and cause other nasty misbehavior. Use with care, at your own risk!" + field = "#Not recommended for use on distributor or wasted spark ignition systems." + field = "Enable multiple sparks", multisparkEnable + panel = multisparkMain + panel = multisparkDwellParams + + dialog = dwellSettings, "", yAxis + panel = dwellCorrection + panel = dwellVoltageCorrection + +; Sensors->AUX1 Thermistor Sensor Setting + dialog = auxTempSensor1Sensor, "aux1 Thermistor Settings" + field = "Input channel", auxTempSensor1_adcChannel + field = "Bias resistor", auxTempSensor1_bias_resistor, {auxTempSensor1_adcChannel != 0} + + 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 != 0} + field = "Resistance @ LT", auxTempSensor1_resistance_1, {auxTempSensor1_adcChannel != 0} + field = "" + field = "Middle temperature", auxTempSensor1_tempC_2, {auxTempSensor1_adcChannel != 0} + field = "Resistance @ MT", auxTempSensor1_resistance_2, {auxTempSensor1_adcChannel != 0} + field = "" + field = "Highest temperature", auxTempSensor1_tempC_3, {auxTempSensor1_adcChannel != 0} + field = "Resistance @ HT", auxTempSensor1_resistance_3, {auxTempSensor1_adcChannel != 0} + +; Sensors->AUX2 Thermistor Sensor Setting + dialog = auxTempSensor2Sensor, "aux2 Thermistor Settings" + field = "Input channel", auxTempSensor2_adcChannel + field = "Bias resistor", auxTempSensor2_bias_resistor, {auxTempSensor2_adcChannel != 0} + + 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 != 0} + field = "Resistance @ LT", auxTempSensor2_resistance_1, {auxTempSensor2_adcChannel != 0} + field = "" + field = "Middle temperature", auxTempSensor2_tempC_2, {auxTempSensor2_adcChannel != 0} + field = "Resistance @ MT", auxTempSensor2_resistance_2, {auxTempSensor2_adcChannel != 0} + field = "" + field = "Highest temperature", auxTempSensor2_tempC_3, {auxTempSensor2_adcChannel != 0} + field = "Resistance @ HT", auxTempSensor2_resistance_3, {auxTempSensor2_adcChannel != 0} + + dialog = tpsNum1, "Throttle Body #1" + field = "Primary sensor", tps1_1AdcChannel + field = "Primary min", tpsMin, {tps1_1AdcChannel != 0} + field = "Primary max", tpsMax, {tps1_1AdcChannel != 0} + field = "Secondary sensor", tps1_2AdcChannel, {tps1_1AdcChannel != 0} + field = "Secondary min", tps1SecondaryMin, {tps1_2AdcChannel != 0} + field = "Secondary max", tps1SecondaryMax, {tps1_2AdcChannel != 0} + commandButton = "Auto Calibrate ETB 1", cmb_etb_auto_calibrate, {tps1_2AdcChannel != 0 && throttlePedalPositionAdcChannel != 0} + + dialog = tpsNum2, "Throttle Body #2" + field = "Primary sensor", tps2_1AdcChannel + field = "Primary min", tps2Min, {tps2_1AdcChannel != 0} + field = "Primary max", tps2Max, {tps2_1AdcChannel != 0} + field = "Secondary sensor", tps2_2AdcChannel, {tps2_1AdcChannel != 0} + field = "Secondary min", tps2SecondaryMin, {tps2_2AdcChannel != 0} + field = "Secondary max", tps2SecondaryMax, {tps2_2AdcChannel != 0} + commandButton = "Auto Calibrate ETB 2", cmb_etb_auto_calibrate_2, {tps2_1AdcChannel != 0 && tps2_2AdcChannel != 0 && throttlePedalPositionAdcChannel != 0} + + dialog = tpsLimits, "TPS Limits" + field = "TPS minimum valid value", tpsErrorDetectionTooLow, {tps1_1AdcChannel != 0} + field = "TPS maximum valid value", tpsErrorDetectionTooHigh, {tps1_1AdcChannel != 0} + + dialog = tpsSensorLeft, "TPS" + panel = tpsLimits + panel = tpsNum1 + panel = tpsNum2 + + dialog = pedalSensorLeft, "Accelerator pedal" + field = "Accelerator position sensor", throttlePedalPositionAdcChannel + field = "Up voltage", throttlePedalUpVoltage + commandButton = "Grab Up", cmd_calibrate_pedal_up + field = "Down (WOT) voltage", throttlePedalWOTVoltage + commandButton = "Grab Down", cmd_calibrate_pedal_down + field = "Accelerator position 2nd sensor", throttlePedalPositionSecondAdcChannel + field = "Up voltage", throttlePedalSecondaryUpVoltage + field = "Down (WOT) voltage", throttlePedalSecondaryWOTVoltage + + dialog = pedalGauges + gauge = pedalPositionGauge + gauge = rawPpsPrimaryGauge + gauge = rawPpsSecondaryGauge + + dialog = tpsGauges + gauge = rawTps1PrimaryGauge + gauge = rawTps1SecondaryGauge + gauge = rawTps2PrimaryGauge + gauge = rawTps2SecondaryGauge + + dialog = pedalSensor, "Accelerator pedal", border + panel = pedalSensorLeft, West + panel = pedalGauges, East + + dialog = tpsSensor, "TPS", border + panel = tpsSensorLeft, West + panel = tpsGauges, East + + dialog = wastegatePosConfig, "Wastegate position sensor" + field = "Input pin", wastegatePositionSensor + field = "Min (fully closed, most boost)", wastegatePositionMin + field = "Max (fully open, least boost)", wastegatePositionMax + + dialog = idlePosConfig, "Idle position sensor" + field = "Input pin", idlePositionSensor + field = "Min (valve closed, low idle)", idlePositionMin + field = "Max (valve open, high idle)", idlePositionMax + + dialog = wastegateIdlePosLeft, "" + panel = wastegatePosConfig + panel = idlePosConfig + + dialog = wastegateIdlePosGauges, "" + gauge = rawWastegatePositionGauge, West + gauge = wastegatePosGauge, East + gauge = rawIdlePositionSensorGauge + gauge = idlePosSensGauge + + dialog = wastegateIdlePos, "", border + panel = wastegateIdlePosLeft, West + panel = wastegateIdlePosGauges, East + + dialog = mc33Dialog, "Low-Z injector control (MC33816)" + field = "SPI Chip Select", mc33816_cs + field = "SPI Device", mc33816spiDevice + field = "MC33816 rstb", mc33816_rstb + field = "MC33816 flag0", mc33816_flag0 + + field = "Boost voltage", mc33_hvolt + + field = "Boost current target", mc33_i_boost + field = "Max boost time (timeout)", mc33_t_max_boost + field = "Boost -> Peak Bypass Time", mc33_t_peak_off + + field = "Peak current target", mc33_i_peak + field = "Peak time", mc33_t_peak_tot + field = "Peak -> Hold Bypass Time", mc33_t_bypass + + field = "Hold current target", mc33_i_hold + field = "Hold off time", mc33_t_hold_off + field = "Maximum injection duration", mc33_t_hold_tot + + +; Sensor Inputs + dialog = otherSensorInputs, "Other Sensor Inputs" + field = "Clutch Down", clutchDownPin + field = "Clutch Down inverted", clutchDownPinInverted + field = "Clutch Down mode", clutchDownPinMode + + field = "Clutch Up", clutchUpPin + field = "Clutch Up inverted", clutchUpPinInverted + field = "Clutch Up mode", clutchUpPinMode + field = "Throttle Up switch", throttlePedalUpPin + field = "Brake pedal switch", brakePedalPin + field = "Flex fuel sensor", flexSensorPin + field = "Turbo Speed Sensor", turboSpeedSensorInputPin + field = "Turbo Speed Multiplier", turboSpeedSensorMultiplier + + dialog = fuelLevelDialog, "Fuel Level Sensor" + field = "Input channel", fuelLevelSensor + panel = fuelLevelCurve + + dialog = triggerInputComparator, "Built-in Comparator Settings (Kinetis-only)" + field = "Comparator Center Point Voltage", triggerCompCenterVolt + field = "Comparator hysteresis voltage (Min)", triggerCompHystMin + field = "Comparator hysteresis voltage (Max)", triggerCompHystMax + field = "VR-sensor saturation RPM", triggerCompSensorSatRpm + + dialog = joystickPanel, "Joystick" + field = "joustick center button", joystickCenterPin + field = "joustick button A", joystickAPin + field = "joustick button B", joystickBPin + field = "joustick button C", joystickCPin + field = "joustick button D", joystickDPin + +; +; allXXX sections allows a quick overview of used I/O in order to address conflicts mostly, not really to +; configure the features. +; + dialog = allPinsSensors, "Sensors" + field = "Throttle pedal Position Channel", throttlePedalPositionAdcChannel + field = "Throttle pedal Position #2", throttlePedalPositionSecondAdcChannel + field = "Primary input channel", triggerInputPins1 + field = "Secondary channel", triggerInputPins2 + field = "Cam Sync/VVT input", camInputs1 + field = "CLT ADC input", clt_adcChannel + field = "IAT ADC input", iat_adcChannel + field = "vBatt ADC input", vbattAdcChannel + field = "TPS1 ADC input", tps1_1AdcChannel + field = "TPS2 ADC input", tps2_1AdcChannel + field = "MAF ADC input", mafAdcChannel + field = "AFR ADC input", afr_hwChannel + field = "Baro ADC input", baroSensor_hwChannel + field = "MAP ADC input", map_sensor_hwChannel + field = "FuelLevelSensor", fuelLevelSensor + field = "Vehicle Speed Input pin", vehicleSpeedSensorInputPin + field = "clutchDownPin", clutchDownPin + field = "clutchUpPin", clutchUpPin + field = "brakePedalPin", brakePedalPin + field = "A/C Switch", acSwitch + field = "Aux Temperature #1", auxTempSensor1_adcChannel + field = "Aux Temperature #2", auxTempSensor2_adcChannel + field = "Aux Fast Analog", auxFastSensor1_adcChannel + + dialog = allTriggerDebug, "Trigger Debug" + field = "trigger 1 debug", triggerInputDebugPins1 + field = "trigger 2 debug", triggerInputDebugPins2 + field = "trigger 3 debug", triggerInputDebugPins3 + field = "cam 1 debug", camInputsDebug1 + field = "cam 2 debug", camInputsDebug2 + field = "cam 3 debug", camInputsDebug3 + field = "cam 4 debug", camInputsDebug4 + + dialog = allPinsMC33, "MC33816" + field = "Chip Select", mc33816_cs + field = rstb, mc33816_rstb + field = flag0, mc33816_flag0 + field = mc33816_driven, mc33816_driven + field = mc33816spiDevice, mc33816spiDevice + field = hpfpValcePin, hpfpValvePin + + dialog = allPins1_1 + field = "trigger stimulator pin #1", triggerSimulatorPins1 + field = "trigger stimulator pin #2", triggerSimulatorPins2 + field = "trigger stimulator pin #2", triggerSimulatorPins3 + field = "Warning Led", warningLedPin + field = "tle6240_cs", tle6240_cs + field = "tle6240 SPI", tle6240spiDevice + panel = joystickPanel + + dialog = allPins1_2 + field = "Tachometer output Pin", tachOutputPin + field = "O2 heater pin", o2heaterPin + field = "Idle Solenoid Pin", idle_solenoidPin + field = "Second Idle Solenoid Pin", secondSolenoidPin + field = "Idle Stepper Dir", idle_stepperDirectionPin + field = "Idle Stepper Step", idle_stepperStepPin + field = "Idle Stepper Enable", stepperEnablePin + field = "Fuel Pump Pin", fuelPumpPin + field = "ETB#1 Dir #1", etbIo1_directionPin1 + field = "ETB#1 Dir #2", etbIo1_directionPin2 + field = "ETB#1 Control", etbIo1_controlPin + field = "ETB#1 Disable", etbIo1_disablePin + field = "ETB#2 Dir #1", etbIo2_directionPin1 + field = "ETB#2 Dir #2", etbIo2_directionPin2 + field = "ETB#2 Control", etbIo2_controlPin + field = "ETB#2 Disable", etbIo2_disablePin + field = "SD CS Pin", sdCardCsPin + field = "MIL / Check Engine Pin", malfunctionIndicatorPin + field = "test557pin", test557pin + field = "Fan Pin", fanPin + field = "A/C Relay", acRelayPin + field = "Main Relay Pin", mainRelayPin + field = "Starter Relay Pin", starterRelayDisablePin + + dialog = allPins2_1 + field = "Injection Pin 1", injectionPins1 + field = "Injection Pin 2", injectionPins2 + field = "Injection Pin 3", injectionPins3 + field = "Injection Pin 4", injectionPins4 + field = "Injection Pin 5 ", injectionPins5 + field = "Injection Pin 6 ", injectionPins6 + field = "Injection Pin 7 ", injectionPins7 + field = "Injection Pin 8 ", injectionPins8 + field = "Injection Pin 9 ", injectionPins9 + field = "Injection Pin 10 ", injectionPins10 + field = "Injection Pin 11 ", injectionPins11 + field = "Injection Pin 12 ", injectionPins12 + field = auxSpeedSensorInputPin1, auxSpeedSensorInputPin1 + field = auxSpeedSensorInputPin2, auxSpeedSensorInputPin2 + + + dialog = allPins2_2 + field = "Ignition Pin 1", ignitionPins1 + field = "Ignition Pin 2", ignitionPins2 + field = "Ignition Pin 3", ignitionPins3 + field = "Ignition Pin 4", ignitionPins4 + field = "Ignition Pin 5", ignitionPins5 + field = "Ignition Pin 6", ignitionPins6 + field = "Ignition Pin 7", ignitionPins7 + field = "Ignition Pin 8", ignitionPins8 + field = "Ignition Pin 9", ignitionPins9 + field = "Ignition Pin 10", ignitionPins10 + field = "Ignition Pin 11", ignitionPins11 + field = "Ignition Pin 12", ignitionPins12 + + dialog = allPins2_3 + field = "LCD E pin", HD44780_e + field = "LCD D4 pin", HD44780_db4 + field = "LCD D5 pin", HD44780_db5 + field = "LCD D6 pin", HD44780_db6 + field = "LCD D7 pin", HD44780_db7 + field = "Debug Trigger Sync", debugTriggerSync + panel = allTriggerDebug + panel = allPinsMC33 + + dialog = allPins1_3 + field = "Aux ADC #1", auxAnalogInputs1 + field = "Aux ADC #2", auxAnalogInputs2 + field = "Aux ADC #3", auxAnalogInputs3 + field = "Aux ADC #4", auxAnalogInputs4 + field = "Aux ADC #5", auxAnalogInputs5 + field = "Aux ADC #6", auxAnalogInputs6 + field = "Aux ADC #7", auxAnalogInputs7 + field = "Aux ADC #8", auxAnalogInputs8 + field = "CAN RX pin", canRxPin + field = "CAN TX pin", canTxPin + field = "SPI1 MOSI", spi1mosiPin, { spi1mosiPin != 0 || is_enabled_spi_1 == 1} + field = "SPI1 MISO", spi1misoPin, { spi1misoPin != 0 || 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 = "DRV8860 CS", drv8860_cs + field = "DRV8860 CS Mode", drv8860_csPinMode + field = "DRV8860 MISO pin", drv8860_miso + field = "DRV8860 SPI", drv8860spiDevice + field = "comm status light", communicationLedPin + field = "running status light", runningLedPin + + + dialog = allPins3_1 + panel = allPinsSensors + + dialog = allPins3_2 + field = "servo#1", servoOutputPins1 + field = "servo#2", servoOutputPins2 + field = "servo#3", servoOutputPins3 + field = "servo#4", servoOutputPins4 + field = "servo#5", servoOutputPins5 + field = "VVT Pin #1", vvtPins1 + field = "VVT Pin #2", vvtPins2 + field = "VVT Pin #3", vvtPins3 + field = "VVT Pin #4", vvtPins4 + field = "Aux Valve #1", auxValves1 + field = "Aux Valve #2", auxValves2 + field = "TLE8888 Chip Select", tle8888_cs + field = "TLE 8888 spi", tle8888spiDevice + field = "L9779 Chip Select", l9779_cs + field = "AUX Serial TX", auxSerialTxPin + field = "AUX Serial RX", auxSerialRxPin + field = "Start/Stop Button", startStopButtonPin + field = "Upshift Pin", tcuUpshiftButtonPin + field = "Downshift Pin", tcuDownshiftButtonPin + + dialog = allPins3_1_and_2, "All Pins 3/3", xAxis + panel = allPins3_1 + panel = allPins3_2 + + dialog = allPins1_1_and_2, "", xAxis + panel = allPins1_1 + panel = allPins1_2 + + dialog = allPins1, "All Pins 1/3", xAxis + panel = allPins1_1_and_2 + panel = allPins1_3 + + dialog = allPins2_1_and_2, "", xAxis + panel = allPins2_1 + panel = allPins2_2 + + dialog = allPins2, "All Pins 2/3", xAxis + panel = allPins2_1_and_2 + panel = allPins2_3 + + +; Sensors->CLT sensor + dialog = clt_thermistor, "CLT sensor" + field = "Input channel", clt_adcChannel + field = "Bias resistor", clt_bias_resistor, {clt_adcChannel != 0} + + settingSelector = "Common CLT Sensors" + settingOption = "GM CLT", clt_tempC_1=0,clt_resistance_1=9240,clt_tempC_2=40,clt_resistance_2=1459,clt_tempC_3=100,clt_resistance_3=177,useLinearCltSensor=0 + settingOption = "Miata NA", clt_tempC_1=-20,clt_resistance_1=16150,clt_tempC_2=40,clt_resistance_2=1150,clt_tempC_3=80,clt_resistance_3=330,useLinearCltSensor=0 + settingOption = "Miata NB", clt_tempC_1=-10,clt_resistance_1=9000,clt_tempC_2=20,clt_resistance_2=2500,clt_tempC_3=80,clt_resistance_3=320,useLinearCltSensor=0 + settingOption = "Bosch Various", clt_tempC_1=0,clt_resistance_1=5896,clt_tempC_2=50,clt_resistance_2=834,clt_tempC_3=100,clt_resistance_3=187,useLinearCltSensor=0 + + field = "#Input three pairs of thermistor temperature and resistance." + field = "#Typical temperatures are -40 deg C, 0 deg C and 100 deg C" + field = "" + field = "Lowest temperature", clt_tempC_1, {clt_adcChannel != 0} + field = "Resistance @ LT", clt_resistance_1, {clt_adcChannel != 0} + field = "" + field = "Middle temperature", clt_tempC_2, {clt_adcChannel != 0} + field = "Resistance @ MT", clt_resistance_2, {clt_adcChannel != 0} + field = "" + field = "Highest temperature", clt_tempC_3, {clt_adcChannel != 0} + field = "Resistance @ HT", clt_resistance_3, {clt_adcChannel != 0} + field = "" + field = "Linear characteristic", useLinearCltSensor, {clt_adcChannel != 0} + + dialog = cltGauges + gauge = CLTGauge + gauge = rawCltGauge + + dialog = cltSensor, "CLT Sensor", border + panel = clt_thermistor, West + panel = cltGauges, East + +; Sensors->IAT sensor + dialog = iat_thermistor, "IAT sensor" + field = "Input channel", iat_adcChannel + field = "Bias resistor", iat_bias_resistor, {iat_adcChannel != 0} + + settingSelector = "Common IAT Sensors", {iat_adcChannel != 0} + settingOption = "GM IAT", iat_tempC_1=8.9,iat_resistance_1=7000,iat_tempC_2=30.6,iat_resistance_2=1930,iat_tempC_3=63.3,iat_resistance_3=560,useLinearIatSensor=0 + settingOption = "Miata NA/NB", iat_tempC_1=-20,iat_resistance_1=16150,iat_tempC_2=40,iat_resistance_2=1150,iat_tempC_3=80,iat_resistance_3=330,useLinearIatSensor=0 + settingOption = "Bosch Various", iat_tempC_1=-10,iat_resistance_1=9397,iat_tempC_2=30,iat_resistance_2=1707,iat_tempC_3=70,iat_resistance_3=436,useLinearIatSensor=0 + + field = "#Input three pairs of thermistor temperature and resistance." + field = "#Typical temperatures are -40 deg C, 0 deg C and 100 deg C" + field = "" + field = "Lowest temperature", iat_tempC_1, {iat_adcChannel != 0} + field = "Resistance @ LT", iat_resistance_1, {iat_adcChannel != 0} + field = "" + field = "Middle temperature", iat_tempC_2, {iat_adcChannel != 0} + field = "Resistance @ MT", iat_resistance_2, {iat_adcChannel != 0} + field = "" + field = "Highest temperature", iat_tempC_3, {iat_adcChannel != 0} + field = "Resistance @ HT", iat_resistance_3, {iat_adcChannel != 0} + field = "" + field = "Linear characteristic", useLinearIatSensor, {iat_adcChannel != 0} + + dialog = iatGauges + gauge = IATGauge + gauge = rawIatGauge + + dialog = iatSensor, "IAT Sensor", border + panel = iat_thermistor, West + panel = iatGauges, East + +; Sensors->Oil pressure sensor + dialog = oilp_settings, "Oil Pressure Sensor" + field = "Oil Pressure ADC input", oilPressure_hwChannel + field = "low voltage", oilPressure_v1, {oilPressure_hwChannel != 0} + field = "low pressure", oilPressure_value1, {oilPressure_hwChannel != 0} + field = "high voltage", oilPressure_v2, {oilPressure_hwChannel != 0} + field = "high pressure", oilPressure_value2, {oilPressure_hwChannel != 0} + + dialog = oilPressureGauges + gauge = OilPressGauge + gauge = rawOilPressureGauge + + dialog = oilPressureSensor, "", border + panel = oilp_settings, West + panel = oilPressureGauges, East + + dialog = fuelp_settings, "Fuel Pressure Sensor" + field = "Fuel low pressure ADC input", lowPressureFuel_hwChannel + field = "low voltage", lowPressureFuel_v1, {lowPressureFuel_hwChannel != 0} + field = "low pressure", lowPressureFuel_value1, {lowPressureFuel_hwChannel != 0} + field = "high voltage", lowPressureFuel_v2, {lowPressureFuel_hwChannel != 0} + field = "high pressure", lowPressureFuel_value2, {lowPressureFuel_hwChannel != 0} + + field = "Fuel high pressure ADC input", highPressureFuel_hwChannel + field = "low voltage", highPressureFuel_v1, {highPressureFuel_hwChannel != 0} + field = "low pressure", highPressureFuel_value1, {highPressureFuel_hwChannel != 0} + field = "high voltage", highPressureFuel_v2, {highPressureFuel_hwChannel != 0} + field = "high pressure", highPressureFuel_value2, {highPressureFuel_hwChannel != 0} + + dialog = fuelPressureGauges + gauge = lowFuelPressureGauge + gauge = rawLowFuelPressureGauge + gauge = highFuelPressureGauge + gauge = rawHighFuelPressureGauge + + dialog = fuelPressureSensor, "", border + panel = fuelp_settings, West + panel = fuelPressureGauges, East + + dialog = auxLinearSensor1, "Aux Linear Sensor #1" + field = "ADC input", auxLinear1_hwChannel + field = "Low voltage", auxLinear1_v1, {auxLinear1_hwChannel != 0} + field = "Low value", auxLinear1_value1, {auxLinear1_hwChannel != 0} + field = "High voltage", auxLinear1_v2, {auxLinear1_hwChannel != 0} + field = "High value", auxLinear1_value2, {auxLinear1_hwChannel != 0} + + dialog = auxLinearSensor2, "Aux Linear Sensor #2" + field = "ADC input", auxLinear2_hwChannel + field = "Low voltage", auxLinear2_v1, {auxLinear2_hwChannel != 0} + field = "Low value", auxLinear2_value1, {auxLinear2_hwChannel != 0} + field = "High voltage", auxLinear2_v2, {auxLinear2_hwChannel != 0} + field = "High value", auxLinear2_value2, {auxLinear2_hwChannel != 0} + + dialog = auxLinearSensors + panel = auxLinearSensor1 + panel = auxLinearSensor2 + +; Sensors->MAP sensor + dialog = mapSensorAnalog, "MAP sensor", yAxis + field = "MAP ADC input", map_sensor_hwChannel + field = "MAP type", map_sensor_type, { map_sensor_hwChannel != 0 } + field = "MAP value low point", map_sensor_lowValue, { map_sensor_hwChannel != 0 && map_sensor_type == 0 } + field = "MAP voltage low point", mapLowValueVoltage, { map_sensor_hwChannel != 0 && map_sensor_type == 0 } + field = "MAP value high point", map_sensor_highValue,{ map_sensor_hwChannel != 0 && map_sensor_type == 0 } + field = "MAP voltage high value", mapHighValueVoltage, { map_sensor_hwChannel != 0 && map_sensor_type == 0 } + + dialog = mapCommon, "MAP common settings" + field = "Low value threshold", mapErrorDetectionTooLow + field = "High value threshold", mapErrorDetectionTooHigh + field = "" + field = "Measure Map Only In One Cylinder", measureMapOnlyInOneCylinder + field = "Cylinder count to sample MAP", mapMinBufferLength + + dialog = mapSettings, "", yAxis + panel = mapCommon + panel = mapSensorAnalog + + dialog = baroSettings, "Baro sensor" + field = "Baro ADC input", baroSensor_hwChannel + field = "Low Value", baroSensor_lowValue, {baroSensor_hwChannel != 0 || lps25BaroSensorScl != 0 } + field = "High Value", baroSensor_highValue, {baroSensor_hwChannel != 0 || lps25BaroSensorScl != 0 } + field = "Type", baroSensor_type, {baroSensor_hwChannel != 0 || lps25BaroSensorScl != 0 } + field = "LPS2x Baro SCL", lps25BaroSensorScl, { baroSensor_hwChannel == 0} + field = "LPS2x Baro SDA", lps25BaroSensorSda, { baroSensor_hwChannel == 0} + + dialog = mapCurves, "MAP sampling", yAxis + field = "isMapAveragingEnabled", isMapAveragingEnabled + panel = map_samplingAngleCurve + panel = map_samplingWindowCurve + + dialog = mafSettings, "MAF sensor", yAxis + field = "MAF ADC input", mafAdcChannel + +; Sensors->EGO sensor + dialog = egoSettings_sensor, "EGO sensor" + field = "Type", afr_type +; todo: only use these values for custom! + field = "low voltage", afr_v1 + field = "low value", afr_value1 + field = "high voltage", afr_v2 + field = "high value", afr_value2 + field = "Correction", egoValueShift + + dialog = egoSettings_IO, "EGO Sensor I/O" + field = "Input channel", afr_hwChannel + field = "Heater pin", o2heaterPin + + dialog = egoSettings, "", yAxis + field = "Enable CAN Wideband", enableAemXSeries, { canReadEnabled } + field = "Enable Innovate LC-2 Serial", enableInnovateLC2, { auxSerialRxPin && auxSerialTxPin } + panel = egoSettings_IO + panel = egoSettings_sensor, {afr_hwChannel != 0 && enableAemXSeries == 0 && !auxSerialRxPin && !auxSerialTxPin} + +; Engine->EGT inputs + dialog = egtInputs, "EGT inputs" + field = "SPI", max31855spiDevice + field = "CS #1", max31855_cs1 + field = "CS #2", max31855_cs2 + field = "CS #3", max31855_cs3 + field = "CS #4", max31855_cs4 + field = "CS #5", max31855_cs5 + field = "CS #6", max31855_cs6 + field = "CS #7", max31855_cs7 + field = "CS #8", max31855_cs8 + +; Engine->idle Settings + dialog = idleSolenoid, "Solenoid" + field = "Idle Solenoid Pin Mode", idle_solenoidPinMode, !useStepperIdle + field = "Idle Solenoid Pin", idle_solenoidPin, !useStepperIdle + field = "Second Idle Solenoid Pin", secondSolenoidPin, { !useStepperIdle && isDoubleSolenoidIdle } + field = "Idle Solenoid Frequency", idle_solenoidFrequency, !useStepperIdle + + dialog = etbHbridgeHardware, "ETB H-Bridge Hardware" + field = "Two-wire mode", etb_use_two_wires + field = "No1 Direction #1", etbIo1_directionPin1 + field = "No1 Direction #2", etbIo1_directionPin2 + field = "No1 Control", etbIo1_controlPin + field = "No1 Disable", etbIo1_disablePin + field = "No2 Direction #1", etbIo2_directionPin1 + field = "No2 Direction #2", etbIo2_directionPin2 + field = "No2 Control", etbIo2_controlPin + field = "No2 Disable", etbIo2_disablePin + + dialog = stepperHbridgeHardware, "Stepper H-Bridge Hardware" + topicHelp = "stepperHbridgeHardwareHelp" + field = "Inverted driver pins", stepperDcInvertedPins + field = "No1 Direction #1", stepperDcIo1_directionPin1 + field = "No1 Direction #2", stepperDcIo1_directionPin2 + field = "No1 Disable", stepperDcIo1_disablePin + field = "No2 Direction #1", stepperDcIo2_directionPin1 + field = "No2 Direction #2", stepperDcIo2_directionPin2 + field = "No2 Disable", stepperDcIo2_disablePin + + dialog = idleStepperHw, "Stepper Controller Hardware" + topicHelp = "idleStepperHwHelp" + field = "Idle Stepper Step Pin", idle_stepperStepPin + field = "Idle Stepper Dir Pin", idle_stepperDirectionPin + field = "Idle Stepper Dir Pin Mode", stepperDirectionPinMode + field = "Idle Stepper Enable Pin", stepperEnablePin + field = "Idle Stepper Enable Pin Mode", stepperEnablePinMode + + dialog = stepperDirectDriveHardware, "Stepper Direct-Drive Hardware" + topicHelp = "stepperDirectDriveHardwareHelp" + field = "Stepper A+", stepper_raw_output1 + field = "Stepper A-", stepper_raw_output2 + field = "Stepper B+", stepper_raw_output3 + field = "Stepper B-", stepper_raw_output4 + + dialog = idleStepperHwType, "" + panel = idleStepperHw, { useStepperIdle && !useHbridgesToDriveIdleStepper && !useRawOutputToDriveIdleStepper } + panel = stepperHbridgeHardware, { useStepperIdle && useHbridgesToDriveIdleStepper && !useRawOutputToDriveIdleStepper } + panel = stepperDirectDriveHardware, { useStepperIdle && !useHbridgesToDriveIdleStepper && useRawOutputToDriveIdleStepper } + + dialog = idleStepperGeneral, "" + field = "Drive stepper with dual H bridges", useHbridgesToDriveIdleStepper, useStepperIdle + field = "Drive stepper with PushPull outputs", useRawOutputToDriveIdleStepper, { useStepperIdle && !useHbridgesToDriveIdleStepper } + field = "Stepper reaction time", idleStepperReactionTime, useStepperIdle + field = "Stepper total steps", idleStepperTotalSteps, useStepperIdle + field = "Stepper parking extra steps, %", stepperParkingExtraSteps, useStepperIdle + field = "Force parking every restart", stepperForceParkingEveryRestart, useStepperIdle + + dialog = idleStepperMicro, "Micro-Stepping" + field = "Stepping Mode", stepperNumMicroSteps, useHbridgesToDriveIdleStepper + field = "Min. Duty Cycle", stepperMinDutyCycle, { useHbridgesToDriveIdleStepper && stepperNumMicroSteps > 1 } + field = "Max. Duty Cycle", stepperMaxDutyCycle, { useHbridgesToDriveIdleStepper && stepperNumMicroSteps > 1 } + + dialog = idleStepper, "Stepper" + panel = idleStepperGeneral + panel = idleStepperHwType + panel = idleStepperMicro + + dialog = idleHwType, "Idle Valve Hardware", yAxis + panel = idleSolenoid + panel = idleStepper + + dialog = idlehw, "", yAxis + field = "!ECU reboot needed to apply these settings" + field = "Use Stepper", useStepperIdle + field = "Double Solenoid Mode", isDoubleSolenoidIdle + field = "Use electronic throttle for idle", useETBforIdleControl, { throttlePedalPositionAdcChannel != 0 } + field = "Electronic throttle idle range", etbIdleThrottleRange, { useETBforIdleControl == 1 } + panel = idleHwType + + dialog = idlePidSettings, "Closed Loop Idle" + field = "P-factor", idleRpmPid_pFactor + field = "I-factor", idleRpmPid_iFactor + field = "derivativeFilterLoss", idle_derivativeFilterLoss + field = "antiwindupFreq", idle_antiwindupFreq + field = "D-factor", idleRpmPid_dFactor + field = "Offset", idleRpmPid_offset + field = "Min", idleRpmPid_minValue + field = "Max", idleRpmPid_maxValue + field = "iTerm Min", idlerpmpid_iTermMin + field = "iTerm Max", idlerpmpid_iTermMax + field = "PID Extra for low RPM", pidExtraForLowRpm + field = idleIncrementalPidCic, idleIncrementalPidCic + field = "use Cic Pid", useCicPidForIdle + field = "Use IAC PID Multiplier Table", useIacPidMultTable + + dialog = idleOpenLoop, "Open Loop Idle" + slider = "Open loop base position", manIdlePosition, horizontal + field = "A/C adder", acIdleExtraOffset + field = "A/C target adder", acIdleRpmBump + field = "Fan #1 adder", fan1ExtraIdle + field = "Fan #2 adder", fan2ExtraIdle + field = "Extra idle air if throttle pressed", iacByTpsTaper + + dialog = idleGating, "Idle Detection Thresholds" + field = "TPS threshold", idlePidDeactivationTpsThreshold + field = "RPM upper limit", idlePidRpmUpperLimit + field = "RPM deadzone", idlePidRpmDeadZone + field = "Max vehicle speed", maxIdleVss + + dialog = idleExtra, "Extra Idle Features" + field = "Use idle ignition table", useSeparateAdvanceForIdle + field = "Use idle VE table", useSeparateVeForIdle + field = "Use idle tables for cranking taper", useSeparateIdleTablesForCrankingTaper + field = "Use coasting idle table", useIacTableForCoasting, {idleMode == 0} + field = useInstantRpmForIdle, useInstantRpmForIdle + field = "Detailed status in console", isVerboseIAC + + dialog = idleSettings, "", yAxis + field = "Idle control mode", idleMode + + field = "! Solenoid idle control is disabled at zero RPM" + +; gating applies both to open loop and closed loop! + panel = idleGating +; closed loop mode is an addition on top of open loop, so idleOpenLoop stays open even when closed loop is selected + panel = idleOpenLoop + panel = idlePidSettings, { idleMode == 0 } + panel = idleExtra + + dialog = idleTimingPidCorrDialog, "", yAxis + field = "" + field = "Enable closed loop idle ignition timing", useIdleTimingPidControl + field = "RPM deadzone", idleTimingPidDeadZone + field = "" + field = "#Gain is in degrees advance per rpm away from target" + field = "#A good starting point is 0.1 = 10 deg per 100 rpm" + field = "Proportional gain", idleTimingPid_pFactor, {useIdleTimingPidControl == 1} + field = "Derivative gain", idleTimingPid_dFactor, {useIdleTimingPidControl == 1} + field = "" + field = "Min adjustment (retard)", idleTimingPid_minValue, {useIdleTimingPidControl == 1} + field = "Max adjustment (advance)", idleTimingPid_maxValue, {useIdleTimingPidControl == 1} + field = "" + field = "#Use debug mode 'Timing' to view idle timing adjustment" + +; Engine->Fan Settings + dialog = fan1Settings, "Fan 1" + field = "Pin", fanPin + field = "Pin mode", fanPinMode + field = "On temperature", fanOnTemperature + field = "Off temperature", fanOffTemperature + field = "Enable with AC", enableFan1WithAc + field = "Disable when engine stopped", disableFan1WhenStopped + + dialog = fan2Settings, "Fan 2" + field = "Pin", fan2Pin + field = "Pin mode", fan2PinMode + field = "On temperature", fan2OnTemperature + field = "Off temperature", fan2OffTemperature + field = "Enable with AC", enableFan2WithAc + field = "Disable when engine stopped", disableFan2WhenStopped + + dialog = fanTest, "", xAxis + commandButton = "Test Fan 1", cmd_test_fan_1 + commandButton = "Test Fan 2", cmd_test_fan_2 + + indicatorPanel = fanIndicators, 2 + indicator = { isFanOn }, "fan 1 off", "fan 1 on", white, black, green, black + indicator = { isFan2On }, "fan 2 off", "fan 2 on", white, black, green, black + + dialog = acSettingsWest, "A/C Settings" + field = "A/C switch", acSwitch + field = "A/C switch mode", acSwitchMode + field = "A/C Relay", acRelayPin + field = "A/C Relay Mode", acRelayPinMode + field = "Max RPM", maxAcRpm + field = "Max CLT", maxAcClt + field = "Max TPS", maxAcTps + + dialog = acSettings, "", border + panel = acSettingsWest, West + panel = ac_controlIndicatorPanel, East + + dialog = fanSetting, "Fan Settings" + panel = fan1Settings + panel = fan2Settings + panel = fanTest + panel = fanIndicators + + dialog = fuelPump, "Fuel Pump" + field = "Pin", fuelPumpPin + field = "Pin mode", fuelPumpPinMode + field = "Prime duration", startUpFuelPumpDuration + +; Controller->Actuator Outputs + dialog = mainRelayDialog, "Main relay output" + field = "Pin", mainRelayPin + field = "Pin mode", mainRelayPinMode + + dialog = starterRelay, "Starter relay output" + field = "Pin", starterRelayDisablePin + field = "Pin mode", starterRelayDisablePinMode + + dialog = statusLeds, "Status LEDs" + field = "Running status LED", runningLedPin + field = "TS communication status LED", communicationLedPin + field = "Warning LED", warningLedPin + field = "Trigger error LED", triggerErrorPin + field = "Debug Trigger Sync", debugTriggerSync + +; Engine->MIL Settings + dialog = malfunction, "Check Engine Settings" + field = "Pin", malfunctionIndicatorPin + field = "Pin mode", malfunctionIndicatorPinMode + field = "Warning Period", warningPeriod + + dialog = softwareKnockCfg, "Configuration" + field = "Enable", enableSoftwareKnock + field = "Cylinder Bore", cylinderBore + field = "Knock filter frequency", knockBandCustom, {enableSoftwareKnock} + field = "knockDetectionWindowStart",knockDetectionWindowStart, {enableSoftwareKnock} + field = "knockSamplingDuration", knockSamplingDuration, {enableSoftwareKnock} + field = knockRetardAggression, knockRetardAggression + field = knockRetardReapplyRate, knockRetardReapplyRate + field = knockRetardMaximum, knockRetardMaximum + + field = "" + field = "Select the nearest sensor for each cylinder" + field = "Cylinder 1", knockBankCyl1, {enableSoftwareKnock} + field = "Cylinder 2", knockBankCyl2, {enableSoftwareKnock && cylindersCount >= 2} + field = "Cylinder 3", knockBankCyl3, {enableSoftwareKnock && cylindersCount >= 3} + field = "Cylinder 4", knockBankCyl4, {enableSoftwareKnock && cylindersCount >= 4} + field = "Cylinder 5", knockBankCyl5, {enableSoftwareKnock && cylindersCount >= 5} + field = "Cylinder 6", knockBankCyl6, {enableSoftwareKnock && cylindersCount >= 6} + field = "Cylinder 7", knockBankCyl7, {enableSoftwareKnock && cylindersCount >= 7} + field = "Cylinder 8", knockBankCyl8, {enableSoftwareKnock && cylindersCount >= 8} + field = "Cylinder 9", knockBankCyl9, {enableSoftwareKnock && cylindersCount >= 9} + field = "Cylinder 10", knockBankCyl10, {enableSoftwareKnock && cylindersCount >= 10} + field = "Cylinder 11", knockBankCyl11, {enableSoftwareKnock && cylindersCount >= 11} + field = "Cylinder 12", knockBankCyl12, {enableSoftwareKnock && cylindersCount >= 12} + + dialog = softwareKnock, "Software Knock", border + panel = softwareKnockCfg, West + panel = knockThresholdCurve, Center + +; Engine->hip9011 Settings + dialog = hipFunction, "HIP9011 Settings (knock decoder)" + field = "Enabled", isHip9011Enabled + field = "!ECU reboot needed to apply these settings" + field = "IntHold pin (hip9011 input)", hip9011IntHoldPin, {isHip9011Enabled == 1} + field = "IntHold pin (hip9011 input) mode", hip9011IntHoldPinMode, {isHip9011Enabled == 1} + field = "ChipSelect pin", hip9011CsPin, {isHip9011Enabled == 1} + field = "ChipSelect mode", hip9011CsPinMode, {isHip9011Enabled == 1} + field = "hip Output/stm input", hipOutputChannel, {isHip9011Enabled == 1} + field = "prescaler & SDO", hip9011PrescalerAndSDO, {isHip9011Enabled == 1} + field = "knockDetectionWindowStart", knockDetectionWindowStart, {isHip9011Enabled == 1} + field = "knockDetectionWindowEnd", knockDetectionWindowEnd, {isHip9011Enabled == 1} + field = "cylinder bore (mm)", cylinderBore, {isHip9011Enabled == 1} + field = "Band Freq override", knockBandCustom, {isHip9011Enabled == 1} + field = "SPI device", hip9011SpiDevice, {isHip9011Enabled == 1} + panel = knockThresholdCurve + +; Engine->cj125 Settings + dialog = cj125Function, "CJ125 Settings (wbo decoder)" + field = "Enabled", isCJ125Enabled + commandButton = "Calibrate", cmd_cj125_calibrate + field = "Using 4.9 sensor?", cj125isLsu49 + field = "!ECU reboot needed to apply these settings" + field = "ChipSelect pin", cj125CsPin, {isCJ125Enabled == 1} + field = "ChipSelect mode", cj125CsPinMode, {isCJ125Enabled == 1} + field = "!See also 'Controller-SPI setting'" + field = "SPI device", cj125SpiDevice + field = "Heater pin", wboHeaterPin, {isCJ125Enabled == 1} + field = "UA input", cj125ua, {isCJ125Enabled == 1} + field = "UR input", cj125ur, {isCJ125Enabled == 1} + field = "Is UA input divided?" cj125isUaDivided, {isCJ125Enabled == 1} + field = "Is UR input divided?" cj125isUrDivided, {isCJ125Enabled == 1} + + dialog = spiFunction, "SPI settings" + field = "!ECU reboot needed to apply these settings" + field = "SPI1 enable", is_enabled_spi_1 + field = "SPI1 MOSI", spi1mosiPin, {is_enabled_spi_1 == 1} + field = "SPI1mosi mode", spi1MosiMode, {is_enabled_spi_1 == 1} + field = "SPI1 MISO", spi1misoPin, {is_enabled_spi_1 == 1} + field = "SPI1miso mode", spi1MisoMode, {is_enabled_spi_1 == 1} + field = "SPI1 SCK", spi1sckPin, {is_enabled_spi_1 == 1} + field = "SPI1sck mode", spi1SckMode, {is_enabled_spi_1 == 1} + + field = "SPI2 enable", is_enabled_spi_2 + field = "SPI2 MOSI", spi2mosiPin, {is_enabled_spi_2 == 1} + field = "SPI2mosi mode", spi2MosiMode, {is_enabled_spi_2 == 1} + field = "SPI2 MISO", spi2misoPin, {is_enabled_spi_2 == 1} + field = "SPI2miso mode", spi2MisoMode, {is_enabled_spi_2 == 1} + field = "SPI2 SCK", spi2sckPin, {is_enabled_spi_2 == 1} + field = "SPI2sck mode", spi2SckMode, {is_enabled_spi_2 == 1} + + field = "SPI3 enable", is_enabled_spi_3 + field = "SPI3 MOSI", spi3mosiPin, {is_enabled_spi_3 == 1} + field = "SPI3mosi mode", spi3MosiMode, {is_enabled_spi_3 == 1} + field = "SPI3 MISO", spi3misoPin, {is_enabled_spi_3 == 1} + field = "SPI3miso mode", spi3MisoMode, {is_enabled_spi_3 == 1} + field = "SPI3 SCK", spi3sckPin, {is_enabled_spi_3 == 1} + field = "SPI3sck mode", spi3SckMode, {is_enabled_spi_3 == 1} + field = "LIS302DLCsPin", LIS302DLCsPin + + dialog = stftPartitioning, "Region Configuration" + field = "Idle region RPM", stft_maxIdleRegionRpm + field = "Overrun region load", stft_maxOverrunLoad + field = "Power region load", stft_minPowerLoad + + dialog = stftPartitionSettingsMain, "Main Region", xAxis + field = "Time const", stft_cellCfgs4_timeConstant + field = "Max add", stft_cellCfgs4_maxAdd + field = "Max remove", stft_cellCfgs4_maxRemove + + dialog = stftPartitionSettingsIdle, "Idle Region", xAxis + field = "Time const", stft_cellCfgs1_timeConstant + field = "Max add", stft_cellCfgs1_maxAdd + field = "Max remove", stft_cellCfgs1_maxRemove + + dialog = stftPartitionSettingsPower, "Power Region", xAxis + field = "Time const", stft_cellCfgs3_timeConstant + field = "Max add", stft_cellCfgs3_maxAdd + field = "Max remove", stft_cellCfgs3_maxRemove + + dialog = stftPartitionSettingsOverrun, "Overrun Region", xAxis + field = "Time const", stft_cellCfgs2_timeConstant + field = "Max add", stft_cellCfgs2_maxAdd + field = "Max remove", stft_cellCfgs2_maxRemove + + dialog = fuelClosedLoopDialog, "Closed loop fuel correction" + field = "Enabled", fuelClosedLoopCorrectionEnabled + + field = "Startup delay" stft_startupDelay, {fuelClosedLoopCorrectionEnabled == 1} + field = "Minimum CLT for correction", stft_minClt, {fuelClosedLoopCorrectionEnabled == 1} + field = "Minimum AFR for correction", stft_minAfr, {fuelClosedLoopCorrectionEnabled == 1} + field = "Maximum AFR for correction", stft_maxAfr, {fuelClosedLoopCorrectionEnabled == 1} + field = "Adjustment deadband", stft_deadband, {fuelClosedLoopCorrectionEnabled == 1} + field = "Ignore error magnitude", stftIgnoreErrorMagnitude, {fuelClosedLoopCorrectionEnabled == 1} + + panel = stftPartitioning, {fuelClosedLoopCorrectionEnabled == 1} + panel = stftPartitionSettingsMain, {fuelClosedLoopCorrectionEnabled == 1} + panel = stftPartitionSettingsIdle, {fuelClosedLoopCorrectionEnabled == 1} + panel = stftPartitionSettingsPower, {fuelClosedLoopCorrectionEnabled == 1} + panel = stftPartitionSettingsOverrun, {fuelClosedLoopCorrectionEnabled == 1} + + dialog = vvtPidDialog0, "Configuration" + field = "Activation Delay", vvtActivationDelayMs + commandButton = "Enable VVT#1 debug mode", cmd_test_debug_mode_vvt + field = "VVT solenoid bank 1 intake", vvtPins1 + field = "VVT solenoid bank 1 exhaust", vvtPins2 + field = "VVT solenoid bank 2 intake", vvtPins3 + field = "VVT solenoid bank 2 exhaust", vvtPins4 + field = "PWM frequency", vvtOutputFrequency1, {vvtPins1 != 0 || vvtPins2 != 0} + field = "Detailed status in console", isVerboseAuxPid1, {vvtPins1 != 0 || vvtPins2 != 0} + + dialog = vvtPidDialog1, "Intake PID" + field = "offset", auxPid1_offset, {vvtPins1 != 0} + field = "P factor", auxPid1_pFactor, {vvtPins1 != 0} + field = "I factor", auxPid1_iFactor, {vvtPins1 != 0} + field = "D factor", auxPid1_dFactor, {vvtPins1 != 0} + field = "Min", auxPid1_minValue, {vvtPins1 != 0} + field = "Max", auxPid1_maxValue, {vvtPins1 != 0} + + dialog = vvtPidDialog2, "Exhaust PID" + field = "offset", auxPid2_offset, {vvtPins2 != 0} + field = "P factor", auxPid2_pFactor, {vvtPins2 != 0} + field = "I factor", auxPid2_iFactor, {vvtPins2 != 0} + field = "D factor", auxPid2_dFactor, {vvtPins2 != 0} + field = "Min", auxPid2_minValue, {vvtPins2 != 0} + field = "Max", auxPid2_maxValue, {vvtPins2 != 0} + + dialog = vvtPidDialog, "VVT Configuration & PID", border + panel = vvtPidDialog0, West + panel = vvtPidDialog1, Center + panel = vvtPidDialog2, East + +; Engine->Battery & Alternator + dialog = batteryDialog, "Battery Settings", yAxis + field = "vBatt ADC input", vbattAdcChannel + field = "Battery Input Divider Coefficient", vbattDividerCoeff + dialog = alternator, "Alternator Settings", yAxis + field = "Enabled", isAlternatorControlEnabled + field = "simple on/off mode", onOffAlternatorLogic, {isAlternatorControlEnabled == 1} + field = "Target", targetVBatt, {isAlternatorControlEnabled == 1} + field = "Pin", alternatorControlPin, {isAlternatorControlEnabled == 1} + field = "Pin Mode", alternatorControlPinMode, {isAlternatorControlEnabled == 1} + field = "PWM frequency", alternatorPwmFrequency, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} + field = "Off Above TPS", alternatorOffAboveTps, {isAlternatorControlEnabled == 1} + field = "Detailed status in console", isVerboseAlternator, {isAlternatorControlEnabled == 1} + field = "#PID control" + field = "offset", alternatorControl_offset, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} + field = "P factor", alternatorControl_pFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} + field = "I factor", alternatorControl_iFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} + field = "D factor", alternatorControl_dFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} + field = "Min", alternatorControl_minValue, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} + field = "Max", alternatorControl_maxValue, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} + field = "#% duty = Pterm + Iterm + Dterm + offset%" + + dialog = startStopDialog, "Start/Stop Button" + field = "Start/Stop Button Pin", startStopButtonPin + field = "Start/Stop Button Mode", startStopButtonMode + field = "Starter Control", starterControlPin, { starterControlPin != 0 || startStopButtonPin != 0} + field = "Start cranking maximum time", startCrankingDuration, {startStopButtonPin != 0} + + dialog = energySystems, "Battery and Alternator Settings", yAxis + panel = batteryDialog + panel = alternator + panel = startStopDialog + + dialog = speedSensorAnalog, "Speed sensor" + field = "Input pin", vehicleSpeedSensorInputPin + field = "Filter parameter", vssFilterReciprocal, { vehicleSpeedSensorInputPin != 0 } + +; +; We prefer quantities that users can actually measure or inspect without math, so we have +; two separate natural settings here without one 'sensor tooth to wheel revolution' ratio +; + field = "Wheel revolutions per kilometer", driveWheelRevPerKm + field = "Speed sensor gear ratio", vssGearRatio, { vehicleSpeedSensorInputPin != 0 } + field = "Speed sensor tooth count", vssToothCount, { vehicleSpeedSensorInputPin != 0 } + + dialog = speedSensorCan, "CAN Vehicle Speed" + field = "Enable CAN VSS", enableCanVss, { canReadEnabled } + field = "VSS CAN message type", canVssNbcType, { enableCanVss } + + dialog = speedSensorLeft, "", yAxis + panel = speedSensorAnalog, { enableCanVss == 0 } + panel = speedSensorCan + + dialog = gearDetection, "Gear Detection" + field = "Wheel revolutions per kilometer", driveWheelRevPerKm + field = "Final drive ratio", finalGearRatio + field = "" + field = "Forward gear count", totalGearsCount + field = "" + field = "1st gear", gearRatio1, { totalGearsCount >= 1 } + field = "2nd gear", gearRatio2, { totalGearsCount >= 2 } + field = "3rd gear", gearRatio3, { totalGearsCount >= 3 } + field = "4th gear", gearRatio4, { totalGearsCount >= 4 } + field = "5th gear", gearRatio5, { totalGearsCount >= 5 } + field = "6th gear", gearRatio6, { totalGearsCount >= 6 } + field = "7th gear", gearRatio6, { totalGearsCount >= 7 } + field = "8th gear", gearRatio6, { totalGearsCount >= 8 } + + dialog = speedSensor, "Speed sensor", xAxis + panel = speedSensorLeft + gauge = VSSGauge + +; Engine->Other inputs + dialog = analogInputSettings, "Analog Input Settings" + field = "!ECU reboot needed to apply these settings" + field = "Use fixed baro corr from MAP", useFixedBaroCorrFromMap + field = "Analog divider ratio", analogInputDividerCoefficient + field = "Smoothing factor", slowAdcAlpha + + dialog = tachSettings, "Tachometer output" + field = "Pin", tachOutputPin + field = "Pin mode", tachOutputPinMode + field = "Pulse Mode", tachPulseDurationAsDutyCycle + field = "Pulse duration", tachPulseDuractionMs + field = "Pulse per Rev", tachPulsePerRev + + +; Board->Connection + dialog = tsPort, "Calibration Secondary Serial" + field = "Use UART/TTL calibration serial?", useSerialPort + field = "tunerStudioSerialSpeed", tunerStudioSerialSpeed, {useSerialPort == 1} + field = "TX pin", binarySerialTxPin, {useSerialPort == 1} + field = "RX pin", binarySerialRxPin, {useSerialPort == 1} + + dialog = canHw1, "Primary CAN" + field = "Verbose Can", verboseCan + field = "Bitrate", canBaudRate + field = "RX pin", canRxPin + field = "TX pin", canTxPin + + dialog = canHw2, "Secondary CAN" + field = "Verbose Can2", verboseCan2 + field = "Bitrate", can2BaudRate + field = "RX pin", can2RxPin + field = "TX pin", can2TxPin + + dialog = canBus, "CAN Bus" + field = "CAN read enabled", canReadEnabled + field = "CAN write enabled", canWriteEnabled + field = "CAN dash type", canNbcType + field = "inertia measurement unit", imuType + field = "Enable rusEFI CAN broadcast", enableVerboseCanTx + field = "rusEFI CAN data bus", canBroadcastUseChannelTwo + field = "rusEFI CAN data base address", verboseCanBaseAddress + field = "rusEFI CAN data address type", rusefiVerbose29b + field = "rusEFI CAN data period", canSleepPeriodMs + + dialog = canBus2, "Secondary CAN Bus" + + dialog = canBusMain, "CAN Bus Communication", yAxis + panel = canBus + + panel = canHw1 + panel = canHw2 + + dialog = auxSerial, "AUX Sensor Serial" + field = "RX pin", auxSerialRxPin + field = "TX pin", auxSerialTxPin + field = "Serial Baud Rate", auxSerialSpeed + + dialog = sdCard, "SD Card Logger" + field = "#rusEFI logs to SD when powered without USB connected" + field = "#rusEFI connects SD to your PC when powered by USB" + field = "Enable SD Card", isSdCardEnabled + field = "CS Pin", sdCardCsPin + field = "SPI", sdCardSpiDevice + 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 = "Mode", tle8888mode + field = "useTLE8888 cranking reset hack", useTLE8888_cranking_hack + field = "useTLE8888 stepper", useTLE8888_stepper + commandButton = "Reinit", cmd_tle8888_init + field = "L9779 SPI", tle8888spiDevice + + dialog = connection, "", yAxis + field = "ADC vRef voltage", adcVcc + panel = tsPort + field = "uartConsoleSerialSpeed", uartConsoleSerialSpeed + panel = auxSerial + + + dialog = monitoringSettings, "rusEFI Console Settings" + field = "Sensor Sniffer", sensorChartMode + field = " Threshold", sensorSnifferRpmThreshold + field = "Engine Sniffer", isEngineChartEnabled + field = " Threshold", engineSnifferRpmThreshold + + dialog = generalSettings, "General" + field = "!https://rusefi.com/s/fuel" + field = "Fuel strategy", fuelAlgorithm + + dialog = debugging, "Debug" + field = "!https://rusefi.com/s/debugmode" + field = "Debug mode", debugMode + + dialog = limitsSettings, "Limits" + field = "Cut fuel on RPM limit", cutFuelOnHardLimit + field = "Cut spark on RPM limit", cutSparkOnHardLimit + field = "RPM hard limit", rpmHardLimit, { cutFuelOnHardLimit || cutSparkOnHardLimit } + field = "Boost cut pressure", boostCutPressure + field = "Minimum oil pressure after start", minOilPressureAfterStart + + dialog = etbLimits, "Electronic Throttle Limiting" + field = "Smoothly close the throttle to limit RPM." + field = "Soft limiter start", etbRevLimitStart + field = "Soft limiter range", etbRevLimitRange + + dialog = fallbacks, "Fallbacks" + field = "Use MAP estimation table as fallback", enableMapEstimationTableFallback + field = "Failed MAP sensor fallback", failedMapFallback, { !enableMapEstimationTableFallback } + + dialog = limitsAndFallback, "Limits and fallbacks" + panel = limitsSettings + panel = etbLimits + panel = fallbacks + +; Engine->Base Engine Settings + dialog = engineChars, "Base Engine Settings" + topicHelp = "baseHelp" + panel = baseEngineConfig + panel = engineMetadata + panel = generalSettings + panel = debugging + + dialog = crankingFuel, "Fuel" + field = "Injection mode", crankingInjectionMode + field = "Fuel Source For Cranking", useRunningMathForCranking + field = "Base fuel mass", cranking_baseFuel, {useRunningMathForCranking == 0} + + dialog = crankingIAC, "Idle air valve" + field = "Cranking base IAC position", crankingIACposition + field = "After cranking IAC taper duration",afterCrankingIACtaperDuration + field = "Override cranking IAC CLT multiplier", overrideCrankingIacSetting + + dialog = crankingIgnition, "Ignition" + field = "Timing Advance mode", useSeparateAdvanceForCranking + field = "Fixed cranking advance", crankingTimingAngle, {useSeparateAdvanceForCranking == 0} + field = "Fixed Cranking Dwell", ignitionDwellForCrankingMs + + dialog = postCrankingEnrichment, "After start enrichment" + field = "Post-Cranking factor", postCrankingFactor + field = "Duration", postCrankingDurationSec + + dialog = primingFuelPulsePanel, "Priming fuel pulse" + field = "Priming delay", primingDelay + panel = primingPulse + + dialog = crankingAdv, "Advanced" + field = "Enable flood clear", isCylinderCleanupEnabled + field = "Enable faster engine spin-up", isFasterEngineSpinUpEnabled + field = "Use Advance Corrections for cranking", useAdvanceCorrectionsForCranking + field = "Use Flex Fuel cranking table", flexCranking + +; Cranking->Cranking Settings + dialog = crankingDialog, "Cranking Settings" + field = "Cranking RPM limit", cranking_rpm + panel = crankingFuel + panel = crankingIgnition + panel = crankingIAC + panel = crankingAdv + + dialog = TpsAccelPanel, "TPS" + field = "Set 'Debug Mode' to see detailed 'TPS acceleration enrichment' diagnostics" + field = "Length", tpsAccelLookback + field = "Accel Threshold", tpsAccelEnrichmentThreshold + field = "Decel Threshold", tpsDecelEnleanmentThreshold +; field = "Decel Multiplier", tpsDecelEnleanmentMultiplier + field = "#Accelerator Pump model:" + field = "Fraction Period", tpsAccelFractionPeriod + field = "Fraction Divisor", tpsAccelFractionDivisor + + dialog = WallWettingAccelPanel, "Wall Wetting (alpha version)" + field = "Wall fueling model type", complexWallModel + field = "evaporation time constant / tau", wwaeTau, { complexWallModel == 0 } + field = "added to wall coef / beta", wwaeBeta, { complexWallModel == 0 } + + +; Tuning->AccelEnrichment + dialog = AccelEnrich, "Accel/Decel Enrichment" + panel = TpsAccelPanel + panel = WallWettingAccelPanel + field = "No accel after RPM hard limit", noAccelAfterHardLimitPeriodSecs + + + dialog = wwTauCurves, "Wall wetting AE evaporation time" + field = "#Set a base evaporation time based on coolant temperature, and a multiplier based on MAP." + panel = wwTauCltCurve + panel = wwTauMapCurve + + dialog = wwBetaCurves, "Wall wetting AE impact fraction" + field = "#Set a base impact fraction based on coolant temperature, and a multiplier based on MAP." + panel = wwBetaCltCurve + panel = wwBetaMapCurve + + dialog = auxValvesIO, "Outputs" + field = "aux valve #1", auxValves1 + field = "aux valve #2", auxValves2 + + dialog = scriptSetting, "Setting" + field = "!Use rusEFI console for Lua script editing" + field = "Set number is not associated with the output number." + field = "Set number, only the cell number with some numbers." + field = "Name #1", scriptSettingName1 + field = "Setting #1", scriptSetting1 + field = "Name #2", scriptSettingName2 + field = "Setting #2", scriptSetting2 + field = "Name #3", scriptSettingName3 + field = "Setting #3", scriptSetting3 + field = "Name #4", scriptSettingName4 + field = "Setting #4", scriptSetting4 + field = "Name #5", scriptSettingName5 + field = "Setting #5", scriptSetting5 + field = "Name #6", scriptSettingName6 + field = "Setting #6", scriptSetting6 + + dialog = scriptSettingDialog, "Script Settings", border + panel = scriptSetting, East + + dialog = auxInputsDialog, "Aux Analog Inputs" + field = "ADC #1", auxAnalogInputs1 + field = "ADC #2", auxAnalogInputs2 + field = "ADC #3", auxAnalogInputs3 + field = "ADC #4", auxAnalogInputs4 + field = "ADC #5", auxAnalogInputs5 + field = "ADC #6", auxAnalogInputs6 + field = "ADC #7", auxAnalogInputs7 + field = "ADC #8", auxAnalogInputs8 + + dialog = luaOutputs, "Lua Outputs" + field = "!Use rusEFI console for Lua script editing" + field = "#Call startPwm to initialize, then call" + field = "#setPwmDuty and setPwmFreq to vary duty/freq" + field = "#See rusefi.com/s/lua for more info" + field = "output #0", luaOutputPins1 + field = "output #1", luaOutputPins2 + field = "output #2", luaOutputPins3 + field = "output #3", luaOutputPins4 + field = "output #4", luaOutputPins5 + field = "output #5", luaOutputPins6 + field = "output #6", luaOutputPins7 + field = "output #7", luaOutputPins8 + + dialog = transmissionPanel + field = "TCU Enabled" tcuEnabled + field = "Gear Controller" gearControllerMode, { tcuEnabled } + field = "Transmission Controller" transmissionControllerMode, { tcuEnabled } + + dialog = shiftSolenoidPanel, "Shift Solenoids" + field = "Solenoid 1 Pin" tcu_solenoid1, { tcuEnabled && (transmissionControllerMode == 1 || transmissionControllerMode == 2) } + field = "Solenoid 1 Pin Mode" tcu_solenoid_mode1, { tcuEnabled && (transmissionControllerMode == 1 || transmissionControllerMode == 2) } + field = "Solenoid 2 Pin" tcu_solenoid2, { tcuEnabled && (transmissionControllerMode == 1 || transmissionControllerMode == 2) } + field = "Solenoid 2 Pin Mode" tcu_solenoid_mode2, { tcuEnabled && (transmissionControllerMode == 1 || transmissionControllerMode == 2) } + field = "Solenoid 3 Pin" tcu_solenoid3, { tcuEnabled && (transmissionControllerMode == 1 || transmissionControllerMode == 2) } + field = "Solenoid 3 Pin Mode" tcu_solenoid_mode3, { tcuEnabled && (transmissionControllerMode == 1 || transmissionControllerMode == 2) } + field = "Solenoid 4 Pin" tcu_solenoid4, { tcuEnabled && (transmissionControllerMode == 1 || transmissionControllerMode == 2) } + field = "Solenoid 4 Pin Mode" tcu_solenoid_mode4, { tcuEnabled && (transmissionControllerMode == 1 || transmissionControllerMode == 2) } + field = "Solenoid 5 Pin" tcu_solenoid5, { tcuEnabled && (transmissionControllerMode == 1 || transmissionControllerMode == 2) } + field = "Solenoid 5 Pin Mode" tcu_solenoid_mode5, { tcuEnabled && (transmissionControllerMode == 1 || transmissionControllerMode == 2) } + field = "Solenoid 6 Pin" tcu_solenoid6, { tcuEnabled && (transmissionControllerMode == 1 || transmissionControllerMode == 2) } + field = "Solenoid 6 Pin Mode" tcu_solenoid_mode6, { tcuEnabled && (transmissionControllerMode == 1 || transmissionControllerMode == 2) } + field = "3-2 Solenoid Pin" tcu_32_solenoid_pin, { tcuEnabled && (transmissionControllerMode == 2) } + field = "3-2 Solenoid Pin mode" tcu_32_solenoid_pin_mode, { tcuEnabled && (transmissionControllerMode == 2) } + field = "3-2 Solenoid Frequency" tcu_32_solenoid_freq, { tcuEnabled && (transmissionControllerMode == 2) } + + dialog = otherSolenoidPanel, "Other Solenoids" + field = "TCC On/Off Solenoid Pin" tcu_tcc_onoff_solenoid, { tcuEnabled && (transmissionControllerMode == 2) } + field = "TCC On/Off Solenoid Pin Mode" tcu_tcc_onoff_solenoid_mode, { tcuEnabled && (transmissionControllerMode == 2) } + field = "TCC PWM Solenoid Pin" tcu_tcc_pwm_solenoid, { tcuEnabled && (transmissionControllerMode == 2) } + field = "TCC PWM Solenoid Pin Mode" tcu_tcc_pwm_solenoid_mode, { tcuEnabled && (transmissionControllerMode == 2) } + field = "TCC PWM Solenoid Frequency" tcu_tcc_pwm_solenoid_freq, { tcuEnabled && (transmissionControllerMode == 2) } + field = "Pressure Control Solenoid Pin" tcu_pc_solenoid_pin, { tcuEnabled && (transmissionControllerMode == 2) } + field = "Pressure Control Solenoid Pin Mode" tcu_pc_solenoid_pin_mode, { tcuEnabled && (transmissionControllerMode == 2) } + field = "Pressure Control Solenoid Frequency" tcu_pc_solenoid_freq, { tcuEnabled && (transmissionControllerMode == 2) } + + dialog = buttonShiftInputPanel, "Switch/Button Shift" + field = "Upshift Pin" tcuUpshiftButtonPin, { tcuEnabled && gearControllerMode == 1 } + field = "Upshift Pin Mode" tcuUpshiftButtonPinMode, { tcuEnabled && gearControllerMode == 1 } + field = "Downshift Pin" tcuDownshiftButtonPin, { tcuEnabled && gearControllerMode == 1 } + field = "Downshift Pin Mode" tcuDownshiftButtonPinMode, { tcuEnabled && gearControllerMode == 1 } + + dialog = inputSpeedSensorPanel, "Input Speed Sensor" + field = "Input Pin", tcuInputSpeedSensorPin + field = "Filter parameter", issFilterReciprocal, { tcuInputSpeedSensorPin != 0 } + field = "Tooth Count", tcuInputSpeedSensorTeeth + +dialog = tcuControls, "Transmission Settings" + panel = transmissionPanel + panel = shiftSolenoidPanel + panel = otherSolenoidPanel + + dialog = gearControls, "Gear Selection Settings" + panel = buttonShiftInputPanel + + dialog = inputSpeedSensor, "Input Speed Sensor" + panel = inputSpeedSensorPanel + + dialog = tccCurves, "TCC Lock/Unlock Speed" + panel = tccLockCurve + + dialog = pcPerGearDialog, "Line Pressure Per Gear Steady State" + panel = pcPerGearCurve + + dialog = pcPerShiftDialog, "Line Pressure Per Shift" + panel = pcPerShiftCurve + + dialog = 32Dialog, "3-2 Shift Solenoid Percent by Speed" + panel = 32Curve + +;Boost Open Loop + + dialog = boostDialog, "" + field = "Enable", isBoostControlEnabled + field = "Control Mode", boostType, { isBoostControlEnabled } + field = "Output", boostControlPin, { boostControlPin != 0 || isBoostControlEnabled } + field = "Output Mode", boostControlPinMode, { isBoostControlEnabled } + field = "Frequency", boostPwmFrequency, { isBoostControlEnabled } + field = "Safe duty cycle", boostControlSafeDutyCycle, { isBoostControlEnabled } + + dialog = boostOpenLoopDialog, "", border + panel = boostTableTbl, Center + +;Boost Closed Loop + + dialog = boostPidDialog, "" + field = "Enable closed loop above", minimumBoostClosedLoopMap, { isBoostControlEnabled && boostType == 1 } + field = "P Gain", boostPid_pFactor, { isBoostControlEnabled && boostType == 1 } + field = "I Gain", boostPid_iFactor, { isBoostControlEnabled && boostType == 1 } + field = "D Gain", boostPid_dFactor, { isBoostControlEnabled && boostType == 1 } + field = "Min adjustment", boostPid_minValue, { isBoostControlEnabled && boostType == 1 } + field = "Max adjustment", boostPid_maxValue, { isBoostControlEnabled && boostType == 1 } + + dialog = boostTargetDialog, "", card + panel = boostTable2Tbl + + dialog = boostEtbPid, "" + field = "This PID is controlling how DC motor reaches desired position" + field = "" + field = "!This section is for advanced users only!" + field = "H-Bridge #1 function", etbFunctions1 + field = "H-Bridge #2 function", etbFunctions2 + field = "P gain", etbWastegatePid_pFactor, { isBoostControlEnabled } + field = "I gain", etbWastegatePid_iFactor, { isBoostControlEnabled } + field = "D gain", etbWastegatePid_dFactor, { isBoostControlEnabled } + field = "PID min", etbWastegatePid_minValue, { isBoostControlEnabled } + field = "PID max", etbWastegatePid_maxValue, { isBoostControlEnabled } + + help = veTableDialogHelp, "Volumetric Efficiency" + text = "Volumetric Efficiency is used to calculate fuel in Speed Density mode. VE incorporates pressure ratio as measured by MAP sensor in boost (no VE ever above 105%ish)" + webHelp = "https://rusefi.com/s/fuel" + + help = stepperHbridgeHardwareHelp, "Stepper driven by Dual H-bridge" + text = "In case you are using two H-bridges driving 4-wire stepper. H-brigde control signals connected to MCU pins configured here." + + help = idleStepperHwHelp, "Stepper drivern by step motor driver IC" + text = "In case you have some special IC that drives your stepper. MCU to IC control signals (DIR/STEP/EN) configured here" + + help = stepperDirectDriveHardwareHelp, "Stepper driven by 4 Push-Pull/Pull outputs" + text = "In case you have 4/6-wire stepper driven by 4 ECU outputs in Push-Pull or Pull mode. Set ECU outputs used for each phase here." + + help = fuelHelp, "Fuel Control" + text = "More about fuel control on the web" + webHelp = "https://rusefi.com/s/fuel" + + help = triggerHelp, "Trigger Settings" + text = "More about Trigger Settings on the web" + webHelp = "https://rusefi.com/s/trigger" + + help = etbHelp, "ETB Control" + text = "More about electronic throttle body on the web" + webHelp = "https://rusefi.com/s/etb" + + help = vrThresholdHelp, "VR Sensor Threshold" + text = "This is about rusEFI VR Discrete decoder" + webHelp = "https://rusefi.com/" + + help = tpsTpsHelp, "Acceleration Enrichment" + text = "More about Tps To Tps acceleration on the web" + webHelp = "https://rusefi.com/s/tpstps" + + help = baseHelp, "Base Settings Control" + text = "More about rusefi on the web" + webHelp = "https://rusefi.com/" + + dialog = veTableDialog + topicHelp = "veTableDialogHelp" + panel = veTableTbl, South + + dialog = veTableDialog3D, "VE Table" + topicHelp = "veTableDialogHelp" + panel = veTableMap, South + + dialog = etbPidDialog, "PID settings" + field = "pFactor", etb_pFactor + field = "iFactor", etb_iFactor + field = "dFactor", etb_dFactor + field = "pid min", etb_minValue + field = "pid max", etb_maxValue + field = "iTermMin", etb_iTermMin + field = "iTermMax", etb_iTermMax + + dialog = etbIdleDialog, "ETB Idle" + field = "use ETB for idle", useETBforIdleControl + field = "ETB idle maximum angle", etbIdleThrottleRange + + dialog = etbDialogLeft + field = "https://rusefi.com/s/etb" + field = "Disable ETB if engine is stopped", disableEtbWhenEngineStopped + field = "Disable ETB Motor", pauseEtbControl + field = "H-Bridge #1 function", etbFunctions1 + field = "H-Bridge #2 function", etbFunctions2 + field = "PWM Frequency", etbFreq + field = "Minimum ETB position", etbMinimumPosition + field = "Maximum ETB position", etbMaximumPosition + ; we need the term about stepper idle in here, because there's a bug in TS that you can't have different visibility + ; criteria for the same panel when used in multiple places + ; todo: report bug to TS? + ; another todo: split panel into two panels so that we can enable/disable h-bridge #1 separately from h-bridge #2 + panel = etbHbridgeHardware, { etbFunctions1 != 0 || etbFunctions2 != 0 || (useStepperIdle && useHbridgesToDriveIdleStepper) } + + dialog = etbAutotune, "PID Autotune" + field = "First step: calibrate TPS and hit 'Burn'" + commandButton = "Auto Calibrate ETB 1", cmb_etb_auto_calibrate + commandButton = "Auto Calibrate ETB 2", cmb_etb_auto_calibrate_2 + field = "Second step" + commandButton = "Start ETB PID Autotune", cmd_etb_autotune + commandButton = "Stop ETB PID Autotune", cmd_etb_autotune_stop + + field = "!Set debug mode below to 'ETB Autotune' to show more detail" + field = "Debug mode", debugMode + + dialog = etbDialogRight + panel = etbIdleDialog, { throttlePedalPositionAdcChannel != 0 } + panel = etbPidDialog, { (throttlePedalPositionAdcChannel != 0) || (etbFunctions1 == 3) } + panel = etbAutotune + + ; Neutral position handling not yet implemented! + ;field = "Neutral Position", etbNeutralPosition + + dialog = etbDialog, "Electronic Throttle Body", border + topicHelp = "etbHelp" + panel = etbDialogLeft, West + panel = etbDialogRight, East + + + dialog = testSpark, "Spark" + commandButton = "Spark #1", cmd_test_spk1 + commandButton = "Spark #2", cmd_test_spk2, { cylindersCount >= 2 } + commandButton = "Spark #3", cmd_test_spk3, { cylindersCount >= 3 } + commandButton = "Spark #4", cmd_test_spk4, { cylindersCount >= 4 } + commandButton = "Spark #5", cmd_test_spk5, { cylindersCount >= 5 } + commandButton = "Spark #6", cmd_test_spk6, { cylindersCount >= 6 } + commandButton = "Spark #7", cmd_test_spk7, { cylindersCount >= 7 } + commandButton = "Spark #8", cmd_test_spk8, { cylindersCount >= 8 } + commandButton = "Spark #9", cmd_test_spk9, { cylindersCount >= 9 } + commandButton = "Spark #10", cmd_test_spk10, { cylindersCount >= 10 } + commandButton = "Spark #11", cmd_test_spk11, { cylindersCount >= 11 } + commandButton = "Spark #12", cmd_test_spk12, { cylindersCount >= 12 } + + dialog = testMisc, "Misc" +; commandButton = "Come To Pit", cmd_call_from_pit + commandButton = "Main Relay", cmd_test_main_relay + commandButton = "Fuel Pump", cmd_test_fuel_pump + commandButton = "Cooling Fan", cmd_test_fan_1 + commandButton = "Cooling Fan 2", cmd_test_fan_2 + commandButton = "A/C Relay", cmd_test_ac_relay + commandButton = "Check Engine", cmd_test_check_engine_light + commandButton = "Idle Air Valve", cmd_test_idle_valve + commandButton = "Idle Second Air Valve", cmd_test_second_idle_valve + commandButton = "HPFP Valve", cmd_test_hpfp_valve + commandButton = "Starter Relay", cmd_test_starter_relay + commandButton = "Stop Engine", cmd_stop_engine + commandButton = "Write Config", cmd_write_config + commandButton = "Reset ECU", cmd_reset_controller + commandButton = "Reset to DFU", cmd_dfu + commandButton = "No flash Burn mode", cmd_burn_without_flash + + ; bench test + dialog = ioTest, "Bench Test & Commands", xAxis + panel = testSpark + panel = testInjectors + panel = testOther + panel = testLuaOut + panel = testMisc + + ; Injectors test + dialog = injTest_l, "Output test modes", yAxis + field = "Iterations", benchTestCount + field = "ON time", benchTestOffTime + field = "OFF time", benchTestOnTime + + dialog = injTest_r, "Reference gauges", yAxis + gauge = VBattGauge,North + gauge = testBenchIterGauge,South + + dialog = injTest, "", xAxis + panel = injTest_l + panel = injTest_r + + dialog = widebandConfig, "rusEFI Wideband Config" + field = "!Please connect exactly one wideband controller before pressing these buttons!" + commandButton = "Update Firmware", cmd_wideband_firmare_update + field = "!These buttons will set ALL connected controllers to the specified index." + field = "!Disconnect all controllers you don't want to set!" + commandButton = "Set Index 0", cmd_set_wideband_idx_0 + commandButton = "Set Index 1", cmd_set_wideband_idx_1 + + dialog = engineTypeDialog, "Popular vehicles" + field = "!These buttons send a command to rusEFI controller to apply preset values" + field = "!Once you send the command, please reconnect to rusEFI controller in order to read fresh values" + + + + + + + + + + commandButton = "ETB test bench", cmd_set_engine_type_etb_test + commandButton = "TLE8888 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 + commandButton = "Enable internal trigger simulation", cmd_enable_self_stim + commandButton = "Enable external trigger simulation", cmd_enable_ext_stim + commandButton = "Disable trigger simulation", cmd_disable_self_stim +; field = "" +; field = "digipot spi", digitalPotentiometerSpiDevice +; field = "digipot CS #0", digitalPotentiometerChipSelect1 +; field = "digipot CS #1", digitalPotentiometerChipSelect2 +; field = "digipot CS #2", digitalPotentiometerChipSelect3 +; field = "digipot CS #3", digitalPotentiometerChipSelect4 + field = "" + 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 + + dialog = datalogSettings, "Datalogging Settings" + field = "#Disabling optional logging may increase update rate!" + field = "Log debug channels", enableLogDebugChannels + field = "Log recent errors list", enableLogErrorList + + ; Racing Features->Launch Control + dialog = smLaunchControlWest, "Launch Control Settings EXPERIMENTAL" + field = "Enable Launch Control", launchControlEnabled + field = "Activation Mode", launchActivationMode + + field = "Launch Button", launchActivatePin, { launchActivatePin != 0 || (launchActivationMode == 0 && launchControlEnabled == 1)} + field = "Launch Button inverted", launchActivateInverted + field = "Launch Button mode", launchActivatePinMode, {launchActivationMode == 0 && launchControlEnabled == 1} + + field = "Clutch Down", clutchDownPin, {launchActivationMode == 1 && launchControlEnabled == 1} + field = "Clutch Down inverted", clutchDownPinInverted + field = "Clutch Down mode", clutchDownPinMode, {launchActivationMode == 1 && launchControlEnabled == 1} + field = "" + +; dead code field = "Rpm Threshold", launchRpmThreshold, {launchControlEnabled == 1} + field = "Speed Threshold", launchSpeedThreshold, {launchControlEnabled == 1} + field = "" + field = "Launch RPM", launchRpm, {launchControlEnabled == 1} + ;field = "Extra Fuel", launchFuelAdded, {launchControlEnabled == 1} + ;field = "Boost Solenoid Duty", launchBoostDuty, {launchControlEnabled == 1} + field = "Ignition Retard enable", enableLaunchRetard, {launchControlEnabled == 1} + field = "Ignition Retard", launchTimingRetard, {launchControlEnabled == 1} + field = "Ignition Retard RPM Range", launchTimingRpmRange, {launchControlEnabled == 1} + field = "Smooth Retard Mode", launchSmoothRetard, {launchControlEnabled == 1} + field = "Hard Cut Mode" + field = "Ignition Cut", launchSparkCutEnable, {launchControlEnabled == 1} + field = "Fuel Cut", launchFuelCutEnable, {launchControlEnabled == 1} + field = "Hard Cut RPM Range", hardCutRpmRange, {launchControlEnabled == 1} + + + dialog = smLaunchControl, "", border + panel = smLaunchControlWest, West + panel = launch_control_stateDialog, East + + + ; Racing Features->Rolling Launch + dialog = smRollingLaunch, "Rolling Launch Settings NOT WORKING" + field = "Enable Rolling Launch", rollingLaunchEnabled + + ; Racing Features->Rolling Launch + dialog = antiLag, "AntiLag Settings NOT WORKING" + field = "Enable AntiLag", antiLagEnabled + field = "Activation Mode", antiLagActivationMode, {antiLagEnabled == 1} + field = "Switch Input", antiLagActivatePin, {antiLagActivatePin != 0 || ( antiLagActivationMode == 1 && antiLagEnabled == 1 ) } + + + dialog = coastingFuelCutControl, "Coasting Fuel Cutoff Settings" + field = "Enable Coasting Fuel Cutoff", coastingFuelCutEnabled + field = "No cut below CLT", coastingFuelCutClt, {coastingFuelCutEnabled == 1} + field = "RPM cut fuel above", coastingFuelCutRpmHigh, {coastingFuelCutEnabled == 1} + field = "RPM restore fuel below", coastingFuelCutRpmLow, {coastingFuelCutEnabled == 1} + field = "Vehicle speed cut above", coastingFuelCutVssHigh, {coastingFuelCutEnabled == 1} + field = "Vehicle speed restore below", coastingFuelCutVssLow, {coastingFuelCutEnabled == 1} + field = "Cut fuel below TPS", coastingFuelCutTps, {coastingFuelCutEnabled == 1} + field = "Cut fuel below MAP", coastingFuelCutMap, {coastingFuelCutEnabled == 1} + field = "Inhibit closed loop fuel after cut", noFuelTrimAfterDfcoTime, {coastingFuelCutEnabled == 1} + + dialog = rotaryDialog, "Rotary" + field = "Enable Trailing Sparks", enableTrailingSparks + field = "Trailing Spark Offset", trailingSparkAngle + field = "Trailing Pin 1", trailingCoilPins1 + field = "Trailing Pin 2", trailingCoilPins2 + field = "Trailing Pin 3", trailingCoilPins3 + field = "Trailing Pin 4", trailingCoilPins4 + + dialog = mapCamDialog, "Engine Phase by MAP sensor" + field = "mapCamDetectionAnglePosition", mapCamDetectionAnglePosition + + dialog = fancyHardwareDialog, "Fancy Boards" + field = "Tachometer Output", boardUseTachPullUp + field = "boardUseTempPullUp", boardUseTempPullUp + field = "boardUseCrankPullUp", boardUseCrankPullUp + field = "2-step input", boardUse2stepPullDown + field = "boardUseCamPullDown", boardUseCamPullDown + field = "boardUseCamVrPullUp", boardUseCamVrPullUp + + dialog = parkingLot, "Experimental/Broken" + field = useEeprom, useEeprom + field = "disablePrimaryUart", disablePrimaryUart + field = "#System hacks" + field = "tempBooleanForVerySpecialCases", tempBooleanForVerySpecialCases + field = "Global fuel correction", globalFuelCorrection + field = "MAP Averaging Logic @", mapAveragingSchedulingAtIndex + field = "showHumanReadableWarning (affects Burn)", showHumanReadableWarning + field = "Warning Message", warning_message + field = totalGearsCount, totalGearsCount + field = "Ford redundant TPS mode", useFordRedundantTps + field = "consumeObdSensors", consumeObdSensors, { canReadEnabled == 1 && canWriteEnabled == 1} + field = "Artificial Misfire", artificialTestMisfire + field = "Always use instant RPM", alwaysInstantRpm + panel = mapCamDialog + panel = allTriggerDebug + panel = torqueTableTbl + + help = helpGeneral, "rusEFI General Help" + webHelp = "http://www.rusefi.com/" + text = "" + + dialog = vrThreshold1, "VR 1 Threshold" + field = "Pin", vrThreshold1_pin + panel = vrThresholdCurve1 + + dialog = vrThreshold2, "VR 2 Threshold" + field = "Pin", vrThreshold2_pin + panel = vrThresholdCurve2 + + dialog = vrThreshold + topicHelp = "vrThresholdHelp" + panel = vrThreshold1 + panel = vrThreshold2 + + dialog = gppwm1left, "" + field = "Pin", gppwm1_pin + field = "" + field = "Set frequency to 0hz for on-off mode" + field = "Frequency", gppwm1_pwmFrequency, {gppwm1_pin != 0} + field = "" + field = "On above duty", gppwm1_onAboveDuty, {gppwm1_pin != 0 && gppwm1_pwmFrequency == 0} + field = "Off below duty", gppwm1_offBelowDuty, {gppwm1_pin != 0 && gppwm1_pwmFrequency == 0} + field = "Duty if error", gppwm1_dutyIfError, {gppwm1_pin != 0} + field = "" + field = "Load Axis", gppwm1_loadAxis, {gppwm1_pin != 0} + field = "Note", gpPwmNote1 + field = "" + field = "" + field = "" + field = "" + field = "" + + dialog = gppwm1, "General Purpose PWM 1", xAxis + panel = gppwm1left + panel = gppwm1Tbl, {gppwm1_pin != 0} + + dialog = gppwm2left, "" + field = "Pin", gppwm2_pin + field = "" + field = "Set frequency to 0hz for on-off mode" + field = "Frequency", gppwm2_pwmFrequency, {gppwm2_pin != 0} + field = "" + field = "On above duty", gppwm2_onAboveDuty, {gppwm2_pin != 0 && gppwm2_pwmFrequency == 0} + field = "Off below duty", gppwm2_offBelowDuty, {gppwm2_pin != 0 && gppwm2_pwmFrequency == 0} + field = "Duty if error", gppwm2_dutyIfError, {gppwm2_pin != 0} + field = "" + field = "Load Axis", gppwm2_loadAxis, {gppwm2_pin != 0} + field = "Note", gpPwmNote2 + field = "" + field = "" + field = "" + field = "" + field = "" + + dialog = gppwm2, "General Purpose PWM 2", xAxis + panel = gppwm2left + panel = gppwm2Tbl, {gppwm2_pin != 0} + + dialog = gppwm3left, "" + field = "Pin", gppwm3_pin + field = "" + field = "Set frequency to 0hz for on-off mode" + field = "Frequency", gppwm3_pwmFrequency, {gppwm3_pin != 0} + field = "" + field = "On above duty", gppwm3_onAboveDuty, {gppwm3_pin != 0 && gppwm3_pwmFrequency == 0} + field = "Off below duty", gppwm3_offBelowDuty, {gppwm3_pin != 0 && gppwm3_pwmFrequency == 0} + field = "Duty if error", gppwm3_dutyIfError, {gppwm3_pin != 0} + field = "" + field = "Load Axis", gppwm3_loadAxis, {gppwm3_pin != 0} + field = "Note", gpPwmNote3 + field = "" + field = "" + field = "" + field = "" + field = "" + + dialog = gppwm3, "General Purpose PWM 3", xAxis + panel = gppwm3left + panel = gppwm3Tbl, {gppwm3_pin != 0} + + dialog = gppwm4left, "" + field = "Pin", gppwm4_pin + field = "" + field = "Set frequency to 0hz for on-off mode" + field = "Frequency", gppwm4_pwmFrequency, {gppwm4_pin != 0} + field = "" + field = "On above duty", gppwm4_onAboveDuty, {gppwm4_pin != 0 && gppwm4_pwmFrequency == 0} + field = "Off below duty", gppwm4_offBelowDuty, {gppwm4_pin != 0 && gppwm4_pwmFrequency == 0} + field = "Duty if error", gppwm4_dutyIfError, {gppwm4_pin != 0} + field = "" + field = "Load Axis", gppwm4_loadAxis, {gppwm4_pin != 0} + field = "Note", gpPwmNote4 + field = "" + field = "" + field = "" + field = "" + field = "" + + dialog = gppwm4, "General Purpose PWM 4", xAxis + panel = gppwm4left + panel = gppwm4Tbl, {gppwm4_pin != 0} + + dialog = hpfpCamDialog, "HPFP Cam Configuration" + field = "Number of lobes", hpfpCamLobes + field = "If using VVT, which cam the pump is driven from", hpfpCam, {hpfpCamLobes != 0} + field = "Angle of first lobe", hpfpPeakPos, {hpfpCamLobes != 0} + panel = hpfpLobeProfileCurve, {hpfpCamLobes != 0} + + dialog = hpfpPumpDialog, "HPFP Pump Configuration" + field = "Valve Pin", hpfpValvePin, {hpfpCamLobes != 0} + field = "Valve Pin Mode", hpfpValvePinMode, {hpfpCamLobes != 0} + field = "Valve peak current", mc33_hpfp_i_peak, {hpfpCamLobes != 0} + field = "Valve hold current", mc33_hpfp_i_hold, {hpfpCamLobes != 0} + field = "Valve hold off time", mc33_hpfp_i_hold_off, {hpfpCamLobes != 0} + field = "Valve maximum duration", mc33_hpfp_max_hold, {hpfpCamLobes != 0} + field = "Pump volume", hpfpPumpVolume, {hpfpCamLobes != 0} + field = "Minimum angle", hpfpMinAngle, {hpfpCamLobes != 0} + field = "Activation angle", hpfpActivationAngle, {hpfpCamLobes != 0} + field = "Target decay rate", hpfpTargetDecay, {hpfpCamLobes != 0} + field = "Proportional gain", hpfpPidP, {hpfpCamLobes != 0} + field = "Integral gain", hpfpPidI, {hpfpCamLobes != 0} + panel = hpfpDeadtimeCurve, {hpfpCamLobes != 0} + +[Tools] + ;addTool = toolName, PanelName + addTool = veTableGenerator, "VE Table Generator", veTableTbl +#if LAMBDA +#else + addTool = afrTableGenerator, "AFR Table Generator", afrTableTbl +#endif