diff --git a/README.md b/README.md index 0a3b871fe5..90cfda312d 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,7 @@ current binaries are always available at http://rusefi.com/build_server/ | Release date | Revision | Details | | ------------ | --------- | ------- | +| 02/22/2017 | r2972 | protocol signature changed to 'v0.02' (this would happen from time to time to ensure version match between console and TS project | | 02/20/2017 | r2939 | https://github.com/rusefi/rusefi is now the official primary repository | | 02/18/2017 | r11565 | improvement: level1 default brown out https://sourceforge.net/p/rusefi/tickets/354/ | | 02/18/2017 | r11554 | bugfix: rusEfi console program/erase buttons fixed with ST-LINK 2.1 | diff --git a/firmware/console/binary/tunerstudio_io.h b/firmware/console/binary/tunerstudio_io.h index bcbeaa12dd..e887d6a310 100644 --- a/firmware/console/binary/tunerstudio_io.h +++ b/firmware/console/binary/tunerstudio_io.h @@ -19,7 +19,7 @@ #define SWITCH_TO_BINARY_COMMAND "~" #define PROTOCOL "001" -#define TS_SIGNATURE "MShift v0.01" +#define TS_SIGNATURE "MShift v0.02" #define TS_RESPONSE_OK 0x00 #define TS_RESPONSE_BURN_OK 0x04 diff --git a/firmware/tunerstudio/rusefi.ini b/firmware/tunerstudio/rusefi.ini index a73cfd6be6..b6081aabc7 100644 --- a/firmware/tunerstudio/rusefi.ini +++ b/firmware/tunerstudio/rusefi.ini @@ -1,2335 +1,2335 @@ -; this is TunerStudio project for www.rusefi.com DIY engine management system - -; this should stop TS from looking for the CAN ID in the 2nd byte location and allow the page reads to work correctly. -enable2ndByteCanID = false - -#unset tuneByMAF - -[TunerStudio] - queryCommand = "S" - signature = "MShift v0.01" ; signature is expected to be 7 or more characters. - -[Constants] -; new packet serial format with CRC - messageEnvelopeFormat = msEnvelope_1.0 - - endianness = little - nPages = 1 - - - pageIdentifier = "\x00\x00" - pageReadCommand = "R\x00\x00%2o%2c" - burnCommand = "B\x00\x00" - pageActivate = "P\x00\x00" - pageValueWrite = "W\x00\x00%2o%v" - pageChunkWrite = "C\x00\x00%2o%2c%v" -; crc32CheckCommand = "k%2i%2o\xB8\x36" - crc32CheckCommand = "k\x00\x00\x00\x00\x36\xB8" - -;communication settings - pageActivationDelay = 500 ; Milliseconds delay after burn command. See https://sourceforge.net/p/rusefi/tickets/77/ -;e.g. put writeblocks off and add an interwrite delay - writeBlocks = on - interWriteDelay = 10 - blockReadTimeout = 3000; Milliseconds general timeout - - blockingFactor = 400 ; max chunk size -;end communication settings - - ; name = bits, type, offset, bits - ; name = array, type, offset, shape, units, scale, translate, lo, hi, digits - ; name = scalar, type, offset, units, scale, translate, lo, hi, digits - -; see PAGE_0_SIZE in C source code -; CONFIG_DEFINITION_START -; this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sat Feb 18 13:57:17 EST 2017 - -pageSize = 16376 -page = 1 - engineType = bits, S32, 0, [0:2], "AUDI_AAN", "DODGE_NEON_1995", "FORD_ASPIRE_1996", "FORD_FIESTA", "NISSAN_PRIMERA", "HONDA_ACCORD", "FORD_INLINE_6_1995", "GY6_139QMB" - engineSnifferRpmThreshold = scalar, S32, 4, "RPM", 1, 0, 0,30000, 0 - injector_flow = scalar, F32, 8, "cm3/min", 1, 0, 0, 1000, 2 -;skipping injector_unusedlag offset 12 - injector_battLagCorrBins = array, F32, 16, [8], "V", 1, 0, 0.0, 20.0, 2 - injector_battLagCorr = array, F32, 48, [8], "ms/V", 1, 0, 0.0, 50.0, 2 - directSelfStimulation = bits, U32, 80, [0:0], "false", "true" - activateAuxPid1 = bits, U32, 80, [1:1], "false", "true" - isVerboseAuxPid1 = bits, U32, 80, [2:2], "false", "true" - activateAuxPid2 = bits, U32, 80, [3:3], "false", "true" - isVerboseAuxPid2 = bits, U32, 80, [4:4], "false", "true" - activateAuxPid3 = bits, U32, 80, [5:5], "false", "true" - isVerboseAuxPid3 = bits, U32, 80, [6:6], "false", "true" - activateAuxPid4 = bits, U32, 80, [7:7], "false", "true" - isVerboseAuxPid4 = bits, U32, 80, [8:8], "false", "true" - useBiQuadAnalogFiltering= bits, U32, 80, [9:9], "false", "true" - issue_294_10 = bits, U32, 80, [10:10], "false", "true" - issue_294_11 = bits, U32, 80, [11:11], "false", "true" - issue_294_12 = bits, U32, 80, [12:12], "false", "true" - issue_294_13 = bits, U32, 80, [13:13], "false", "true" - issue_294_14 = bits, U32, 80, [14:14], "false", "true" - issue_294_15 = bits, U32, 80, [15:15], "false", "true" - issue_294_16 = bits, U32, 80, [16:16], "false", "true" - issue_294_17 = bits, U32, 80, [17:17], "false", "true" - issue_294_18 = bits, U32, 80, [18:18], "false", "true" - issue_294_19 = bits, U32, 80, [19:19], "false", "true" - issue_294_21 = bits, U32, 80, [20:20], "false", "true" - issue_294_22 = bits, U32, 80, [21:21], "false", "true" - issue_294_23 = bits, U32, 80, [22:22], "false", "true" - issue_294_24 = bits, U32, 80, [23:23], "false", "true" - issue_294_25 = bits, U32, 80, [24:24], "false", "true" - issue_294_26 = bits, U32, 80, [25:25], "false", "true" - issue_294_27 = bits, U32, 80, [26:26], "false", "true" - issue_294_28 = bits, U32, 80, [27:27], "false", "true" - issue_294_29 = bits, U32, 80, [28:28], "false", "true" - tpsMin = scalar, S16, 84, "ADC", 1, 0, 0, 1023, 0 - tpsMax = scalar, S16, 86, "ADC", 1, 0, 0, 1023, 0 - tpsErrorDetectionTooLow = scalar, S16, 88, "%", 1, 0, -40, 200, 0 - tpsErrorDetectionTooHigh = scalar, S16, 90, "%", 1, 0, -40, 200, 0 - cranking_baseFuel = scalar, F32, 92, "ms", 1, 0, 0, 200, 1 - cranking_rpm = scalar, S16, 96, "RPM", 1, 0, 0, 3000, 0 -;skipping cranking_alignmentFill offset 98 - primingSquirtDurationMs = scalar, F32, 100, "*C", 1, 0, -40, 200, 1 - ignitionDwellForCrankingMs = scalar, F32, 104, "ms", 1, 0, 0, 200, 1 - crankingChargeAngle = scalar, F32, 108, "deg", 1, 0, 0, 3000.0, 0 - map_samplingAngleBins = array, F32, 112, [8], "RPM", 1, 0, 0.0, 18000, 2 - map_samplingAngle = array, F32, 144, [8], "deg", 1, 0, 0.0, 90, 2 - map_samplingWindowBins = array, F32, 176, [8], "RPM", 1, 0, 0.0, 18000, 2 - map_samplingWindow = array, F32, 208, [8], "deg", 1, 0, 0.0, 90, 2 - map_sensor_lowValue = scalar, F32, 240, "kpa", 1, 0, -400, 800, 2 - map_sensor_highValue = scalar, F32, 244, "kpa", 1, 0, -400, 800, 2 - map_sensor_type = bits, U32, 248, [0:2] "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "3 Bar", "INVALID" - map_sensor_hwChannel = bits, U32, 252, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - clt_tempC_1 = scalar, F32, 256, "*C", 1, 0, -40, 200, 1 - clt_tempC_2 = scalar, F32, 260, "*C", 1, 0, -40, 200, 1 - clt_tempC_3 = scalar, F32, 264, "*C", 1, 0, -40, 200, 1 - clt_resistance_1 = scalar, F32, 268, "Ohm", 1, 0, 0, 200000, 1 - clt_resistance_2 = scalar, F32, 272, "Ohm", 1, 0, 0, 200000, 1 - clt_resistance_3 = scalar, F32, 276, "Ohm", 1, 0, 0, 200000, 1 - clt_bias_resistor = scalar, F32, 280, "Ohm", 1, 0, 0, 200000, 1 - clt_adcChannel = bits, U32, 284, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - iat_tempC_1 = scalar, F32, 288, "*C", 1, 0, -40, 200, 1 - iat_tempC_2 = scalar, F32, 292, "*C", 1, 0, -40, 200, 1 - iat_tempC_3 = scalar, F32, 296, "*C", 1, 0, -40, 200, 1 - iat_resistance_1 = scalar, F32, 300, "Ohm", 1, 0, 0, 200000, 1 - iat_resistance_2 = scalar, F32, 304, "Ohm", 1, 0, 0, 200000, 1 - iat_resistance_3 = scalar, F32, 308, "Ohm", 1, 0, 0, 200000, 1 - iat_bias_resistor = scalar, F32, 312, "Ohm", 1, 0, 0, 200000, 1 - iat_adcChannel = bits, U32, 316, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - step1rpm = scalar, S32, 320, "rpm", 1, 0, 0, 20000.0, 2 - step1timing = scalar, S32, 324, "deg", 1, 0, -180, 180, 2 - hip9011PrescalerAndSDO = scalar, S32, 328, "integer", 1, 0.0, 0.0, 32, 0 - knockBandCustom = scalar, F32, 332, "kHz", 1, 0.0, 0.0, 10.0, 2 - sparkDwellRpmBins = array, F32, 336, [8], "RPM", 1, 0.0, 0.0, 18000, 2 - sparkDwellValues = array, F32, 368, [8], "ms", 1, 0.0, 0.0, 30.0, 2 - displacement = scalar, F32, 400, "L", 1, 0, 0, 1000.0, 2 - cylindersCount = bits, U32, 404, [0:3], "INVALID", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, "INVALID", "INVALID", "INVALID" - firingOrder = bits, U32, 408, [0:4], "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", "fo16", "fo17", "INVALID" - cylinderBore = scalar, F32, 412, "mm", 1, 0, 0, 20000.0, 2 - sensorSnifferRpmThreshold = scalar, S32, 416, "RPM", 1, 0, 0,30000, 0 - rpmHardLimit = scalar, S32, 420, "rpm", 1, 0, 0, 20000.0, 2 - fuelAlgorithm = bits, U32, 424, [0:1], "MAF", "Alpha-N/TPS", "MAP", "SPEED DENSITY" - crankingInjectionMode = bits, U32, 428, [0:1], "Simultaneous", "Sequential", "Batch", "INVALID" - injectionMode = bits, U32, 432, [0:1], "Simultaneous", "Sequential", "Batch", "INVALID" - extraInjectionOffset = scalar, F32, 436, "deg", 1, 0.0, -720, 720, 2 - crankingTimingAngle = scalar, F32, 440, "deg", 1, 0.0, -360, 360, 2 - ignitionMode = bits, U32, 444, [0:1], "One coil", "Individual Coils", "Wasted", "INVALID" - ignitionOffset = scalar, F32, 448, "RPM", 1, 0, 0, 3000.0, 0 - timingMode = bits, U32, 452 [0:0], "dynamic", "fixed" - fixedModeTiming = scalar, F32, 456, "RPM", 1, 0, 0, 3000.0, 0 - globalTriggerAngleOffset = scalar, F32, 460, "deg", 1, 0, -720, 720, 0 - analogInputDividerCoefficient = scalar, F32, 464, "coef", 1, 0, 0.01, 10.0, 2 - vbattDividerCoeff = scalar, F32, 468, "coef", 1, 0, 0.01, 99.0, 2 - vbattAdcChannel = bits, U32, 472, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fanOnTemperature = scalar, F32, 476, "*C", 1, 0, 0, 1000.0, 2 - fanOffTemperature = scalar, F32, 480, "*C", 1, 0, 0, 1000.0, 2 - fuelLevelSensor = bits, U32, 484, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - vehicleSpeedCoef = scalar, F32, 488, "coef", 1, 0, 0.01, 2000.0, 2 - canNbcType = bits, U32, 492, [0:1], "BMW", "FIAT", "VAG" , "MAZDA RX8" - canSleepPeriod = scalar, S32, 496, "ms", 1, 0, 0, 1000.0, 2 - operationMode = bits, U32, 500, [0:2], "INVALID", "4 stroke without cam sensor", "4 stroke with cam sensor", "2 stroke", "4 stroke with symmetrical crank", "INVALID", "INVALID", "INVALID" - displayMode = bits, U32, 504, [0:1], "none", "hd44780", "hd44780 over pcf8574", "INVALID" - logFormat = bits, U32, 508, [0:0], "native", "Mega Log Viewer" - byFirmwareVersion = scalar, S32, 512, "index", 1, 0, 0, 300, 0 - HD44780width = scalar, S32, 516, "index", 1, 0, 0, 300, 0 - HD44780height = scalar, S32, 520, "index", 1, 0, 0, 300, 0 - tpsAdcChannel = bits, U32, 524, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -;skipping overrideCrankingIgnition offset 528 - sensorChartFrequency = scalar, S32, 532, "index", 1, 0, 0, 300, 0 ; size 4 - trigger_type = bits, U32, 536, [0:5], "custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "Miata NB", "GM_7X", "Cooper R50", "Mazda SOHC 4", "60/2", "36/1", "Honda 4+24+1", "Mitsubishi", "Honda 4+24", "Honda 1+4+24", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "1+60/2", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Honda 1+24", "Dodge Stratus", "36_2_2_2", "Nissan", "2JZ", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped" , "Dodge Neon 2003 crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "Jeep 18-2-2-2", "trg38", "trg39", "INVALID" - trigger_unusedCustomIsSynchronizationNeeded= bits, U32, 540, [0:0], "false", "true" - trigger_unusedCustomNeedSecondTriggerInput= bits, U32, 540, [1:1], "false", "true" - trigger_useOnlyFirstChannel= bits, U32, 540, [2:2], "false", "true" - trigger_customTotalToothCount = scalar, S32, 544, "number", 1, 0.0, 0, 500.0, 0 - trigger_customSkippedToothCount = scalar, S32, 548, "number", 1, 0.0, 0, 500.0, 0 - trigger_unusedcustomSyncRatioFrom = scalar, F32, 552, "number", 1, 0.0, 0, 1000.0, 4 - trigger_unusedcustomSyncRatioTo = scalar, F32, 556, "number", 1, 0.0, 0, 1000.0, 4 - trigger_customUseRiseEdge = bits, U32, 560, [0:0], "false", "true" - hip9011SpiDevice = bits,U32, 564, [0:1], "Off", "SPI1", "SPI2", "SPI3" - globalFuelCorrection = scalar, F32, 568, "coef", 1, 0.0, 0, 1000.0, 2 - pedalPositionMin = scalar, S16, 572, "ADC", 1, 0, 0, 1023, 0 - pedalPositionMax = scalar, S16, 574, "ADC", 1, 0, 0, 1023, 0 -;skipping maxKnockSubDeg offset 576 - mafAdcChannel = bits, U32, 580, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - afr_hwChannel = bits, U32, 584, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - afr_v1 = scalar, F32, 588, "volts", 1, 0.0, 0, 10.0, 2 - afr_value1 = scalar, F32, 592, "AFR", 1, 0.0, 0, 1000.0, 2 - afr_v2 = scalar, F32, 596, "volts", 1, 0.0, 0, 10.0, 2 - afr_value2 = scalar, F32, 600, "AFR", 1, 0.0, 0, 1000.0, 2 - pedalPositionChannel = bits, U32, 604, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - baroSensor_lowValue = scalar, F32, 608, "kpa", 1, 0, -400, 800, 2 - baroSensor_highValue = scalar, F32, 612, "kpa", 1, 0, -400, 800, 2 - baroSensor_type = bits, U32, 616, [0:2] "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "3 Bar", "INVALID" - baroSensor_hwChannel = bits, U32, 620, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - idle_solenoidPin = bits, U32, 624, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 628, [0:1], "default", "default inverted", "open collector", "open collector inverted" - idle_solenoidFrequency = scalar, S32, 632, "Hz", 1, 0, 0, 3000, 0 - idle_stepperDirectionPin = bits, U32, 636, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 640, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - manIdlePosition = scalar, F32, 644, "%", 1, 0, 0, 100, 0 - fuelPumpPin = bits, U32, 648, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 652, [0:1], "default", "default inverted", "open collector", "open collector inverted" - injectionPins1 = bits, U32, 656, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 660, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 664, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 668, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 672, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 676, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 680, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 684, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 688, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 692, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 696, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 700, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 704, [0:1], "default", "default inverted", "open collector", "open collector inverted" - ignitionPins1 = bits, U32, 708, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 712, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 716, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 720, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 724, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 728, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 732, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 736, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 740, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 744, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 748, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 752, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - ignitionPinMode = bits, U32, 756, [0:1], "default", "default inverted", "open collector", "open collector inverted" - malfunctionIndicatorPin = bits, U32, 760, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 764, [0:1], "default", "default inverted", "open collector", "open collector inverted" - fanPin = bits, U32, 768, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fanPinMode = bits, U32, 772, [0:1], "default", "default inverted", "open collector", "open collector inverted" - mapFrequency0Kpa = scalar, F32, 776, "Hz", 1, 0, 0, 100000, 2 - mapFrequency100Kpa = scalar, F32, 780, "Hz", 1, 0, 0, 100000, 2 - clutchDownPin = bits, U32, 784, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - clutchDownPinMode = scalar, F32, 788, "ms", 1, 0, 0, 200, 1 - alternatorControlPin = bits, U32, 792, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 796, [0:1], "default", "default inverted", "open collector", "open collector inverted" - HD44780_rs = bits, U32, 800, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 804, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 808, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 812, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 816, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 820, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 824, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 828, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, 832, "Rpm", 1, 0, 0,30000, 0 - digitalPotentiometerSpiDevice = bits,U32, 836, [0:1], "Off", "SPI1", "SPI2", "SPI3" - digitalPotentiometerChipSelect1 = bits, U32, 840, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 844, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 848, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 852, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - etbDirectionPin1 = bits, U32, 856, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - etbDirectionPin2 = bits, U32, 860, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - etbControlPin1 = bits, U32, 864, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - etbControlPin2 = bits, U32, 868, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 872, [0:1], "default", "default inverted", "open collector", "open collector inverted" - wboHeaterPin = bits, U32, 876, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 880, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fuelLevelEmptyTankVoltage = scalar, F32, 884, "V", 1, 0, 0,10, 2 - fuelLevelFullTankVoltage = scalar, F32, 888, "V", 1, 0, 0,10, 2 - afr_type = bits, S32, 892, [0:2], "BPSX", "Innovate", "14Point7", "Narrow", "PLX" -;skipping etbDT offset 896 - hip9011CsPinMode = bits, U32, 900, [0:1], "default", "default inverted", "open collector", "open collector inverted" - tachOutputPin = bits, U32, 904, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 908, [0:1], "default", "default inverted", "open collector", "open collector inverted" - triggerInputPins1 = bits, U32, 912, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 916, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 920, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - mainRelayPin = bits, U32, 924, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -;skipping idleThreadPeriod offset 928 -;skipping consoleLoopPeriod offset 932 -;skipping lcdThreadPeriod offset 936 - sdCardCsPin = bits, U32, 940, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -;skipping generalPeriodicThreadPeriod offset 944 - tunerStudioSerialSpeed = scalar, U32, 948, "BPs", 1, 0, 0,1000000, 0 - boardTestModeJumperPin = bits, U32, 952, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -;skipping canDeviceMode offset 956 - canTxPin = bits, U32, 960, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 964, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - triggerSimulatorPins1 = bits, U32, 968, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 972, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 976, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 980, [0:1], "default", "default inverted", "open collector", "open collector inverted" - triggerSimulatorPinModes2 = bits, U32, 984, [0:1], "default", "default inverted", "open collector", "open collector inverted" - triggerSimulatorPinModes3 = bits, U32, 988, [0:1], "default", "default inverted", "open collector", "open collector inverted" - o2heaterPin = bits, U32, 992, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 996, [0:1], "default", "default inverted", "open collector", "open collector inverted" - is_enabled_spi_1 = bits, U32, 1000, [0:0], "false", "true" - is_enabled_spi_2 = bits, U32, 1000, [1:1], "false", "true" - is_enabled_spi_3 = bits, U32, 1000, [2:2], "false", "true" - isSdCardEnabled = bits, U32, 1000, [3:3], "false", "true" - isFastAdcEnabled = bits, U32, 1000, [4:4], "false", "true" - isEngineControlEnabled = bits, U32, 1000, [5:5], "false", "true" - isHip9011Enabled = bits, U32, 1000, [6:6], "false", "true" - isVerboseAlternator = bits, U32, 1000, [7:7], "false", "true" - useSerialPort = bits, U32, 1000, [8:8], "false", "true" - useStepperIdle = bits, U32, 1000, [9:9], "false", "true" - enabledStep1Limiter = bits, U32, 1000, [10:10], "false", "true" - useTpicAdvancedMode = bits, U32, 1000, [11:11], "false", "true" - useLcdScreen = bits, U32, 1000, [12:12], "false", "true" - startConsoleInBinaryMode= bits, U32, 1000, [13:13], "false", "true" - useWarmupPidAfr = bits, U32, 1000, [14:14], "false", "true" - onOffAlternatorLogic = bits, U32, 1000, [15:15], "false", "true" - isCJ125Enabled = bits, U32, 1000, [16:16], "false", "true" - vvtCamSensorUseRise = bits, U32, 1000, [17:17], "false", "true" - logicAnalyzerPins1 = bits, U32, 1004, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1008, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1012, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1016, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -;skipping logicAnalyzerMode offset 1020 -;skipping unrealisticRpmThreashold offset 1024 - mainRelayPinMode = bits, U32, 1028, [0:1], "default", "default inverted", "open collector", "open collector inverted" - max31855_cs1 = bits, U32, 1032, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1036, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1040, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1044, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1048, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1052, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1056, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1060, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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,U32, 1064, [0:1], "Off", "SPI1", "SPI2", "SPI3" - fsioPins1 = bits, U32, 1068, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioPins2 = bits, U32, 1072, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioPins3 = bits, U32, 1076, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioPins4 = bits, U32, 1080, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioPins5 = bits, U32, 1084, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioPins6 = bits, U32, 1088, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioPins7 = bits, U32, 1092, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioPins8 = bits, U32, 1096, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioPins9 = bits, U32, 1100, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioPins10 = bits, U32, 1104, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioPins11 = bits, U32, 1108, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioPins12 = bits, U32, 1112, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioPins13 = bits, U32, 1116, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioPins14 = bits, U32, 1120, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioPins15 = bits, U32, 1124, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioPins16 = bits, U32, 1128, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - gpioPinModes1 = bits, U32, 1132, [0:1], "default", "default inverted", "open collector", "open collector inverted" - gpioPinModes2 = bits, U32, 1136, [0:1], "default", "default inverted", "open collector", "open collector inverted" - gpioPinModes3 = bits, U32, 1140, [0:1], "default", "default inverted", "open collector", "open collector inverted" - gpioPinModes4 = bits, U32, 1144, [0:1], "default", "default inverted", "open collector", "open collector inverted" - gpioPinModes5 = bits, U32, 1148, [0:1], "default", "default inverted", "open collector", "open collector inverted" - gpioPinModes6 = bits, U32, 1152, [0:1], "default", "default inverted", "open collector", "open collector inverted" - gpioPinModes7 = bits, U32, 1156, [0:1], "default", "default inverted", "open collector", "open collector inverted" - gpioPinModes8 = bits, U32, 1160, [0:1], "default", "default inverted", "open collector", "open collector inverted" - gpioPinModes9 = bits, U32, 1164, [0:1], "default", "default inverted", "open collector", "open collector inverted" - gpioPinModes10 = bits, U32, 1168, [0:1], "default", "default inverted", "open collector", "open collector inverted" - gpioPinModes11 = bits, U32, 1172, [0:1], "default", "default inverted", "open collector", "open collector inverted" - gpioPinModes12 = bits, U32, 1176, [0:1], "default", "default inverted", "open collector", "open collector inverted" - gpioPinModes13 = bits, U32, 1180, [0:1], "default", "default inverted", "open collector", "open collector inverted" - gpioPinModes14 = bits, U32, 1184, [0:1], "default", "default inverted", "open collector", "open collector inverted" - gpioPinModes15 = bits, U32, 1188, [0:1], "default", "default inverted", "open collector", "open collector inverted" - gpioPinModes16 = bits, U32, 1192, [0:1], "default", "default inverted", "open collector", "open collector inverted" - consoleUartDevice = bits,U32, 1196, [0:1], "Off", "UART1", "UART2", "UART3" -;skipping unused77 offset 1200 -;skipping unused78 offset 1204 - nb2ratioFrom = scalar, F32, 1208, "value", 1, 0, 0, 1000, 5 - nb2ratioTo = scalar, F32, 1212, "value", 1, 0, 0, 1000, 5 - triggerErrorPin = bits, U32, 1216, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1220, [0:1], "default", "default inverted", "open collector", "open collector inverted" - acRelayPin = bits, U32, 1224, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1228, [0:1], "default", "default inverted", "open collector", "open collector inverted" - fsioFrequency1 = scalar, U16, 1232, "Hz", 1, 0, 0, 3000, 0 - fsioFrequency2 = scalar, U16, 1234, "Hz", 1, 0, 0, 3000, 0 - fsioFrequency3 = scalar, U16, 1236, "Hz", 1, 0, 0, 3000, 0 - fsioFrequency4 = scalar, U16, 1238, "Hz", 1, 0, 0, 3000, 0 - fsioFrequency5 = scalar, U16, 1240, "Hz", 1, 0, 0, 3000, 0 - fsioFrequency6 = scalar, U16, 1242, "Hz", 1, 0, 0, 3000, 0 - fsioFrequency7 = scalar, U16, 1244, "Hz", 1, 0, 0, 3000, 0 - fsioFrequency8 = scalar, U16, 1246, "Hz", 1, 0, 0, 3000, 0 - fsioFrequency9 = scalar, U16, 1248, "Hz", 1, 0, 0, 3000, 0 - fsioFrequency10 = scalar, U16, 1250, "Hz", 1, 0, 0, 3000, 0 - fsioFrequency11 = scalar, U16, 1252, "Hz", 1, 0, 0, 3000, 0 - fsioFrequency12 = scalar, U16, 1254, "Hz", 1, 0, 0, 3000, 0 - fsioFrequency13 = scalar, U16, 1256, "Hz", 1, 0, 0, 3000, 0 - fsioFrequency14 = scalar, U16, 1258, "Hz", 1, 0, 0, 3000, 0 - fsioFrequency15 = scalar, U16, 1260, "Hz", 1, 0, 0, 3000, 0 - fsioFrequency16 = scalar, U16, 1262, "Hz", 1, 0, 0, 3000, 0 - hip9011CsPin = bits, U32, 1264, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1268, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1272, [0:1], "default", "default inverted", "open collector", "open collector inverted" - fsio_setting1 = scalar, F32, 1276, "Val", 1, 0, 0, 18000, 4 - fsio_setting2 = scalar, F32, 1280, "Val", 1, 0, 0, 18000, 4 - fsio_setting3 = scalar, F32, 1284, "Val", 1, 0, 0, 18000, 4 - fsio_setting4 = scalar, F32, 1288, "Val", 1, 0, 0, 18000, 4 - fsio_setting5 = scalar, F32, 1292, "Val", 1, 0, 0, 18000, 4 - fsio_setting6 = scalar, F32, 1296, "Val", 1, 0, 0, 18000, 4 - fsio_setting7 = scalar, F32, 1300, "Val", 1, 0, 0, 18000, 4 - fsio_setting8 = scalar, F32, 1304, "Val", 1, 0, 0, 18000, 4 - fsio_setting9 = scalar, F32, 1308, "Val", 1, 0, 0, 18000, 4 - fsio_setting10 = scalar, F32, 1312, "Val", 1, 0, 0, 18000, 4 - fsio_setting11 = scalar, F32, 1316, "Val", 1, 0, 0, 18000, 4 - fsio_setting12 = scalar, F32, 1320, "Val", 1, 0, 0, 18000, 4 - fsio_setting13 = scalar, F32, 1324, "Val", 1, 0, 0, 18000, 4 - fsio_setting14 = scalar, F32, 1328, "Val", 1, 0, 0, 18000, 4 - fsio_setting15 = scalar, F32, 1332, "Val", 1, 0, 0, 18000, 4 - fsio_setting16 = scalar, F32, 1336, "Val", 1, 0, 0, 18000, 4 - spi1mosiPin = bits, U32, 1340, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1344, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1348, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1352, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1356, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1360, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1364, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1368, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1372, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -;skipping hip9011Gain offset 1376 - joystickCenterPin = bits, U32, 1380, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1384, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1388, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1392, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1396, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - sensorChartMode = bits, S32, 1400, [0:2], "none", "trigger", "MAP", "RPM ACCEL", "DETAILED RPM", "INVALID" -;skipping mafSensorType offset 1404 - vehicleSpeedSensorInputPin = bits, U32, 1408, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1412, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - clutchUpPinMode = scalar, F32, 1416, "ms", 1, 0, 0, 200, 1 - fsioDigitalInputs1 = bits, U32, 1420, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioDigitalInputs2 = bits, U32, 1424, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioDigitalInputs3 = bits, U32, 1428, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioDigitalInputs4 = bits, U32, 1432, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioDigitalInputs5 = bits, U32, 1436, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioDigitalInputs6 = bits, U32, 1440, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioDigitalInputs7 = bits, U32, 1444, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioDigitalInputs8 = bits, U32, 1448, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioDigitalInputs9 = bits, U32, 1452, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioDigitalInputs10 = bits, U32, 1456, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioDigitalInputs11 = bits, U32, 1460, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioDigitalInputs12 = bits, U32, 1464, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioDigitalInputs13 = bits, U32, 1468, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioDigitalInputs14 = bits, U32, 1472, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioDigitalInputs15 = bits, U32, 1476, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioDigitalInputs16 = bits, U32, 1480, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - frequencyReportingMapInputPin = bits, U32, 1484, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - vvtDisplayInverted = bits, U32, 1488, [0:0], "false", "true" - fuelClosedLoopCorrectionEnabled= bits, U32, 1488, [1:1], "false", "true" - unusedBit__5 = bits, U32, 1488, [2:2], "false", "true" - unusedBit__6 = bits, U32, 1488, [3:3], "false", "true" - useConstantDwellDuringCranking= bits, U32, 1488, [4:4], "false", "true" - isEngineChartEnabled = bits, U32, 1488, [5:5], "false", "true" - unusedBit_7 = bits, U32, 1488, [6:6], "false", "true" - unusedBit__2 = bits, U32, 1488, [7:7], "false", "true" - canReadEnabled = bits, U32, 1488, [8:8], "false", "true" - canWriteEnabled = bits, U32, 1488, [9:9], "false", "true" - unusedBit_123 = bits, U32, 1488, [10:10], "false", "true" - unusedbit_9 = bits, U32, 1488, [11:11], "false", "true" - unusedbit_10 = bits, U32, 1488, [12:12], "false", "true" - isAlternatorControlEnabled= bits, U32, 1488, [13:13], "false", "true" - unusedBit__3 = bits, U32, 1488, [14:14], "false", "true" - unusedbit_8 = bits, U32, 1488, [15:15], "false", "true" - cutFuelOnHardLimit = bits, U32, 1488, [16:16], "false", "true" - cutSparkOnHardLimit = bits, U32, 1488, [17:17], "false", "true" - step1fuelCutEnable = bits, U32, 1488, [18:18], "false", "true" - step1SparkCutEnable = bits, U32, 1488, [19:19], "false", "true" - hasFrequencyReportingMapSensor= bits, U32, 1488, [20:20], "false", "true" - hipOutputChannel = bits, U32, 1492, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - idleMode = bits, U32, 1496, [0:0], "false", "true" - isInjectionEnabled = bits, U32, 1500, [0:0], "false", "true" - isIgnitionEnabled = bits, U32, 1500, [1:1], "false", "true" - isCylinderCleanupEnabled= bits, U32, 1500, [2:2], "false", "true" - secondTriggerChannelEnabled= bits, U32, 1500, [3:3], "false", "true" - needSecondTriggerInputDeprecated= bits, U32, 1500, [4:4], "false", "true" - isMapAveragingEnabled = bits, U32, 1500, [5:5], "false", "true" - anotherUnusedBit1 = bits, U32, 1500, [6:6], "false", "true" - anotherUnusedBit2 = bits, U32, 1500, [7:7], "false", "true" - isTunerStudioEnabled = bits, U32, 1500, [8:8], "false", "true" - isWaveAnalyzerEnabled = bits, U32, 1500, [9:9], "false", "true" - anotherUnusedBit212 = bits, U32, 1500, [10:10], "false", "true" - isPrintTriggerSynchDetails= bits, U32, 1500, [11:11], "false", "true" - isManualSpinningMode = bits, U32, 1500, [12:12], "false", "true" - twoWireBatchInjection = bits, U32, 1500, [13:13], "false", "true" - useOnlyRisingEdgeForTrigger= bits, U32, 1500, [14:14], "false", "true" - twoWireBatchIgnition = bits, U32, 1500, [15:15], "false", "true" - engineChartSize = scalar, U32, 1504, "count", 1, 0, 0, 300, 0 - targetIdleRpm = scalar, S32, 1508, "RPM", 1, 0, 0, 7000, 0 - acSwitchAdc = bits, U32, 1512, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - ignMathCalculateAtIndex = scalar, S32, 1516, "index", 1, 0, 0, 7000, 0 -;skipping acCutoffLowRpm offset 1520 -;skipping acCutoffHighRpm offset 1522 -;skipping acIdleRpmBump offset 1524 - warningPeriod = scalar, S16, 1526, "seconds", 1, 0, 0, 60, 0 - vRefAdcChannel = bits, U32, 1528, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -;skipping knockDetectionWindowStart offset 1532 -;skipping knockDetectionWindowEnd offset 1536 - idleStepperReactionTime = scalar, F32, 1540, "ms", 1, 0, 1, 300, 0 - knockVThreshold = scalar, F32, 1544, "V", 1, 0, 1, 5, 2 - fsioInputModes1 = scalar, F32, 1548, "ms", 1, 0, 0, 200, 1 - fsioInputModes2 = scalar, F32, 1552, "ms", 1, 0, 0, 200, 1 - fsioInputModes3 = scalar, F32, 1556, "ms", 1, 0, 0, 200, 1 - fsioInputModes4 = scalar, F32, 1560, "ms", 1, 0, 0, 200, 1 - fsioInputModes5 = scalar, F32, 1564, "ms", 1, 0, 0, 200, 1 - fsioInputModes6 = scalar, F32, 1568, "ms", 1, 0, 0, 200, 1 - fsioInputModes7 = scalar, F32, 1572, "ms", 1, 0, 0, 200, 1 - fsioInputModes8 = scalar, F32, 1576, "ms", 1, 0, 0, 200, 1 - fsioInputModes9 = scalar, F32, 1580, "ms", 1, 0, 0, 200, 1 - fsioInputModes10 = scalar, F32, 1584, "ms", 1, 0, 0, 200, 1 - fsioInputModes11 = scalar, F32, 1588, "ms", 1, 0, 0, 200, 1 - fsioInputModes12 = scalar, F32, 1592, "ms", 1, 0, 0, 200, 1 - fsioInputModes13 = scalar, F32, 1596, "ms", 1, 0, 0, 200, 1 - fsioInputModes14 = scalar, F32, 1600, "ms", 1, 0, 0, 200, 1 - fsioInputModes15 = scalar, F32, 1604, "ms", 1, 0, 0, 200, 1 - fsioInputModes16 = scalar, F32, 1608, "ms", 1, 0, 0, 200, 1 - externalKnockSenseAdc = bits, U32, 1612, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -;skipping unsed2342342 offset 1616 - idleStepperTotalSteps = scalar, S32, 1628, "count", 1, 0, 5, 3000, 0 - stepperEnablePin = bits, U32, 1632, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - noAccelAfterHardLimitPeriodSecs = scalar, F32, 1636, "sec", 1, 0, 0, 60, 0 - mapAveragingSchedulingAtIndex = scalar, S32, 1640, "index", 1, 0, 0, 7000, 0 - baroCorrPressureBins = array, F32, 1644, [4], "kPa", 1, 0, 0.0, 200, 2 - baroCorrRpmBins = array, F32, 1660, [4], "RPM", 1, 0, 0.0, 18000, 2 - baroCorrTable = array, F32, 1676, [4x4],"%", 1, 0, 0, 999.0, 2 - spi2SckMode = bits, U32, 1740, [0:5], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "mode12", "mode13", "mode14", "mode15", "mode16", "mode17", "mode18", "mode19", "mode20", "mode21", "mode22", "mode23", "mode24", "mode25", "mode26", "mode27", "mode28", "mode29", "mode30", "mode31", "PULLUP", "mode33", "mode34", "mode35" - spi2MosiMode = bits, U32, 1744, [0:5], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "mode12", "mode13", "mode14", "mode15", "mode16", "mode17", "mode18", "mode19", "mode20", "mode21", "mode22", "mode23", "mode24", "mode25", "mode26", "mode27", "mode28", "mode29", "mode30", "mode31", "PULLUP", "mode33", "mode34", "mode35" - spi2MisoMode = bits, U32, 1748, [0:5], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "mode12", "mode13", "mode14", "mode15", "mode16", "mode17", "mode18", "mode19", "mode20", "mode21", "mode22", "mode23", "mode24", "mode25", "mode26", "mode27", "mode28", "mode29", "mode30", "mode31", "PULLUP", "mode33", "mode34", "mode35" - crankingTpsCoef = array, F32, 1752, [8], "%", 1, 0, 0.0, 700.0, 2 - crankingTpsBins = array, F32, 1784, [8], "%", 1, 0, 0.0, 100.0, 2 - tachPulseDuractionMs = scalar, F32, 1816, "ms", 1, 0, 0.0, 100.0, 2 - tachPulseTriggerIndex = scalar, S32, 1820, "index", 1, 0, 0.0, 360.0, 0 - suckedOffCoef = scalar, F32, 1824, "%", 1, 0, 0.0, 300.0, 2 - unused71 = array, F32, 1828, [7], - addedToWallCoef = scalar, F32, 1856, "%", 1, 0, 0.0, 300.0, 2 - unused72 = array, F32, 1860, [7], - mapErrorDetectionTooLow = scalar, F32, 1888, "kPa", 1, 0, -100.0, 100.0, 2 - mapErrorDetectionTooHigh = scalar, F32, 1892, "kPa", 1, 0, -100.0, 800.0, 2 - step1RpmWindow = scalar, S32, 1896, "rpm", 1, 0, 0, 3000.0, 2 - idleRpmPid_pFactor = scalar, F32, 1900, "value", 1, 0, -1000, 1000, 5 - idleRpmPid_iFactor = scalar, F32, 1904, "value", 1, 0, -1000, 1000, 5 - idleRpmPid_dFactor = scalar, F32, 1908, "value", 1, 0, -1000, 1000, 5 - idleRpmPid_offset = scalar, F32, 1912, "value", 1, 0, 0, 1000, 3 -;skipping idleDT offset 1916 -;skipping idleControl offset 1920 - communicationPin = bits, U32, 1924, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - runningPin = bits, U32, 1928, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1932, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1936, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - consoleSerialTxPin = bits, U32, 1940, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - consoleSerialRxPin = bits, U32, 1944, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - knockNoise = array, F32, 1948, [8], "v", 1, 0, 0.0, 10, 2 - knockNoiseRpmBins = array, F32, 1980, [8], "RPM", 1, 0, 0.0, 18000, 2 - etb_pFactor = scalar, F32, 2012, "value", 1, 0, -1000, 1000, 5 - etb_iFactor = scalar, F32, 2016, "value", 1, 0, -1000, 1000, 5 - etb_dFactor = scalar, F32, 2020, "value", 1, 0, -1000, 1000, 5 - etb_offset = scalar, F32, 2024, "value", 1, 0, 0, 1000, 3 - cltIdleRpmBins = array, F32, 2028, [16], "C", 1, 0, -100.0, 250.0, 2 - cltIdleRpm = array, F32, 2092, [16], "RPM", 1, 0, 0.0, 400.0, 0 - targetVBatt = scalar, F32, 2156, "Volts", 1, 0, 0,30, 1 - alternatorOffAboveTps = scalar, F32, 2160, "%", 1, 0, 0, 200, 2 - alternatorDT = scalar, S32, 2164, "ms", 1, 0, 0, 3000, 0 - alternatorControl_pFactor = scalar, F32, 2168, "value", 1, 0, -1000, 1000, 5 - alternatorControl_iFactor = scalar, F32, 2172, "value", 1, 0, -1000, 1000, 5 - alternatorControl_dFactor = scalar, F32, 2176, "value", 1, 0, -1000, 1000, 5 - alternatorControl_offset = scalar, F32, 2180, "value", 1, 0, 0, 1000, 3 - tpsAccelLength = scalar, S32, 2184, "cycles", 1, 0, 1, 200, 0 - tpsAccelEnrichmentThreshold = scalar, F32, 2188, "roc", 1, 0, 0, 200, 3 - vvtOffset = scalar, F32, 2192, "value", 1, 0, -720, 1000, 5 - engineLoadAccelLength = scalar, S32, 2196, "cycles", 1, 0, 1, 200, 0 - engineLoadDecelEnleanmentThreshold = scalar, F32, 2200, "roc", 1, 0, 0, 200, 3 - engineLoadDecelEnleanmentMultiplier = scalar, F32, 2204, "coeff", 1, 0, 0, 200, 3 - engineLoadAccelEnrichmentThreshold = scalar, F32, 2208, "roc", 1, 0, 0, 200, 3 - engineLoadAccelEnrichmentMultiplier = scalar, F32, 2212, "coeff", 1, 0, 0, 200, 3 - fatalErrorPin = bits, U32, 2216, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - warninigPin = bits, U32, 2220, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - configResetPin = bits, U32, 2224, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - uartConsoleSerialSpeed = scalar, U32, 2228, "BPs", 1, 0, 0,1000000, 0 - tpsDecelEnleanmentThreshold = scalar, F32, 2232, "roc", 1, 0, 0, 200, 3 - tpsDecelEnleanmentMultiplier = scalar, F32, 2236, "coeff", 1, 0, 0, 200, 3 - slowAdcAlpha = scalar, F32, 2240, "coeff", 1, 0, 0, 200, 3 - debugMode = bits, U32, 2244, [0:3], "Alternator_PID", "TPS accel enrich", "Warmup PID", "IDLE", "EL accl enrich", "Trigger Counters", "FSIO_ADC", "AUX_PID_1", "VVT PID", "Cranking", "Timing", "Closed-loop fuel corr", "VSS", "SD card", "mode14", "mode15" - warmupAfrPid_pFactor = scalar, F32, 2248, "value", 1, 0, -1000, 1000, 5 - warmupAfrPid_iFactor = scalar, F32, 2252, "value", 1, 0, -1000, 1000, 5 - warmupAfrPid_dFactor = scalar, F32, 2256, "value", 1, 0, -1000, 1000, 5 - warmupAfrPid_offset = scalar, F32, 2260, "value", 1, 0, 0, 1000, 3 - warmupTargetAfrBins = array, F32, 2264, [4], "C", 1, 0, -100.0, 250.0, 2 - warmupTargetAfr = array, F32, 2280, [4], "AFR", 1, 0, 0.0, 20.0, 2 - warmupAfrThreshold = scalar, F32, 2296, "tempterature", 1, 0, 0, 200, 3 - boostCutPressure = scalar, F32, 2300, "kPa", 1, 0, 0, 500, 0 - mapAccelTaperBins = array, F32, 2304, [8], "counter", 1, 0, 0.0, 300, 0 - mapAccelTaperMult = array, F32, 2336, [8], "mult", 1, 0, 0.0, 300, 2 - dizzySparkOutputPin = bits, U32, 2368, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - dizzySparkOutputPinMode = bits, U32, 2372, [0:1], "default", "default inverted", "open collector", "open collector inverted" - fsioAdc1 = bits, U32, 2376, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioAdc2 = bits, U32, 2380, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioAdc3 = bits, U32, 2384, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fsioAdc4 = bits, U32, 2388, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fixedTiming = scalar, F32, 2392, "deg", 1, 0, -720, 720, 2 - mapLowValueVoltage = scalar, F32, 2396, "v", 1, 0, 0.0, 10, 2 - mapHighValueVoltage = scalar, F32, 2400, "v", 1, 0, 0.0, 10, 2 - egoValueShift = scalar, F32, 2404, "value", 1, 0, -10.0, 10, 2 - camInput = bits, U32, 2408, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - auxPidDT1 = scalar, U32, 2412, "ms", 1, 0, 0, 3000, 0 - auxPidDT2 = scalar, U32, 2416, "ms", 1, 0, 0, 3000, 0 - auxPidDT3 = scalar, U32, 2420, "ms", 1, 0, 0, 3000, 0 - auxPidDT4 = scalar, U32, 2424, "ms", 1, 0, 0, 3000, 0 - crankingIdleAdjustment = scalar, F32, 2428, "percent", 1, 0, -100.0, 100, - tChargeMinRpmMinTps = scalar, F32, 2432, "mult", 1, 0, 0, 3, 4 - tChargeMinRpmMaxTps = scalar, F32, 2436, "mult", 1, 0, 0, 3, 4 - tChargeMaxRpmMinTps = scalar, F32, 2440, "mult", 1, 0, 0, 3, 4 - tChargeMaxRpmMaxTps = scalar, F32, 2444, "mult", 1, 0, 0, 3, 4 - auxPidPins1 = bits, U32, 2448, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - auxPidPins2 = bits, U32, 2452, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - auxPidPins3 = bits, U32, 2456, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - auxPidPins4 = bits, U32, 2460, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - auxPidFrequency1 = scalar, U16, 2464, "Hz", 1, 0, 0, 3000, 0 - auxPidFrequency2 = scalar, U16, 2466, "Hz", 1, 0, 0, 3000, 0 - auxPidFrequency3 = scalar, U16, 2468, "Hz", 1, 0, 0, 3000, 0 - auxPidFrequency4 = scalar, U16, 2470, "Hz", 1, 0, 0, 3000, 0 - alternatorPwmFrequency = scalar, S32, 2472, "Hz", 1, 0, 0, 3000.0, 0 - storageMode = bits, U32, 2476, [0:1], "Auto", "Always", "Never" - cj125SpiDevice = bits,U32, 2480, [0:1], "Off", "SPI1", "SPI2", "SPI3" - cj125CsPinMode = bits, U32, 2484, [0:1], "default", "default inverted", "open collector", "open collector inverted" - auxPid1_pFactor = scalar, F32, 2488, "value", 1, 0, -1000, 1000, 5 - auxPid1_iFactor = scalar, F32, 2492, "value", 1, 0, -1000, 1000, 5 - auxPid1_dFactor = scalar, F32, 2496, "value", 1, 0, -1000, 1000, 5 - auxPid1_offset = scalar, F32, 2500, "value", 1, 0, 0, 1000, 3 - auxPid2_pFactor = scalar, F32, 2504, "value", 1, 0, -1000, 1000, 5 - auxPid2_iFactor = scalar, F32, 2508, "value", 1, 0, -1000, 1000, 5 - auxPid2_dFactor = scalar, F32, 2512, "value", 1, 0, -1000, 1000, 5 - auxPid2_offset = scalar, F32, 2516, "value", 1, 0, 0, 1000, 3 - auxPid3_pFactor = scalar, F32, 2520, "value", 1, 0, -1000, 1000, 5 - auxPid3_iFactor = scalar, F32, 2524, "value", 1, 0, -1000, 1000, 5 - auxPid3_dFactor = scalar, F32, 2528, "value", 1, 0, -1000, 1000, 5 - auxPid3_offset = scalar, F32, 2532, "value", 1, 0, 0, 1000, 3 - auxPid4_pFactor = scalar, F32, 2536, "value", 1, 0, -1000, 1000, 5 - auxPid4_iFactor = scalar, F32, 2540, "value", 1, 0, -1000, 1000, 5 - auxPid4_dFactor = scalar, F32, 2544, "value", 1, 0, -1000, 1000, 5 - auxPid4_offset = scalar, F32, 2548, "value", 1, 0, 0, 1000, 3 - vvtMode = bits, U32, 2552, [0:2], "First half", "Second half", "2GZ", "Miata NB2", "mode4", "mode5", "mode6", "mode7" - biQuad_a0 = scalar, F32, 2556, "v", 1, 0, -1000, 1000, 9 - biQuad_a1 = scalar, F32, 2560, "v", 1, 0, -1000, 1000, 9 - biQuad_a2 = scalar, F32, 2564, "v", 1, 0, -1000, 1000, 9 - biQuad_b1 = scalar, F32, 2568, "v", 1, 0, -1000, 1000, 9 - biQuad_b2 = scalar, F32, 2572, "v", 1, 0, -1000, 1000, 9 - cltTimingBins = array, F32, 2576, [8], "C", 1, 0, -100.0, 250.0, 1 - cltTimingExtra = array, F32, 2608, [8], "degree", 1, 0, -400.0, 400.0, 0 - nbVvtIndex = scalar, S32, 2640, "index", 1, 0, 0, 4.0, 0 -;skipping autoTuneCltThreshold offset 2644 -;skipping autoTuneTpsRocThreshold offset 2648 -;skipping autoTuneTpsQuietPeriod offset 2652 - postCrankingTargetClt = scalar, F32, 2656, "Ñ", 1, 0, 0, 100, 0 - postCrankingFactor = scalar, F32, 2660, "mult", 1, 0, 0, 100, 4 - postCrankingDurationSec = scalar, F32, 2664, "seconds", 1, 0, 0, 100, 2 - auxTempSensor1_tempC_1 = scalar, F32, 2668, "*C", 1, 0, -40, 200, 1 - auxTempSensor1_tempC_2 = scalar, F32, 2672, "*C", 1, 0, -40, 200, 1 - auxTempSensor1_tempC_3 = scalar, F32, 2676, "*C", 1, 0, -40, 200, 1 - auxTempSensor1_resistance_1 = scalar, F32, 2680, "Ohm", 1, 0, 0, 200000, 1 - auxTempSensor1_resistance_2 = scalar, F32, 2684, "Ohm", 1, 0, 0, 200000, 1 - auxTempSensor1_resistance_3 = scalar, F32, 2688, "Ohm", 1, 0, 0, 200000, 1 - auxTempSensor1_bias_resistor = scalar, F32, 2692, "Ohm", 1, 0, 0, 200000, 1 - auxTempSensor1_adcChannel = bits, U32, 2696, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - auxTempSensor2_tempC_1 = scalar, F32, 2700, "*C", 1, 0, -40, 200, 1 - auxTempSensor2_tempC_2 = scalar, F32, 2704, "*C", 1, 0, -40, 200, 1 - auxTempSensor2_tempC_3 = scalar, F32, 2708, "*C", 1, 0, -40, 200, 1 - auxTempSensor2_resistance_1 = scalar, F32, 2712, "Ohm", 1, 0, 0, 200000, 1 - auxTempSensor2_resistance_2 = scalar, F32, 2716, "Ohm", 1, 0, 0, 200000, 1 - auxTempSensor2_resistance_3 = scalar, F32, 2720, "Ohm", 1, 0, 0, 200000, 1 - auxTempSensor2_bias_resistor = scalar, F32, 2724, "Ohm", 1, 0, 0, 200000, 1 - auxTempSensor2_adcChannel = bits, U32, 2728, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - fuelClosedLoopCltThreshold = scalar, S16, 2732, "C", 1, 0, 0, 100, 0 - fuelClosedLoopTpsThreshold = scalar, S16, 2734, "%", 1, 0, 0, 100, 0 - fuelClosedLoopRpmThreshold = scalar, S16, 2736, "rpm", 1, 0, 0, 5000, 0 - etbFreq = scalar, S16, 2738, "Hz", 1, 0, 0, 500, 10 - fuelClosedLoopPid_pFactor = scalar, F32, 2740, "value", 1, 0, -1000, 1000, 5 - fuelClosedLoopPid_iFactor = scalar, F32, 2744, "value", 1, 0, -1000, 1000, 5 - fuelClosedLoopPid_dFactor = scalar, F32, 2748, "value", 1, 0, -1000, 1000, 5 - fuelClosedLoopPid_offset = scalar, F32, 2752, "value", 1, 0, 0, 1000, 3 - fuelClosedLoopAfrLowThreshold = scalar, F32, 2756, "ratio", 1, 0, 0, 100, 1 - fuelClosedLoopAfrHighThreshold = scalar, F32, 2760, "ratio", 1, 0, 0, 100, 1 - stepperEnablePinMode = bits, U32, 2764, [0:5], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "mode12", "mode13", "mode14", "mode15", "mode16", "mode17", "mode18", "mode19", "mode20", "mode21", "mode22", "mode23", "mode24", "mode25", "mode26", "mode27", "mode28", "mode29", "mode30", "mode31", "PULLUP", "mode33", "mode34", "mode35" - cj125ua = bits, U32, 2768, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - cj125ur = bits, U32, 2772, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -;skipping unused offset 2776 - le_formulas1 = array, U08, 3048, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas2 = array, U08, 3248, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas3 = array, U08, 3448, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas4 = array, U08, 3648, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas5 = array, U08, 3848, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas6 = array, U08, 4048, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas7 = array, U08, 4248, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas8 = array, U08, 4448, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas9 = array, U08, 4648, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas10 = array, U08, 4848, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas11 = array, U08, 5048, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas12 = array, U08, 5248, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas13 = array, U08, 5448, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas14 = array, U08, 5648, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas15 = array, U08, 5848, [200],"char", 1, 0, 0.0, 3.0, 2 - le_formulas16 = array, U08, 6048, [200],"char", 1, 0, 0.0, 3.0, 2 - timingMultiplier = array, U08, 6248, [200],"char", 1, 0, 0.0, 3.0, 2 - timingAdditive = array, U08, 6448, [200],"char", 1, 0, 0.0, 3.0, 2 - cltFuelCorrBins = array, F32, 6648, [16], "C", 1, 0, -100.0, 250.0, 2 - cltFuelCorr = array, F32, 6712, [16], "%", 1, 0, 0.0, 500.0, 2 - iatFuelCorrBins = array, F32, 6776, [16], "C", 1, 0, -100.0, 250.0, 2 - iatFuelCorr = array, F32, 6840, [16], "%", 1, 0, 0.0, 500.0, 2 - crankingFuelCoef = array, F32, 6904, [8], "%", 1, 0, 0.0, 700.0, 2 - crankingFuelBins = array, F32, 6936, [8], "C", 1, 0, -80.0, 170.0, 2 - crankingCycleCoef = array, F32, 6968, [8], "%", 1, 0, 0.0, 500.0, 2 - crankingCycleBins = array, F32, 7000, [8], "counter", 1, 0, -80.0, 170.0, 2 - cltIdleCorrBins = array, F32, 7032, [16], "C", 1, 0, -100.0, 250.0, 2 - cltIdleCorr = array, F32, 7096, [16], "%", 1, 0, 0.0, 500.0, 2 - mafDecoding = array, F32, 7160, [256], "kg/hour", 1, 0, -500.0, 4000.0, 2 - mafDecodingBins = array, F32, 8184, [256], "V", 1, 0, -5.0, 150.0, 2 - ignitionIatCorrTable = array, F32, 9208, [16x16],"deg", 1, 0, -720, 720, 2 - ignitionIatCorrLoadBins = array, F32, 10232, [16], "Temperature", 1, 0.0, 0, 300.0, 2 - ignitionIatCorrRpmBins = array, F32, 10296, [16], "RPM", 1, 0.0, 0, 18000.0, 2 - injectionPhase = array, F32, 10360, [16x16],"deg", 1, 0, -720, 720, 2 - injPhaseLoadBins = array, F32, 11384, [16], "Load", 1, 0.0, 0, 300.0, 2 - injPhaseRpmBins = array, F32, 11448, [16], "RPM", 1, 0.0, 0, 18000.0, 2 - fuelTable = array, F32, 11512, [16x16],"ms", 1, 0, 0.0, 300.0, 2 - fuelLoadBins = array, F32, 12536, [16], "V", 1, 0, 0.0, 300.0, 2 - fuelRpmBins = array, F32, 12600, [16], "RPM", 1, 0, 0.0, 25500.0, 2 - ignitionTable = array, F32, 12664, [16x16],"deg", 1, 0, -20, 90, 2 - ignitionLoadBins = array, F32, 13688, [16], "Load", 1, 0.0, 0, 300.0, 2 - ignitionRpmBins = array, F32, 13752, [16], "RPM", 1, 0.0, 0, 18000.0, 2 - veTable = array, F32, 13816, [16x16],"%", 1, 0, 0, 999.0, 2 - veLoadBins = array, F32, 14840, [16], "%", 1, 0.0, 0, 300.0, 2 - veRpmBins = array, F32, 14904, [16], "RPM", 1, 0.0, 0, 18000.0, 2 - afrTable = array, U08, 14968, [16x16],"deg", 0.1, 0, 0, 25.0, 1 - afrLoadBins = array, F32, 15224, [16], "%", 1, 0.0, 0, 300.0, 2 - afrRpmBins = array, F32, 15288, [16], "RPM", 1, 0.0, 0, 18000.0, 2 - tpsTpsAccelTable = array, F32, 15352, [8x8],"value", 1, 0, 0.0, 30000.0, 2 - tpsTpsAccelFromRpmBins = array, F32, 15608, [8], "from", 1, 0, 0.0, 30000.0, 2 - tpsTpsAccelToRpmBins = array, F32, 15640, [8], "to", 1, 0, 0.0, 25500.0, 2 - fsioTable1 = array, F32, 15672, [8x8],"value", 1, 0, 0.0, 30000.0, 2 - fsioTable1LoadBins = array, F32, 15928, [8], "L", 1, 0, 0.0, 30000.0, 2 - fsioTable1RpmBins = array, F32, 15960, [8], "RPM", 1, 0, 0.0, 25500.0, 2 - fsioTable2 = array, U08, 15992, [8x8],"value", 1, 0, 0.0, 255.0, 0 - fsioTable2LoadBins = array, F32, 16056, [8], "L", 1, 0, 0.0, 255, 0 - fsioTable2RpmBins = array, F32, 16088, [8], "RPM", 1, 0, 0.0, 25500.0, 2 - fsioTable3 = array, U08, 16120, [8x8],"value", 1, 0, 0.0, 255.0, 0 - fsioTable3LoadBins = array, F32, 16184, [8], "L", 1, 0, 0.0, 255, 0 - fsioTable3RpmBins = array, F32, 16216, [8], "RPM", 1, 0, 0.0, 25500.0, 2 - fsioTable4 = array, U08, 16248, [8x8],"value", 1, 0, 0.0, 255.0, 0 - fsioTable4LoadBins = array, F32, 16312, [8], "L", 1, 0, 0.0, 255, 0 - fsioTable4RpmBins = array, F32, 16344, [8], "RPM", 1, 0, 0.0, 25500.0, 2 -; total TS size = 16376 -[SettingContextHelp] - injector_flow = "cc/min, cubic centimeter per minute\nBy the way, g/s = 0.125997881 * (lb/hr)\ng/s = 0.125997881 * (cc/min)/10.5\ng/s = 0.0119997981 * cc/min" - directSelfStimulation = "Should trigger emulator push data right into trigger handling logic, eliminating the need for physical jumper wires?\nPS: Funny name, right? :)" - cranking_baseFuel = "Fuel squirt duration while cranking\nA number of curves adjust this value according to CLT/IAT/TPS etc" - cranking_rpm = "Cranking mode threshold. Special cranking logic controls fuel and spark while RPM is below this threshold\nset cranking_rpm X" - crankingChargeAngle = "While cranking (which causes battery voltage to drop) we can calculate dwell time in shaft\ndegrees, not in absolute time as in running mode.\nset cranking_charge_angle X" - knockBandCustom = "kHz knock band override" - cylinderBore = "Cylinder diameter, in mm." - sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" - fuelAlgorithm = "This setting controls which fuel quantity control algorithm is used.\nset algorithm X" - injectionMode = "'batched' means two injectors are wired together\nset injection_mode X" - extraInjectionOffset = "this is about deciding when the injector starts it's squirt\nSee also injectionPhase map\ntodo: do we need even need this since we have the map anyway?" - crankingTimingAngle = "Timing advance while engine cranking\nset cranking_timing_angle X" - ignitionMode = "'wasted' means one coil is driving two spark plugs in two cylinders, with one of the aparks not doing anything since it's happening on the exhaust cycle\nset ignition_mode X" - ignitionOffset = "this value could be used to offset the whole ignition timing table by a constant" - fixedModeTiming = "This value is used in 'fixed timing' mode, i.e. constant timing\nThis mode is useful for instance while adjusting distributor location" - globalTriggerAngleOffset = "Angle between Top Dead Center (TDC) and the first trigger event.\nKnowing this angle allows us to control timing and other angles in reference to TDC.\nset global_trigger_offset_angle X" - analogInputDividerCoefficient = "Coefficient of input voltage dividers on your PCB" - vbattDividerCoeff = "Battery Voltage input resistor divider coefficient" - fanOnTemperature = "Cooling fan turn-on temperature threshold, in Celsuis" - fanOffTemperature = "Cooling fan turn-off temperature threshold, in Celsuis" - vehicleSpeedCoef = "This coefficient translates vehicle speed input frequency (in Hz) into vehicle speed, km/h" - trigger_useOnlyFirstChannel = "This option could be used if your second trigger channel is broken" - tachOutputPin = "This implementation produces one pulse per engine cycle. See also dizzySparkOutputPin." - vvtCamSensorUseRise = "Use rise or fall signal front" - sensorChartMode = "rusEfi console Sensor Sniffer mode" - isInjectionEnabled = "enable injection" - isIgnitionEnabled = "enable ignition" - isCylinderCleanupEnabled = "If TPS above 95% no fuel would be injected during cranking\nenable cylinder_cleanup" - isPrintTriggerSynchDetails = "enable trigger_details" - twoWireBatchInjection = "This is needed if batched injection and individual injector wiring\nenable two_wire_batch_injection" - useOnlyRisingEdgeForTrigger = "VR sensors are only precise on rising front" - twoWireBatchIgnition = "This is needed if batched igniton (waster spark) and individual coil wiring" - ignMathCalculateAtIndex = "At what trigger index should some ignition-related math be executed? This is a performance trick to reduce load on synchronization trigger callback." - mapAveragingSchedulingAtIndex = "At what trigger index should some MAP-related math be executed? This is a performance trick to reduce load on synchronization trigger callback." - tachPulseTriggerIndex = "Trigger cycle index at which we start tach pulse (performance consideration)" - slowAdcAlpha = "ExpAverage alpha coefficient" - dizzySparkOutputPin = "This implementation makes a pulse every time one of the coils is charged. See also tachOutputPin" - - -; CONFIG_DEFINITION_END - - -[Tuning] - spotDepth = 2 ; 0 = no indicators, 1 = Z only, 2 = XYZ indicators. - cursorDepth = 2 ; Same as spot depth. - - gaugeColumns = 1 ; Only 1 or 2 are valid. - - pageButtons = "&EGO" - gauge1 = tachometer - gauge2 = afr1Gauge - gauge3 = mapGaugeValue - gauge4 = veValueGauge - - -[VeAnalyze] - - ; tableName, lambdaTargetTableName, lambdaChannel, egoCorrectionChannel, activeCondition -#if tuneByMAF - veAnalyzeMap = fuelTableTbl, afrTableTbl, AFRactual, egoCorrection, { 1 } -#else - veAnalyzeMap = veTableTbl, afrTableTbl, AFRactual, egoCorrection, { 1 } -#endif - ;lambdaTargetTables = afrTable1Tbl, afrTable2Tbl, afrTSCustom - - ; filter = Name, "DisplayName", outputChannel, operator, defaultVal, userAdjustable - filter = minRPMFilter, "Minimum RPM", rpm, < , 500, , true - -#if CELSIUS - filter = minCltFilter, "Minimum CLT", coolant, < , 60, , true -#else - filter = minCltFilter, "Minimum CLT", coolant, < , 160, , true -#endif - - filter = deltaTps, "dTPS", deltaTps > , 50, , true - - filter = VBatt, "VBatt", VBatt < , 12, , true - -; filter = minTps, "Minimum TPS", TPS, > , 1, , true - - -;[VeAnalyze] -; fuelAnalyzeMap = fuelTableTbl, afrTableTbl, AFRactual, egoCorrection , { 1 } -; filter = minRPMFilter, "Minimum RPM", rpm, < , 500, , true - - - -[OutputChannels] - -; see TS_FILE_VERSION in firmware code -fileVersion = { 20161225 } - - ochGetCommand = "O" - -; see TS_OUTPUT_SIZE in console source code - ochBlockSize = 356 - - rpm = scalar, U32, 0, "RPM", 1, 0.00000 -#if CELSIUS - coolant = scalar, F32, 4, "°C", 1, 0.0 -#else - coolant = scalar, F32, 4, "°F", {9/5}, 17.77777 -#endif -#if CELSIUS - intake = scalar, F32, 8, "°C", 1, 0.0 -#else - intake = scalar, F32, 8, "°F", {9/5}, 17.77777 -#endif - TPS = scalar, F32, 12, "%", 1, 0 - MAF = scalar, F32, 16, "V", 1, 0 - AFRactual = scalar, F32, 20, "AFR", 1, 0.0 - engineLoad = scalar, F32, 24, "%", 1, 0.0 ; Blend of MAP and TPS, depends on algorithm - VBatt = scalar, F32, 28, "V", 1, 0.0 - ; 10 bit TPS ADC value (from 0 to 1023 in 5v scale) - tpsADC = scalar, U16, 32, "ADC", 1, 0.0; - alignmet = scalar, U16, 34, "al", 1, 0.0; - baroPressure = scalar, F32, 36, "pres", 1, 0.0; - MAPValue = scalar, F32, 40, "MAP", 1, 0.0; - ; total fuel squirt duration (in MS) per engine cycle according to current CLT - crankingFuel = scalar, F32, 44, "ms", 1, 0.0; - baseFuel = scalar, F32, 48, "ms", 1, 0 - tCharge = scalar, F32, 52, "T", 1, 0.0; - ign_adv = scalar, F32, 56, "deg", 1, 0.0; - sparkDwellValue = scalar, F32, 60, "MAP", 1, 0.0; - ; actual total Ms time per engine cycle with all corrections - pulseWidth = scalar, F32, 64, "ms", 1, 0.0; - debugFloatField1 = scalar, F32, 68, "val", 1, 0.0; - - hasSdCard = bits, U32, 72, [0:0], "true", "false"; - isIgnitionEnabledIndicator=bits, U32, 72, [1:1], "true", "false"; - ind_injection_enabled=bits,U32, 72, [2:2], "true", "false"; - isCylinderCleanupEnabled=bits, U32, 72, [3:3], "true", "false"; - isCylinderCleanupActivated=bits,U32,72, [4:4], "true", "false"; - ind_fuel_pump = bits, U32, 72, [5:5], "true", "false"; - ind_fan = bits, U32, 72, [6:6], "true", "false"; - ind_o2_heater = bits, U32, 72, [7:7], "true", "false"; - ind_check_engine= bits, U32, 72, [8:8], "true", "false"; - needBurn = bits, U32, 72, [9:9], "true", "false"; - ind_2nd_trigger_en=bits, U32, 72, [10:10], "true", "false"; - clutchUpState =bits, U32, 72, [11:11], "true", "false"; - clutchDownState =bits, U32, 72, [12:12], "true", "false"; - knockEverIndicator=bits, U32, 72, [13:13], "true", "false"; - knockNowIndicator=bits, U32, 72, [14:14], "true", "false"; - vehicleSpeedKph = scalar, F32, 76, "kph", 1, 0.0; - - ind_tps_error = bits, U32, 80, [0:0], "true", "false"; - ind_clt_error = bits, U32, 80, [1:1], "true", "false"; - ind_map_error = bits, U32, 80, [2:2], "true", "false"; - ind_iat_error = bits, U32, 80, [3:3], "true", "false"; - ind_isTriggerError = bits, U32, 80, [5:5], "true", "false"; - ind_hasFatalError=bits, U32, 80, [6:6], "true", "false"; - ind_isWarnNow =bits, U32, 80, [7:7], "true", "false"; - firmwareTsVersion = scalar,U32, 84, "version_p", 1, 0 - egt1 = scalar, S16, 88, "°C", 1, 0 - egt2 = scalar, S16, 90, "°C", 1, 0 - egt3 = scalar, S16, 92, "°C", 1, 0 - egt4 = scalar, S16, 94, "°C", 1, 0 - egt5 = scalar, S16, 96, "°C", 1, 0 - egt6 = scalar, S16, 98, "°C", 1, 0 - egt7 = scalar, S16, 100, "°C", 1, 0 - egt8 = scalar, S16, 102, "°C", 1, 0 - rpmAcceleration = scalar, F32, 104, "dRpm", 1, 0 - massAirFlowValue= scalar, F32, 108, "Kg/h", 1, 0 - veValue = scalar, F32, 112, "ratio", 1, 0 - deltaTps = scalar, F32, 116, "ratio", 1, 0 - triggerErrorsCounter = scalar, U32,120, "counter", 1, 0 - engineLoadAccelExtra = scalar,F32, 124, "value", 1, 0 - tpsAccelFuel = scalar, F32, 128, "ms", 1, 0 - baroCorrection = scalar, F32, 132, "%", 1, 0 - pedalPosition = scalar, F32, 136, "%", 1, 0 - injectorDutyCycle= scalar, F32, 140, "%", 1, 0 - knockCount = scalar, U32, 144, "counter", 1, 0 - ; fuelLevel 148 - knockLevel = scalar, F32, 152, "Volts", 1, 0 - ; totalTriggerErrorCounter 156 - wallFuelAmount = scalar, F32, 160, "ms", 1, 0 - iatCorrection = scalar, F32, 164, "%", 1, 0 - wallFuelCorrection = scalar, F32, 168, "ms", 1, 0 - curIdlePosition = scalar, F32, 172, "percent", 1, 0 - cltCorrection = scalar, F32, 184, "%", 1, 0 - debugIntField1 = scalar, U32, 192, "val", 1, 0.0; - debugFloatField2 = scalar, F32, 200, "val", 1, 0.0; - debugFloatField3 = scalar, F32, 204, "val", 1, 0.0; - debugFloatField4 = scalar, F32, 208, "val", 1, 0.0; - debugFloatField5 = scalar, F32, 212, "val", 1, 0.0; - debugIntField2 = scalar, U32, 216, "val", 1, 0.0; - debugIntField3 = scalar, U32, 220, "val", 1, 0.0; - engineLoadDelta = scalar,F32, 228, "value", 1, 0 - speedToRpmRatio = scalar,F32, 232, "value", 1, 0 - warningCounter = scalar,U32, 236, "count", 1, 0 - lastErrorCode = scalar,U32, 240, "error", 1, 0 - internalMcuTemperature = scalar,F32, 244, "C", 1, 0 - vvtPosition = scalar,F32, 248, "deg", 1, 0 - engineMode = scalar, U32, 252, "em", 1, 0.0; - debugFloatField6 = scalar, F32, 256, "val", 1, 0.0; - debugFloatField7 = scalar, F32, 260, "val", 1, 0.0; - firmwareVersion = scalar,U32, 264, "version_f", 1, 0 - fuelPidCorrection = scalar, F32, 268, "ms", 1, 0 - - egoCorrection = { 100 } - time = { timeNow } -; engineLoad = { fuleAlgorithm == 0 ? MAF : TPS } - -[CurveEditor] -; xAxis = leftValue, rightValue, step -; yAxis = bottomValue, topValue, step - - - curve = knockThresholdCurve, "Engine knock threshold RPM based" - columnLabel = "RPM", "Threshold" - xAxis = 0, 8000, 10 - yAxis = 0, 8, 10 - xBins = knockNoiseRpmBins, rpm - yBins = knockNoise - gauge = rpm - - curve = mapAccelTaper, "Engine Load Acceleration Enrichment Taper" - columnLabel = "Distance", "Multiplier" - xAxis = 0, 128, 10 - yAxis = -5, 5, 10 - xBins = mapAccelTaperBins - yBins = mapAccelTaperMult - - curve = dwellCorrection, "Dwell time RPM based" - columnLabel = "RPM", "Dwell" - xAxis = 0, 8000, 10 - yAxis = 0, 30, 10 - xBins = sparkDwellRpmBins, rpm - yBins = sparkDwellValues - gauge = rpm - - curve = map_samplingAngleCurve, "MAP Sampling Start Angle" - columnLabel = "RPM", "Angle" - xAxis = 0, 8000, 10 - yAxis = 0, 180, 10 - xBins = map_samplingAngleBins, rpm - yBins = map_samplingAngle - gauge = rpm - - curve = map_samplingWindowCurve, "MAP Sampling Duration" - columnLabel = "RPM", "Window" - xAxis = 0, 8000, 10 - yAxis = 0, 180, 10 - xBins = map_samplingWindowBins, rpm - yBins = map_samplingWindow - gauge = rpm - - curve = injectorsDeadTime, "Injector Dead Time by VBatt" - columnLabel = "Voltage", "Dead Time" - xAxis = 8, 21, 10 - yAxis = -3, 3, 10 - xBins = injector_battLagCorrBins, VBatt - yBins = injector_battLagCorr - gauge = VBattGauge - - curve = mafDecodingCurve, "MAF Sensor Settings" - columnLabel = "Voltage", "kg/hour" - xAxis = -1, 6, 10 - yAxis = -30, 1300, 10 - xBins = mafDecodingBins, MAF - yBins = mafDecoding - gauge = mafGaugeVolts - - curve = iatFuelCorrCurve, "Intake air temperature fuel Multiplier" - columnLabel = "Coolant", "Multiplier" - xAxis = -40, 120, 10 - yAxis = 0, 5, 10 - xBins = iatFuelCorrBins, intake - yBins = iatFuelCorr - gauge = IATGauge - - curve = cltTimingCorrCurve, "Warmup timing correction" - columnLabel = "Coolant", "Extra" - xAxis = -40, 120, 10 - yAxis = 0, 50, 100 - xBins = cltTimingBins, coolant - yBins = cltTimingExtra - gauge = CLTGauge - - curve = cltFuelCorrCurve, "Warmup fuel manual Multiplier" - columnLabel = "Coolant", "Multiplier" - xAxis = -40, 120, 10 - yAxis = 0, 50, 100 - xBins = cltFuelCorrBins, coolant - yBins = cltFuelCorr - gauge = CLTGauge - - curve = crankingCltCurve, "Cranking Coolant Temperature multiplier" - columnLabel = "Coolant", "Multiplier" - xAxis = -40, 120, 10 - yAxis = 0, 5, 10 - xBins = crankingFuelBins, coolant - yBins = crankingFuelCoef - gauge = CLTGauge - - curve = crankingTpsCurve, "Cranking TPS Multiplier" - columnLabel = "TPS", "Multiplier" - xAxis = -40, 120, 10 - yAxis = 0, 5, 10 - xBins = crankingTpsBins, TPS - yBins = crankingTpsCoef - gauge = throttleGauge - - curve = crankingDurationCurve, "Cranking Duration Multiplier" - columnLabel = "Engine Cycle", "Multiplier" - xAxis = 0, 1000, 10 - yAxis = 0, 5, 10 - xBins = crankingCycleBins - yBins = crankingCycleCoef - - - curve = cltIdleCurve, "Warmup IAC position manual Multiplier" - columnLabel = "Coolant", "Multiplier" - xAxis = -40, 120, 10 - yAxis = 0, 50, 100 - xBins = cltIdleCorrBins, coolant - yBins = cltIdleCorr - gauge = CLTGauge - - curve = warmupTargetAfrCurve, "CLT-based target AFR" - columnLabel = "Coolant", "Correction" - xAxis = -40, 120, 10 - yAxis = 0, 50, 100 - xBins = warmupTargetAfrBins, coolant - yBins = warmupTargetAfr - gauge = CLTGauge - -[TableEditor] - ; table_id, map3d_id, "title", page - table = fuelTableTbl, fuelTableMap, "Fuel Table", 1 - ; constant, variable - xBins = fuelRpmBins, rpm - yBins = fuelLoadBins, engineLoad - zBins = fuelTable -; gridHeight = 2.0 - gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. - upDownLabel = "(RICHER)", "(LEANER)" - - table = tpsTpsAccelTbl, tpsTpsAccelMap, "TPS/TPS acceleration Multiplier", 1 - xBins = tpsTpsAccelFromRpmBins, TPS - yBins = tpsTpsAccelToRpmBins, TPS - zBins = tpsTpsAccelTable - - - table = fsioTable1Tbl, fsioTable1Map, "FSIO Table #1", 1 - xBins = fsioTable1RpmBins, rpm - yBins = fsioTable1LoadBins, engineLoad - zBins = fsioTable1 - - table = fsioTable2Tbl, fsioTable2Map, "FSIO Table #2", 1 - xBins = fsioTable2RpmBins, rpm - yBins = fsioTable2LoadBins, engineLoad - zBins = fsioTable2 - - table = fsioTable3Tbl, fsioTable3Map, "FSIO Table #3", 1 - xBins = fsioTable3RpmBins, rpm - yBins = fsioTable3LoadBins, engineLoad - zBins = fsioTable3 - - table = fsioTable4Tbl, fsioTable4Map, "FSIO Table #4", 1 - xBins = fsioTable4RpmBins, rpm - yBins = fsioTable4LoadBins, engineLoad - zBins = fsioTable4 - - table = baroCorrTbl, baroCorrMap, "Baro Correction", 1 - ; constant, variable - xBins = baroCorrRpmBins, rpm - 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, rpm - yBins = ignitionLoadBins, engineLoad - 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, rpm - yBins = ignitionIatCorrLoadBins, intake - zBins = ignitionIatCorrTable -; gridHeight = 2.0 - gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. - upDownLabel = "(RICHER)", "(LEANER)" - - table = veTableTbl, veTableMap, "VE Table", 1 - ; constant, variable - xBins = veRpmBins, rpm - yBins = veLoadBins, MAPValue - zBins = veTable -; gridHeight = 2.0 - gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. - upDownLabel = "(RICHER)", "(LEANER)" - - - table = injPhaseTableTbl, injPhaseTableMap, "Injection Phase", 1 - ; constant, variable - xBins = injPhaseRpmBins, rpm - yBins = injPhaseLoadBins, engineLoad - zBins = injectionPhase -; gridHeight = 2.0 - gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. - upDownLabel = "(Later)", "(Sooner)" - - table = afrTableTbl, afrTableMap, "Target AFR Table", 1 - ; constant, variable - xBins = afrRpmBins, rpm - yBins = afrLoadBins, MAPValue - zBins = afrTable -; gridHeight = 2.0 - gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. - upDownLabel = "(RICHER)", "(LEANER)" - -[GaugeConfigurations] - - ;Name Var Title Units Lo Hi LoD LoW HiW HiD vd ld - tachometer = rpm, "Engine Speed", "RPM", 0, 15000, 200, 500, 6000, 6000, 0, 0 -#if CELSIUS - CLTGauge = coolant, "Coolant Temp", "°C", -40, 140, -15, 1, 95, 110, 1, 1 -#else - CLTGauge = coolant, "Coolant Temp", "°F", -40, 285, 5, 35, 205, 230, 1, 1 -#endif -#if CELSIUS - IATGauge = intake, "Intake Air Temp", "°C", -40, 140, -15, 1, 95, 110, 1, 1 -#else - IATGauge = intake, "Intake Air Temp", "°F", -40, 285, 5, 35, 205, 230, 1, 1 -#endif -#if CELSIUS - tChargeGauge = tCharge, "Charge Temp", "°C", -40, 140, -15, 1, 95, 110, 1, 1 -#else - tChargeGauge = tCharge, "Charge Temp", "°F", -40, 285, 5, 35, 205, 230, 1, 1 -#endif - - - throttleGauge = TPS, "Throttle Position", "%", 0, 100, 0, 0, 100, 100, 2, 2 - afr1Gauge = AFRactual, "Air:Fuel Ratio 1", "", 10, 19.4, 12, 13, 15, 16, 2, 2 - mafGaugeVolts = MAF, "Mass Air Flow", "v", 0, 5, 0, 1, 3, 4, 1, 1 - VBattGauge = VBatt, "Battery Voltage", "V", 8, 21, 9, 10, 17, 19, 1, 1 - tpsADCGauge = tpsADC, "tps ADC", "ADC", 0, 1024, 0, 0, 0, 0, 0, 0 - atmPresCGauge = baroPressure, "Baro", "kPa", 0, 1024, 0, 0, 0, 0, 0, 0 - mapGaugeValue = MAPValue, "MAP", "kPa", 0, 300, 10, 10, 200, 200, 0, 0 - ignadvGauge = ign_adv, "Ignition Advance 1", "degrees", -100, 100, -999, -999, 999, 999, 1, 1 -; warmupEnrichGauge = warmupEnrich, "Warmup Enrichment", "%", 100, 150, -1, -1, 101, 105, 0, 0 -; accelEnrichGauge = accDecEnrich, "Accel Enrich", "%", 50, 150, -1, -1, 999, 999, 0, 0 - dwellGauge = sparkDwellValue, "Dwell", "mSec", 0, 10, 0.5, 1.0, 6.0, 8.0, 1, 1 - 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 - vssGauge = vehicleSpeedKph, "Speed", "kmh", 0, 200, 0, 1, 3, 4, 1, 1 - rpmAccelerationGa = rpmAcceleration, "rpm delta", "dRpm", 0, 3, 0, 1, 3, 4, 1, 1 - massAirFlowValueGa = massAirFlowValue,"Air Flow", "kg/hr", 0, 50, -999, -999, 999, 999, 1, 1 - veValueGauge = veValue, "fuel: VE", "", 0, 120, 10, 10, 100, 100, 1, 1 - baroCorrectionGauge = baroCorrection,"BaroCorr", "%", 0, 120, 10, 10, 100, 100, 1, 1 - pedalPositionGauge = pedalPosition,"Pedal Position", "%", 0, 120, 10, 10, 100, 100, 1, 1 - knockCountGauge = knockCount,"Knock count", "count", 0, 120, 10, 10, 100, 100, 1, 1 - knockLevelGauge = knockLevel,"Knock level", "volts", 0, 7, 10, 10, 100, 100, 1, 2 - - triggerErrorsCounterGauge = triggerErrorsCounter, "trg err", "count", 0, 15000, 0, 0, 6000, 6000, 0, 0 - - pulseWidthGauge = pulseWidth, "fuel final squirt, per injection", "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1 - baseFuelGauge = baseFuel, "fuel: base duration, before corr", "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1 - fuelPidCorrectionGauge = fuelPidCorrection, "fuel: closed loop correction", "mSec", -11, 11, 1.0, 1.2, 20, 25, 3, 1 - - crankingFuelGauge = crankingFuel, "fuel: crank Width", "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1 - iatCorrectionGauge = iatCorrection, "fuel: IAT correction", "mult", 0, 3, 0, 0, 3, 3, 2, 2 - cltCorrectionGauge = cltCorrection, "fuel: CLT correction", "mult", 0, 3, 0, 0, 3, 3, 2, 2 - injectorDutyCycleGauge=injectorDutyCycle, "fuel: injectorDutyCycle","%", 0, 120, 10, 10, 100, 100, 1, 1 - - engineLoadDeltaGauge = engineLoadDelta,"fuel: load change","value", 0, 120, 10, 10, 100, 100, 1, 1 - engineLoadAccelExtraGauge = engineLoadAccelExtra,"fuel: load extra","value", 0, 120, 10, 10, 100, 100, 1, 1 - deltaTpsGauge = deltaTps, "fuel: TPS change", "", 0, 120, 10, 10, 100, 100, 1, 1 - tpsAccelFuelGauge = tpsAccelFuel,"fuel: TPS enrich", "ms", 0, 120, 10, 10, 100, 100, 1, 1 - wallFuelAmountGauge = wallFuelAmount, "fuel: wall amount", "ms", 0, 100, 0, 0, 100, 100, 0, 0 - wallFuelCorrectionGauge = wallFuelCorrection, "fuel: wall correction extra", "ms", 0, 100, 0, 0, 100, 100, 0, 0 - - curIdlePositionGauge = curIdlePosition, "idle position", "%", 0, 100, 0, 0, 100, 100, 0, 0 - - debugFloatField1Gauge = debugFloatField1, "debug f1", "%", 0, 100, 0, 0, 100, 100, 4, 4 - debugFloatField2Gauge = debugFloatField2, "debug f2", "%", 0, 100, 0, 0, 100, 100, 4, 4 - debugFloatField3Gauge = debugFloatField3, "debug f3", "%", 0, 100, 0, 0, 100, 100, 4, 4 - debugFloatField4Gauge = debugFloatField4, "debug f4", "%", 0, 100, 0, 0, 100, 100, 4, 4 - debugFloatField5Gauge = debugFloatField5, "debug f5", "%", 0, 100, 0, 0, 100, 100, 4, 4 - debugFloatField6Gauge = debugFloatField6, "debug f6", "%", 0, 100, 0, 0, 100, 100, 4, 4 - debugFloatField7Gauge = debugFloatField7, "debug f7", "%", 0, 100, 0, 0, 100, 100, 4, 4 - debugIntField1Gauge = debugIntField1, "debug i1", "%", 0, 100, 0, 0, 100, 100, 0, 0 - debugIntField2Gauge = debugIntField2, "debug i2", "%", 0, 100, 0, 0, 100, 100, 0, 0 - debugIntField3Gauge = debugIntField3, "debug i3", "%", 0, 100, 0, 0, 100, 100, 0, 0 - speedToRpmRatioGauge = speedToRpmRatio, "speed2rpm", "", 0, 100, 0, 0, 100, 100, 4, 4 - warningCounterGauge = warningCounter, "warn", "", 0, 100, 0, 0, 100, 100, 0, 0 - lastErrorCodeGauge = lastErrorCode, "error", "", 0, 8000, 0, 0, 8000, 8000, 0, 0 - internalMcuTemperatureGauge = internalMcuTemperature, "internal temperature", "C", 0, 100, 0, 0, 100, 100, 0, 0 - vvtPositionGauge = vvtPosition, "VVT position", "deg", 0, 100, 0, 0, 720, 720, 0, 0 - - -[FrontPage] - ; Gauges are numbered left to right, top to bottom. - ; - ; 1 2 3 4 - ; 5 6 7 8 - - ; currently a minimum of 6 gauges must be on the dash, this appears to be an old not needed limitation. next release 1 will work. - gauge1 = tachometer - gauge2 = CLTGauge - gauge3 = throttleGauge - gauge4 = mafGaugeVolts - gauge5 = afr1Gauge - gauge6 = VBattGauge - gauge7 = dwellGauge - gauge8 = ignadvGauge - - - -; = expression, off-label, on-label, off-bg, off-fg, on-bg, on-fg - ; important status - indicator = { ind_hasFatalError }, "", "FATAL ERROR", green, black, red, black - indicator = { firmwareTsVersion == fileVersion }, "WRONG VERSION", "version", red, black, green, black - indicator = { ind_isWarnNow }, "", "warn", green, black, red, black - indicator = { ind_check_engine }, "ok", "Check engine", green, black, red, black - indicator = { isIgnitionEnabledIndicator}, "no ignition", "ignition", red, black, green, black - indicator = { ind_injection_enabled}, "no injection", "injection", red, black, green, black - indicator = { ind_isTriggerError}, "ok", "trg err", green, black, red, black - - - ; minor info - indicator = { ind_fan}, "no fan", "fan", white, black, green, black - indicator = { isCylinderCleanupActivated}, "no cyl cleanup", "cyl cleanup", white, black, green, black - indicator = { needBurn }, "no Burn", "Need Burn", white, black, yellow, black - indicator = { hasSdCard}, "no SD", "with SD", white, black, green, black - indicator = { ind_fuel_pump}, "no pump", "pump", white, black, green, black - indicator = { clutchUpState }, "clutch", "cltch Up", white, black, red, black - indicator = { clutchDownState }, "clutch", "cltch Down", white, black, red, black - - ; error codes - indicator = { ind_tps_error}, "tps", "tps error", white, black, red, black - indicator = { ind_clt_error}, "clt", "clt error", white, black, red, black - indicator = { ind_iat_error}, "iat", "iat error", white, black, red, black - indicator = { ind_map_error}, "map", "map error", white, black, red, black - - indicator = { knockEverIndicator }, "", "Knock recently", white, black, red, black - indicator = { knockNowIndicator }, "no knock", "Knock NOW", white, black, red, black - - -[Datalog] - ; Channel Label Type Format - entry = time, "Time", float, "%.3f" - entry = rpm, "RPM", int, "%d" - entry = firmwareVersion, "version", int, "%d" - entry = coolant, "CLT", float, "%.2f" - entry = intake, "IAT", float, "%.2f" - entry = TPS, "TPS", float, "%.2f" - entry = MAF, "MAF", float, "%.2f" - entry = MAPValue, "MAP", float, "%.1f" - entry = AFRactual, "AFR", float, "%.2f" - entry = VBatt, "vBatt", float, "%.2f" - entry = engineLoad, "Load", float, "%.1f" - entry = ign_adv, "ignAdv", float, "%.2f" - entry = knockLevel, "Knock", float, "%.2f" - entry = vehicleSpeedKph, "speed", float, "%.2f" - entry = speedToRpmRatio, "s2rpm", float, "%.3f" - entry = rpmAcceleration, "dRPM", float, "%.3f" - entry = massAirFlowValue,"airMass", float, "%.3f" - entry = pedalPosition, "pedal", float, "%.3f" - entry = triggerErrorsCounter, "trg err",int, "%d" - entry = curIdlePosition, "idle position", float, "%.3f" - - - entry = pulseWidth, "fuel: pulse", float, "%.3f" - entry = baseFuel, "fuel: base", float, "%.2f" - entry = fuelPidCorrection,"fuel: pid", float, "%.2f" - entry = veValue, "fuel: VE", float, "%.3f" - entry = injectorDutyCycle,"fuel: duty cyc",float,"%.3f" - - entry = engineLoadAccelExtra, "fuel: load extra",float, "%.3f" - entry = engineLoadDelta, "fuel: load change",float, "%.3f" - - entry = deltaTps, "fuel: TPS change",float, "%.3f" - entry = tpsAccelFuel, "fuel: TOS enrich", float, "%.3f" - - entry = wallFuelCorrection,"fuel: wall corr ms", float, "%.3f" - entry = wallFuelAmount, "fuel: wall amount", float, "%.3f" - - entry = baroCorrection, "baroCorrection",float,"%.3f" - entry = iatCorrection, "fuel: IAT corr", float, "%.3f" - entry = cltCorrection, "cltCorrection", float,"%.3f" - - entry = sparkDwellValue, "dwell", float,"%.3f" - entry = vvtPosition, "VVT", float,"%.2f" - -; is there a way to log parameter? entry = debugMode, "debugMode",int,"%d" -; Alternator_PID: alternator duty cycle -; DBG_TPS_ACCEL: from TPS - entry = debugFloatField1, "debug f1",float,"%.4f" - -; Alternator_PID: current integration term -; DBG_TPS_ACCEL: to TPS - entry = debugFloatField2, "debug f2",float,"%.4f" - -; Alternator_PID: previous error -; DBG_TPS_ACCEL: tps<>tps table value - entry = debugFloatField3, "debug f3",float,"%.4f" - -; Alternator_PID: I setting -; DBG_TPS_ACCEL: extra fuel - entry = debugFloatField4, "debug f4",float,"%.4f" - -; Alternator_PID: D setting - entry = debugFloatField5, "debug f5",float,"%.4f" - -; Alternator_PID: dTerm - entry = debugFloatField6, "debug f6",float,"%.4f" - - entry = debugFloatField7, "debug f7",float,"%.4f" - - -; Alternator_PID: P setting - entry = debugIntField1, "debug i1",int,"%d" - -; Alternator_PID: offset setting - entry = debugIntField2, "debug i2",int,"%d" - -; Alternator_PID: PID reset counter - entry = debugIntField3, "debug i3",int,"%d" - - entry = engineMode, "mode",int,"%d" - entry = warningCounter, "err: count",int,"%d" - entry = lastErrorCode, "err: last",int,"%d" - entry = internalMcuTemperature, "int temp",float,"%.2f" - - entry = tCharge, "tCharge",float,"%.3f" - -; tpsADC = U16, "ADC", -; alignmet = U16, "al", -; atmPres = F32, "pres", -; crankingFuel = F32, "ms", -; tCharge = F32, "T", -; sparkDwell = F32, "MAP", -; warmUpEnrich = F32, "%", - -[Menu] - - menu = "Engine" - subMenu = engineChars, "Base Engine Settings" - subMenu = triggerConfiguration, "Trigger Configuration" - subMenu = std_separator - subMenu = injectionSettings, "Injection Settings" - subMenu = ignitionSettings, "Ignition Settings" - subMenu = std_separator - subMenu = analogInputs, "Analog inputs" - subMenu = cltSensor, "CLT Sensor Settings" - subMenu = iatSensor, "IAT Sensor Settings" - subMenu = auxTempSensor1Sensor, "AuxTemp1 Sensor Settings" - subMenu = auxTempSensor2Sensor, "AuxTemp2 Sensor Settings" - subMenu = mapSettings, "MAP Sensor Settings" - subMenu = mafDecodingCurve, "MAF Sensor Settings" - subMenu = egoSettings, "EGO Sensor Settings" - subMenu = egtInputs, "EGT inputs" - subMenu = energySystems, "Battery and Alternator Settings" - subMenu = auxPidDialog, "Aux PID" - subMenu = speedSensor, "Speed Sensor Settings" - subMenu = tachSettings, "Tachometer output" - subMenu = std_separator - subMenu = fanSetting, "Fan Settings" - subMenu = idleSettings, "Idle Settings" - subMenu = mainRealay, "Main Relay Settings" - subMenu = fuelPump, "Fuel Pump Settings" - subMenu = malfunction, "MIL Settings" - subMenu = hipFunction, "hip9011 Settings (knock decoder)" - subMenu = cj125Function, "CJ125 Settings (wbo decoder)" - subMenu = spiFunction, "SPI Settings" - subMenu = etbDialog, "Electronic Thtottle Body (alpha)" - menu = "Tuning" - subMenu = generalSettings, "General" - subMenu = monitoringSettings, "rusEfi Console Settings" - subMenu = std_separator - subMenu = crankingDialog, "Cranking" - subMenu = crankingCltCurve, "Cranking Coolant Temp Multiplier" - subMenu = crankingTpsCurve, "Cranking TPS Multiplier" - subMenu = crankingDurationCurve, "Cranking Duration Multiplier" - subMenu = std_separator - subMenu = warmupFuelDialog, "Warmup fuel closed-loop" - subMenu = cltFuelCorrCurve, "Warmup fuel manual Multiplier", 0, {useWarmupPidAfr == 0} - subMenu = warmupTargetAfrCurve, "Warmup fuel auto correction AFR target", 0, {useWarmupPidAfr == 1} - subMenu = cltIdleCurve, "Warmup IAC position manual Multiplier" - subMenu = cltTimingCorrCurve, "Warmup timing correction" - subMenu = std_separator - subMenu = fuelTableTbl, "Fuel Table", 0, {fuelAlgorithm != 3} - subMenu = veTableTbl, "VE Table", 0, {fuelAlgorithm == 3} - subMenu = afrTableTbl, "Targe AFR Table", 0, {fuelAlgorithm == 3} - subMenu = iatFuelCorrCurve, "Intake air temperature fuel Multiplier" - subMenu = injPhaseTableTbl, "Injection Phase" - subMenu = mapAccelTaper, "Engine Load Acceleration Enrichment Taper" - subMenu = std_separator - subMenu = fuelClosedLoopDialog, "Fuel closed-loop correction" - subMenu = AccelEnrich, "Accel/Decel Enrichment/Enleanment" - subMenu = tpsTpsAccelTbl, "TPS/TPS acceleration Multiplier" - subMenu = std_separator - subMenu = ignitionTableTbl, "Ignition Table" - subMenu = ignitionIatCorrTableTbl, "Ignition Intake Air Temp correction" - subMenu = baroCorrTbl, "Baro Correction", 0, {fuelAlgorithm == 3} - subMenu = std_separator - subMenu = std_realtime, "&Realtime Display", 0 - subMenu = tChargeSettings, "tCharge Settings" - - menu = "3D Map Tuning" -; subMenu = std_realtime, "Realtime Display" -; subMenu = std_warmup, "Warmup Wizard" - subMenu = fuelTableMap, "Fuel Table", 0, {fuelAlgorithm != 3} - subMenu = veTableMap, "VE Table", 0, {fuelAlgorithm == 3} - subMenu = afrTableMap, "Targe AFR Table", 0, {fuelAlgorithm == 3} - subMenu = injPhaseTableMap, "Injection Phase" - subMenu = ignitionTableMap, "Ignition Table" - subMenu = ignitionIatCorrTableMap, "Ignition Intake Air Temp correction" - - menu = "Racing Features" - subMenu = smLaunchControl, "Launch Control" - subMenu = std_separator - - menu = "Board" - subMenu = fsioInputsDialog, "FSIO inputs" - subMenu = fsioOutputsDialog, "FSIO outputs" - subMenu = fsioTable1Tbl, "FSIO Table #1" - subMenu = fsioTable2Tbl, "FSIO Table #2" - subMenu = fsioTable3Tbl, "FSIO Table #3" - subMenu = fsioTable4Tbl, "FSIO Table #4" - subMenu = std_separator - subMenu = connection, "Connection" - subMenu = joystickPanel, "Joystick" - subMenu = std_separator - subMenu = ioTest, "I-O Test" - subMenu = ecuStimulator, "ECU stimulator" - subMenu = allPins, "Full pinout" - -[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. - -cmd_test_spk1 = "w\x00\x12\x00\x01" -cmd_test_spk2 = "w\x00\x12\x00\x02" -cmd_test_spk3 = "w\x00\x12\x00\x03" -cmd_test_spk4 = "w\x00\x12\x00\x04" -cmd_test_spk5 = "w\x00\x12\x00\x05" -cmd_test_spk6 = "w\x00\x12\x00\x06" -cmd_test_spk7 = "w\x00\x12\x00\x07" -cmd_test_spk8 = "w\x00\x12\x00\x08" -cmd_test_spk9 = "w\x00\x12\x00\x09" -cmd_test_spk10 = "w\x00\x12\x00\x0a" -cmd_test_spk11 = "w\x00\x12\x00\x0b" -cmd_test_spk12 = "w\x00\x12\x00\x0c" -cmd_test_spk13 = "w\x00\x12\x00\x0d" -cmd_test_spk14 = "w\x00\x12\x00\x0e" -cmd_test_spk15 = "w\x00\x12\x00\x0f" -cmd_test_spk16 = "w\x00\x12\x00\x10" - - -cmd_test_inj1 = "w\x00\x13\x00\x01" -cmd_test_inj2 = "w\x00\x13\x00\x02" -cmd_test_inj3 = "w\x00\x13\x00\x03" -cmd_test_inj4 = "w\x00\x13\x00\x04" -cmd_test_inj5 = "w\x00\x13\x00\x05" -cmd_test_inj6 = "w\x00\x13\x00\x06" -cmd_test_inj7 = "w\x00\x13\x00\x07" -cmd_test_inj8 = "w\x00\x13\x00\x08" -cmd_test_inj9 = "w\x00\x13\x00\x09" -cmd_test_inj10 = "w\x00\x13\x00\x0a" -cmd_test_inj11 = "w\x00\x13\x00\x0b" -cmd_test_inj12 = "w\x00\x13\x00\x0c" -cmd_test_inj13 = "w\x00\x13\x00\x0d" -cmd_test_inj14 = "w\x00\x13\x00\x0e" -cmd_test_inj15 = "w\x00\x13\x00\x0f" -cmd_test_inj16 = "w\x00\x13\x00\x10" - -cmd_test_fuel_pump = "w\x00\x14\x00\x01" -cmd_test_radiator_fan = "w\x00\x15\x00\x01" -cmd_test_check_engine_light = "w\x00\x16\x00\x01" -cmd_test_idle_valve = "w\x00\x17\x00\x01" - - -[UserDefined] - dialog = tChargeSettings, "tChart Settings" - field = "MinRpm MinTps", tChargeMinRpmMinTps - field = "MinRpm MaxTps", tChargeMinRpmMaxTps - field = "MaxRpm MinTps", tChargeMaxRpmMinTps - field = "MaxRpm MaxTps", tChargeMaxRpmMaxTps - - dialog = baseInjection, "Injection" - field = "Enabled", isInjectionEnabled - field = "Mode", injectionMode, {isInjectionEnabled == 1} - field = "#Batch injection with individual wiring" - field = "Two wire batch", twoWireBatchInjection, {isInjectionEnabled == 1 && injectionMode == 2} - - dialog = baseIgnition, "Ignition" - field = "Enabled", isIgnitionEnabled - field = "Mode", ignitionMode, {isIgnitionEnabled == 1} - field = "#Wasted spark with individual coils" - field = "Two wire wasted", twoWireBatchIgnition, {isIgnitionEnabled == 1 && ignitionMode == 2} - field = "Timing Mode", timingMode, {isIgnitionEnabled == 1} - field = "Fixed Timinig", fixedTiming, {isIgnitionEnabled == 1 && timingMode == 1} - - -; Engine->Base Engine Settings - dialog = engineChars, "Base Engine Settings" -; field = "Engine Preset", engineType - field = "Number of Cylinders", cylindersCount - field = "Engine Displacement", displacement - field = "debug fields", debugMode - field = "" - field = "Firing Order", firingOrder - panel = baseInjection - panel = baseIgnition - -; Engine->Trigger configuration - dialog = triggerConfiguration_settings, "Settings Trigger" - field = "Trigger type", trigger_type - field = "Operation mode", operationMode - field = "With VR sensors only rising edge has reliable position" - field = "use only rising edge", useOnlyRisingEdgeForTrigger - field = "Trigger Angle Offset", globalTriggerAngleOffset - field = "#Custom Trigger" - field = "total Tooth Count", trigger_customTotalToothCount, {trigger_type == 0} - field = "skipped Tooth Count", trigger_customSkippedToothCount, {trigger_type == 0} -; field = "sync Ratio From", trigger_customSyncRatioFrom, {trigger_type == 0} -; field = "sync Ratio To", trigger_customSyncRatioTo, {trigger_type == 0} - field = "use Rise Edge?", trigger_customUseRiseEdge, {trigger_type == 0} - dialog = triggerConfiguration_IO, "Settings I/O" - field = "!ECU reboot needed to apply pin assignment" - field = "#Cam is primary if you have cam sensor" - field = "Primary input channel", triggerInputPins1 - field = "Secondary channel", triggerInputPins2, { trigger_type != 0 && trigger_type != 8 && trigger_type != 9 && trigger_type != 18 && trigger_type != 20} - field = "Cam Sync/VVT input", camInput - field = "VVT mode", vvtMode, {trigger_type != 80} - field = "VVT use rise front", vvtCamSensorUseRise, {trigger_type != 80} - field = "VVT position display offset", vvtOffset - field = "VVT display inverted", vvtDisplayInverted - field = "NB2 from temp", nb2ratioFrom - field = "NB2 to temp", nb2ratioTo - field = "nbVvtIndex", nbVvtIndex - field = "Trigger error LED", triggerErrorPin - field = "Trigger error LED mode", triggerErrorPinMode - field = "print sync details to console", isPrintTriggerSynchDetails - dialog = triggerConfiguration - panel = triggerConfiguration_settings, North - panel = triggerConfiguration_IO, South - -; Engine->Injection Settings - dialog = injChars, "Injector Settings", yAxis - field = "Injector Flow", injector_flow - field = "phase offset", extraInjectionOffset - - dialog = injIO, "Injector Output", yAxis - field = "!ECU reboot needed to apply these settings" - field = "injection Pin Mode", injectionPinMode - field = "Injection Pin 1", injectionPins1 - field = "Injection Pin 2", injectionPins2, {cylindersCount > 1} - field = "Injection Pin 3", injectionPins3, {cylindersCount > 2} - field = "Injection Pin 4", injectionPins4, {cylindersCount > 3} - field = "Injection Pin 5 ", injectionPins5, {cylindersCount > 4} - field = "Injection Pin 6 ", injectionPins6, {cylindersCount > 5} - field = "Injection Pin 7 ", injectionPins7, {cylindersCount > 6} - field = "Injection Pin 8 ", injectionPins8, {cylindersCount > 7} - field = "Injection Pin 9 ", injectionPins9, {cylindersCount > 8} - field = "Injection Pin 10 ", injectionPins10, {cylindersCount > 9} - field = "Injection Pin 11 ", injectionPins11, {cylindersCount > 10} - field = "Injection Pin 12 ", injectionPins12, {cylindersCount > 11} - - dialog = injectorSetting, "", yAxis - panel = injChars, North - panel = injIO, East - - dialog = injectionSettings, "", xAxis - panel = injectorSetting, West - panel = injectorsDeadTime, East - -; Engine->Ignition Settings - dialog = ignitionOutputs, "Ignition Outputs" - field = "Ignition Pin Mode", ignitionPinMode - field = "Ignition Pin 1", ignitionPins1 - field = "Ignition Pin 2", ignitionPins2, {(ignitionMode != 0 && cylindersCount > 1) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 2) || (firingOrder == 7) || (firingOrder == 9) || (firingOrder == 11) || (firingOrder == 12)))} - field = "Ignition Pin 3", ignitionPins3, {(ignitionMode != 0 && cylindersCount > 2) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 1) || (firingOrder == 3) || (firingOrder == 4) || (firingOrder == 5) || (firingOrder == 9)))} - field = "Ignition Pin 4", ignitionPins4, {(ignitionMode != 0 && cylindersCount > 3) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 7) || (firingOrder == 12)))} - field = "Ignition Pin 5", ignitionPins5, {(ignitionMode != 0 && cylindersCount > 4) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 4) || (firingOrder == 12)))} - field = "Ignition Pin 6", ignitionPins6, {(ignitionMode != 0 && cylindersCount > 5) && (ignitionMode !=2 || twoWireBatchIgnition == 1 )} - field = "Ignition Pin 7", ignitionPins7, {(ignitionMode != 0 && cylindersCount > 6) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 11)))} - field = "Ignition Pin 8", ignitionPins8, {(ignitionMode != 0 && cylindersCount > 7) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11)))} - field = "Ignition Pin 9", ignitionPins9, {(ignitionMode != 0 && cylindersCount > 8) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11)))} - field = "Ignition Pin 10", ignitionPins10, {(ignitionMode != 0 && cylindersCount > 9) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11)))} - field = "Ignition Pin 11", ignitionPins11, {(ignitionMode != 0 && cylindersCount > 10) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11)))} - field = "Ignition Pin 12", ignitionPins12, {(ignitionMode != 0 && cylindersCount > 11) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11)))} - field = "This is useful to have tachometer working while converting from distributor" - field = "Dizzy out Pin", dizzySparkOutputPin - field = "Dizzy out Pin Mode", dizzySparkOutputPinMode - - dialog = ignitionSettings, "", xAxis - panel = ignitionOutputs, West - panel = dwellCorrection, Center - -; Engine->Aux1 Thermistor Settings - dialog = auxTempSensor1_thermistor, "aux1 Thermistor Settings" - field = "!Here is three pairs of thermistor temperature and his resistance." - field = "!Typical temperatures is -40°C, 0°C and 100°C" - field = "" - field = "Lowest temperature", auxTempSensor1_tempC_1 - field = "Resistance @ LT", auxTempSensor1_resistance_1 - field = "" - field = "Middle temperature", auxTempSensor1_tempC_2 - field = "Resistance @ MT", auxTempSensor1_resistance_2 - field = "" - field = "Highest temperature", auxTempSensor1_tempC_3 - field = "Resistance @ HT", auxTempSensor1_resistance_3 - dialog = auxTempSensor1Sensor_IO, "auxTempSensor1 Sensor I/O" - field = "auxTempSensor1 ADC input", auxTempSensor1_adcChannel - field = "Bias Resistor Value", auxTempSensor1_bias_resistor - dialog = auxTempSensor1Sensor, "", yAxis - panel = auxTempSensor1_thermistor, North - panel = auxTempSensor1Sensor_IO, South - -; Engine->Aux2 Thermistor Settings - dialog = auxTempSensor2_thermistor, "aux1 Thermistor Settings" - field = "!Here is three pairs of thermistor temperature and his resistance." - field = "!Typical temperatures is -40°C, 0°C and 100°C" - field = "" - field = "Lowest temperature", auxTempSensor2_tempC_1 - field = "Resistance @ LT", auxTempSensor2_resistance_1 - field = "" - field = "Middle temperature", auxTempSensor2_tempC_2 - field = "Resistance @ MT", auxTempSensor2_resistance_2 - field = "" - field = "Highest temperature", auxTempSensor2_tempC_3 - field = "Resistance @ HT", auxTempSensor2_resistance_3 - dialog = auxTempSensor2Sensor_IO, "auxTempSensor2 Sensor I/O" - field = "auxTempSensor2 ADC input", auxTempSensor2_adcChannel - field = "Bias Resistor Value", auxTempSensor2_bias_resistor - dialog = auxTempSensor2Sensor, "", yAxis - panel = auxTempSensor2_thermistor, North - panel = auxTempSensor2Sensor_IO, South - - - dialog = allPins1 - field = "MAP ADC input", map_sensor_hwChannel - field = "frequencyReportingMapInputPin", frequencyReportingMapInputPin - field = "CLT ADC input", clt_adcChannel - field = "IAT ADC input", iat_adcChannel - field = "vBatt ADC input", vbattAdcChannel - field = "TPS ADC input", tpsAdcChannel - field = "MAF ADC input", mafAdcChannel - field = "AFR ADC input", afr_hwChannel - field = "fuelLevelSensor", fuelLevelSensor - field = "Baro ADC input", baroSensor_hwChannel - field = "pedal Position Channel", pedalPositionChannel - field = "Primary input channel", triggerInputPins1 - field = "Secondary channel", triggerInputPins2 - field = "Cam Sync/VVT input", camInput - field = "Vehicle Speed Input pin", vehicleSpeedSensorInputPin - field = "clutchDownPin", clutchDownPin - field = "clutchUpPin", clutchUpPin - - dialog = allPins2 - field = "Tachometer output Pin", tachOutputPin - field = "Dizzy out Pin", dizzySparkOutputPin - field = "O2 heater pin", o2heaterPin - field = "Idle Solenoid Pin", idle_solenoidPin - field = "Idle Stepper Dir", idle_stepperDirectionPin - field = "Idle Stepper Step", idle_stepperStepPin - field = "Idle Stepper Enable", stepperEnablePin - field = "Fuel Pump Pin", fuelPumpPin - field = "ETB Dir #1", etbDirectionPin1 - field = "ETB Dir #2", etbDirectionPin2 - field = "ETB Control #1", etbControlPin1 - field = "ETB Control #2", etbControlPin2 - - dialog = allPins3 - 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 = "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 = allPins4 - field = "FSIO dig inp #1", fsioDigitalInputs1 - field = "FSIO dig inp #2", fsioDigitalInputs2 - field = "FSIO dig inp #3", fsioDigitalInputs3 - field = "FSIO dig inp #4", fsioDigitalInputs4 - field = "FSIO dig inp #5", fsioDigitalInputs5 - field = "FSIO dig inp #6", fsioDigitalInputs6 - field = "FSIO dig inp #7", fsioDigitalInputs7 - field = "FSIO dig inp #8", fsioDigitalInputs8 - field = "FSIO dig inp #9", fsioDigitalInputs9 - - - - dialog = allPins1_2, "", xAxis - panel = allPins1 - panel = allPins2 - - dialog = allPins3_4, "", xAxis - panel = allPins3 - panel = allPins4 - - dialog = allPins, "All Pins", xAxis - panel = allPins1_2 - panel = allPins3_4 - - -; Engine->CLT Thermistor Settings - dialog = clt_thermistor, "CLT Thermistor Settings" - field = "!Here is three pairs of thermistor temperature and his resistance." - field = "!Typical temperatures is -40°C, 0°C and 100°C" - field = "" - field = "Lowest temperature", clt_tempC_1 - field = "Resistance @ LT", clt_resistance_1 - field = "" - field = "Middle temperature", clt_tempC_2 - field = "Resistance @ MT", clt_resistance_2 - field = "" - field = "Highest temperature", clt_tempC_3 - field = "Resistance @ HT", clt_resistance_3 - dialog = cltSensor_IO, "CLT Sensor I/O" - field = "CLT ADC input", clt_adcChannel - field = "Bias Resistor Value", clt_bias_resistor - dialog = cltSensor, "", yAxis - panel = clt_thermistor, North - panel = cltSensor_IO, South - -; Engine->IAT Thermistor Settings - dialog = iat_thermistor, "IAT Thermistor Settings" - field = "!Here is three pairs of thermistor temperature and his resistance." - field = "!Typical temperatures is -40°C, 0°C and 100°C" - field = "" - field = "Lowest temperature", iat_tempC_1 - field = "Resistance @ LT", iat_resistance_1 - field = "" - field = "Middle temperature", iat_tempC_2 - field = "Resistance @ MT", iat_resistance_2 - field = "" - field = "Highest temperature", iat_tempC_3 - field = "Resistance @ HT", iat_resistance_3 - dialog = iatSensor_IO, "IAT Sensor I/O" - field = "IAT ADC input", iat_adcChannel - field = "Bias Resistor Value", iat_bias_resistor - dialog = iatSensor, "", yAxis - panel = iat_thermistor, North - panel = iatSensor_IO, South - -; Engine->MAP Sensor Settings - dialog = mapSensorVDlg, "Voltage Sensor Settings", xAxis - field = "MAP ADC input", map_sensor_hwChannel, {hasFrequencyReportingMapSensor == 0} - field = "Map type", map_sensor_type, {hasFrequencyReportingMapSensor == 0} - field = "MAP value low point", map_sensor_lowValue, { map_sensor_type == 0 && hasFrequencyReportingMapSensor == 0} - field = "MAP voltage low point", mapLowValueVoltage, { map_sensor_type == 0 && hasFrequencyReportingMapSensor == 0} - field = "MAP value high point", map_sensor_highValue, { map_sensor_type == 0 && hasFrequencyReportingMapSensor == 0} - field = "MAP voltage high value", mapHighValueVoltage, { map_sensor_type == 0 && hasFrequencyReportingMapSensor == 0} - - dialog = mapSensorFDlg, "Frequency Sensor Settings", xAxis - field = "pin", frequencyReportingMapInputPin, {hasFrequencyReportingMapSensor == 1} - field = "0 kPa freq", mapFrequency0Kpa, {hasFrequencyReportingMapSensor == 1} - field = "100 kpa freq", mapFrequency100Kpa, {hasFrequencyReportingMapSensor == 1} - - dialog = mapCurves, "", border - panel = map_samplingAngleCurve, West - panel = map_samplingWindowCurve, East - - dialog = mapSwitch, "MAP input type" - field = "frequency-based MAP", hasFrequencyReportingMapSensor - - dialog = mapVandF, "V and F" - panel = mapSensorVDlg, North - panel = mapSensorFDlg, South - - dialog = mapSwitchAndSettings, "Switch and Settings" - field = "!ECU reboot needed to apply pin assignment" - panel = mapSwitch, North - panel = mapVandF, South - - dialog = mapSettings, "MAP Sensor Settings", border - panel = mapCurves, North - panel = mapSwitchAndSettings, South - -; Engine->EGO Sensor Settings - dialog = egoSettings_sensor, "EGO Sensor Settings" - 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 = "AFR ADC input", afr_hwChannel - field = "O2 heater pin", o2heaterPin - dialog = egoSettings, "", yAxis - panel = egoSettings_sensor, North - panel = egoSettings_IO, South - -; Engine->EGT inputs - dialog = egtInputs, "EGT inputs" - field = "SPI", max31855spiDevice - field = "CS #1", max31855_cs1 - field = "CS #2", max31855_cs2 - field = "CS #3", max31855_cs3 - field = "CS #4", max31855_cs4 - field = "CS #5", max31855_cs5 - field = "CS #6", max31855_cs6 - field = "CS #7", max31855_cs7 - field = "CS #8", max31855_cs8 - -; Engine->idle Settings - dialog = idleSolenoid, "solenoid" - field = "Idle Solenoid Pin Mode", idle_solenoidPinMode, !useStepperIdle - field = "Idle Solenoid Pin", idle_solenoidPin, !useStepperIdle - field = "Idle Solenoid Frequency", idle_solenoidFrequency, !useStepperIdle - - dialog = idleStepper, "stepper" - field = "Idle Stepper Step", idle_stepperStepPin, useStepperIdle - field = "Idle Stepper Dir", idle_stepperDirectionPin, useStepperIdle - field = "Idle Stepper Enable", stepperEnablePin, useStepperIdle - field = "Idle Stepper Enable mode", stepperEnablePinMode, useStepperIdle - field = "Stepper reaction time", idleStepperReactionTime, useStepperIdle - field = "Stepper total steps", idleStepperTotalSteps, useStepperIdle - - dialog = idleType, "Type idle valve", border - panel = idleSolenoid, West - panel = idleStepper, East - - dialog = idleSettings, "", yAxis - field = "Manual mode", idleMode - field = "Cranking Extra", crankingIdleAdjustment - field = "Auto target", targetIdleRpm, { idleMode == 0} - field = "idle P", idleRpmPid_pFactor - field = "idle I", idleRpmPid_iFactor - field = "idle D", idleRpmPid_dFactor - field = "idle offset", idleRpmPid_offset - slider = "Manual Idle Position", manIdlePosition, horizontal - field = "" - field = "use stepper", useStepperIdle - panel = idleType - -; Engine->Fan Settings - dialog = fanSetting, "Fan Settings" - field = "Fan On Temperature", fanOnTemperature - field = "Fan Off Temperature", fanOffTemperature - field = "" - field = "!ECU reboot needed to apply these settings" - field = "Fan Pin Mode", fanPinMode - field = "Fan Pin", fanPin - -; Engine->Main Relay Settings - dialog = mainRealay, "Main Relay Settings" - field = "!ECU reboot needed to apply these settings" - field = "Main Relay Mode", mainRelayPinMode - field = "Main Relay Pin", mainRelayPin - -; Engine->Fuel Pump Settings - dialog = fuelPump, "Fuel Pump Settings" - field = "!ECU reboot needed to apply these settings" - field = "Fuel Pump Pin Mode", fuelPumpPinMode - field = "Fuel Pump Pin", fuelPumpPin - -; Engine->MIL Settings - dialog = malfunction, "Check Engine Settings" - field = "!ECU reboot needed to apply these settings" - field = "Check Engine Pin Mode", malfunctionIndicatorPinMode - field = "Check Engine Pin", malfunctionIndicatorPin - field = "Warning Period", warningPeriod - -; Engine->hip9011 Settings - dialog = hipFunction, "HIP9011 Settings (knock decoder)" - field = "Enabled", isHip9011Enabled - field = "Threshold", knockVThreshold, {isHip9011Enabled == 1} - field = "!ECU reboot needed to apply these settings" - field = "IntHold pin (hip9011 input)", hip9011IntHoldPin, {isHip9011Enabled == 1} - field = "IntHold pin (hip9011 input) mode", hip9011IntHoldPinMode, {isHip9011Enabled == 1} - field = "ChipSelect pin", hip9011CsPin, {isHip9011Enabled == 1} - field = "ChipSelect mode", hip9011CsPinMode, {isHip9011Enabled == 1} - field = "hip Output/stm input", hipOutputChannel, {isHip9011Enabled == 1} - field = "prescaler & SDO", hip9011PrescalerAndSDO, {isHip9011Enabled == 1} - field = "Band Freq override", knockBandCustom, {isHip9011Enabled == 1} - field = "SPI device", hip9011SpiDevice, {isHip9011Enabled == 1} - field = "SPI2sck", spi2SckMode, {isHip9011Enabled == 1} - field = "SPI2mosi", spi2MosiMode, {isHip9011Enabled == 1} - field = "SPI2miso", spi2MisoMode, {isHip9011Enabled == 1} - panel = knockThresholdCurve - -; Engine->cj125 Settings - dialog = cj125Function, "CJ125 Settings (wbo decoder)" - field = "Enabled", isCJ125Enabled - field = "!ECU reboot needed to apply these settings" - field = "ChipSelect pin", cj125CsPin, {isCJ125Enabled == 1} - field = "ChipSelect mode", cj125CsPinMode, {isCJ125Enabled == 1} - field = "SPI device", cj125SpiDevice - field = "UA input", cj125ua, {isCJ125Enabled == 1} - field = "UR input", cj125ur, {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 = "SPI1 MISO", spi1misoPin, {is_enabled_spi_1 == 1} - field = "SPI1 SCK", spi1sckPin, {is_enabled_spi_1 == 1} - field = "SPI2 enable", is_enabled_spi_2 - 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 enable", is_enabled_spi_3 - 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} - - dialog = fuelClosedLoopDialog, "Fuel closed-loop correction" - field = "Enabled", fuelClosedLoopCorrectionEnabled - field = "!No correction below these value" - field = "CLT - low threshod", fuelClosedLoopCltThreshold, {fuelClosedLoopCorrectionEnabled == 1} - field = "RPM - low threshod", fuelClosedLoopRpmThreshold, {fuelClosedLoopCorrectionEnabled == 1} - field = "EGO - low threshod", fuelClosedLoopAfrLowThreshold, {fuelClosedLoopCorrectionEnabled == 1} - field = "!No correction above these value" - field = "TPS - high threshod", fuelClosedLoopTpsThreshold, {fuelClosedLoopCorrectionEnabled == 1} - field = "EGO - high threshod", fuelClosedLoopAfrHighThreshold, {fuelClosedLoopCorrectionEnabled == 1} - field = "!PID settings" - field = "P factor", fuelClosedLoopPid_pFactor, {fuelClosedLoopCorrectionEnabled == 1} - field = "I factor", fuelClosedLoopPid_iFactor, {fuelClosedLoopCorrectionEnabled == 1} - field = "D factor", fuelClosedLoopPid_dFactor, {fuelClosedLoopCorrectionEnabled == 1} - - - dialog = auxPidDialog, "Aux PID" - field = "Enabled", activateAuxPid1 - field = "FSIO pin #1", auxPidPins1 - field = "PWM Frequency", auxPidFrequency1 - field = "verbose", isVerboseAuxPid1 - field = "#target based on FSIO map#1" - field = "control period", auxPidDT1, {activateAuxPid1 == 1} - field = "#PID control" - field = "offset", auxPid1_offset, {activateAuxPid1 == 1} - field = "P factor", auxPid1_pFactor, {activateAuxPid1 == 1} - field = "I factor", auxPid1_iFactor, {activateAuxPid1 == 1} - field = "D factor", auxPid1_dFactor, {activateAuxPid1 == 1} - field = "FSIO pin #2", auxPidPins2 - field = "FSIO pin #3", auxPidPins3 - field = "FSIO pin #4", auxPidPins4 - -; Engine->Battery & Alternator - dialog = batteryDialog, "Battery Settings", yAxis - field = "vBatt ADC input", vbattAdcChannel - field = "Battery Input Divider Coefficient", vbattDividerCoeff - dialog = alternator, "Alternator Settings", yAxis - field = "Enabled", isAlternatorControlEnabled - field = "simple on/off mode", onOffAlternatorLogic, {isAlternatorControlEnabled == 1} - field = "Target", targetVBatt, {isAlternatorControlEnabled == 1} - field = "Pin", alternatorControlPin, {isAlternatorControlEnabled == 1} - field = "Pin Mode", alternatorControlPinMode, {isAlternatorControlEnabled == 1} - field = "PWM frequency", alternatorPwmFrequency, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} - field = "Off Above TPS", alternatorOffAboveTps, {isAlternatorControlEnabled == 1} - field = "Verbose", isVerboseAlternator, {isAlternatorControlEnabled == 1} - field = "control period", alternatorDT, {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 = "#% duty = Pterm + Iterm + Dterm + offset%" - - - dialog = warmupFuelDialog, "Warmup fuel closed-loop", yAxis - field = "use automatic Pid Afr control", useWarmupPidAfr - field = "warmup temperature Threshold", warmupAfrThreshold - field = "wa offset", warmupAfrPid_offset - field = "wa P factor", warmupAfrPid_pFactor - field = "wa I factor", warmupAfrPid_iFactor - field = "wa D factor", warmupAfrPid_dFactor - field = "#correction = Pterm + Iterm + Dterm + offset" - - - dialog = energySystems, "Battery and Alternator Settings", yAxis - panel = batteryDialog - panel = alternator - -; Engine->Speed Sensor - dialog = speedSensor, "Speed Sensor Settings" - field = "Input pin", vehicleSpeedSensorInputPin - field = "revolution to speed mult", vehicleSpeedCoef - -; Engine->Other inputs - dialog = analogInputs, "Analog inputs" - field = "!ECU reboot needed to apply these settings" - field = "TPS ADC input", tpsAdcChannel - field = "TPS low value detection threshold", tpsErrorDetectionTooLow - field = "TPS high value detection threshold", tpsErrorDetectionTooHigh - field = "!todo: move MAF channel to maf curve dialog" - field = "MAF ADC input", mafAdcChannel - field = "Baro ADC input", baroSensor_hwChannel - field = "Analog divider", analogInputDividerCoefficient - field = "Use BiQuad averaging", useBiQuadAnalogFiltering - field = "Smoothing factor", slowAdcAlpha, {useBiQuadAnalogFiltering == 0} - field = "Bi_Q a0", biQuad_a0, {useBiQuadAnalogFiltering == 1} - field = "Bi_Q a1", biQuad_a1, {useBiQuadAnalogFiltering == 1} - field = "Bi_Q a2", biQuad_a2, {useBiQuadAnalogFiltering == 1} - field = "Bi_Q b1", biQuad_b1, {useBiQuadAnalogFiltering == 1} - field = "Bi_Q b2", biQuad_b2, {useBiQuadAnalogFiltering == 1} - - dialog = tachSettings, "Tachometer output" - field = "!See also dizzySparkOutputPin" - field = "pin", tachOutputPin - field = "pin mode", tachOutputPinMode - field = "rise at trigger index", tachPulseTriggerIndex - field = "pulse duration", tachPulseDuractionMs - - -; Board->Connection - dialog = tsPort, "TunerStudio Port" - field = "startConsoleInBinaryMode", startConsoleInBinaryMode - field = "tunerStudioSerialSpeed", tunerStudioSerialSpeed - field = "Use PC10/PC11 serial?", useSerialPort - field = "startConsoleInBinaryMode", startConsoleInBinaryMode - - dialog = canBus, "CAN Bus" - field = "Can Read Enabled", canReadEnabled - field = "Can Write Enabled", canWriteEnabled -; field = "Can Nbc Type", canNbcType - field = "Can Sleep Period", canSleepPeriod - field = "TX pin", canTxPin - field = "RX pin", canRxPin - - dialog = sdCard, "SD Card Logger" - field = "SdCard", isSdCardEnabled - field = "log format", logFormat - field = "Mass Storage", storageMode - - 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 = connectRight, "", yAxis - panel = tsPort - panel = canBus - panel = sdCard - panel = gpsReceiver - - dialog = connection, "", border - panel = lcdScreen, East - panel = connectRight, West - - dialog = joystickPanel, "Joystick" - field = "joustick center button", joystickCenterPin - field = "joustick button A", joystickAPin - field = "joustick button B", joystickBPin - field = "joustick button C", joystickCPin - field = "joustick button D", joystickDPin - - dialog = monitoringSettings, "rusEfi Console Settings" - field = "Sensor Sniffer", sensorChartMode - field = " Threshold", sensorSnifferRpmThreshold - field = " Each X cycle", sensorChartFrequency - field = "Engine Sniffer", isEngineChartEnabled - field = " Threshold", engineSnifferRpmThreshold - - - -; Tuning->General - dialog = generalSettings, "General" - field = "RPM Hard Limit", rpmHardLimit - field = "Boost Cut Pressure", boostCutPressure - field = "" - field = "Fuel Algorithm", fuelAlgorithm - field = "" - field = "#System hack's" - field = "Global fuel correction", globalFuelCorrection - field = "Ignition Math Logic @", ignMathCalculateAtIndex - field = "MAP Averaging Logic @", mapAveragingSchedulingAtIndex - field = "comm status pin", communicationPin - field = "running status", runningPin - - dialog = crankingFuel, "Fuel" - field = "Injection Mode", crankingInjectionMode - field = "Base Fuel Pulse Width", cranking_baseFuel - - - dialog = crankingIgnition, "Ignition" - field = "Advance", crankingTimingAngle - field = "Use fixed Dwell?", useConstantDwellDuringCranking - field = "Fixed Dwell", ignitionDwellForCrankingMs, {useConstantDwellDuringCranking == 1} - field = "Charge Angle", crankingChargeAngle, {useConstantDwellDuringCranking == 0} - - dialog = postCrankingEnrichment, "Post-cranking short-time fuel enrichment" - field = "Target temperature", postCrankingTargetClt - field = "Post-Cranking factor", postCrankingFactor - field = "Duraction", postCrankingDurationSec - - -; Tuning->Cranking - dialog = crankingDialog, "Cranking" - field = "Cranking RPM limit", cranking_rpm - panel = crankingFuel - panel = crankingIgnition - panel = postCrankingEnrichment - field = "" - field = "" - field = "enable Cylinder Cleanup", isCylinderCleanupEnabled - - - dialog = EngineLoadAccelPanel, "Engine Load" - field = "Length", engineLoadAccelLength - field = "Accel Threshold", engineLoadAccelEnrichmentThreshold - field = "Accel Multiplier", engineLoadAccelEnrichmentMultiplier - field = "Decel Threshold", engineLoadDecelEnleanmentThreshold - field = "Decel Multiplier", engineLoadDecelEnleanmentMultiplier - - dialog = TpsAccelPanel, "TPS" - field = "Length", tpsAccelLength - field = "Accel Threshold", tpsAccelEnrichmentThreshold - field = "Decel Threshold", tpsDecelEnleanmentThreshold -; field = "Decel Multiplier", tpsDecelEnleanmentMultiplier - -; Tuning->AccelEnrichment - dialog = AccelEnrich, "Accel/Decel Enrichment" - panel = EngineLoadAccelPanel - panel = TpsAccelPanel - field = "sucked off wall coefficient", suckedOffCoef - field = "added to wall coef", addedToWallCoef - - -; Flex Logic - dialog = fsioIO, "Outputs" - field = "output #1", fsioPins1 - field = "output #2", fsioPins2 - field = "output #3", fsioPins3 - field = "output #4", fsioPins4 - field = "output #5", fsioPins5 - field = "output #6", fsioPins6 - field = "output #7", fsioPins7 - field = "output #8", fsioPins8 - field = "output #9", fsioPins9 - field = "output #10", fsioPins10 - field = "output #11", fsioPins11 - field = "output #12", fsioPins12 - field = "output #13", fsioPins13 - field = "output #14", fsioPins14 - field = "output #15", fsioPins15 - field = "output #16", fsioPins16 - field = "" - field = "" - - dialog = fsioFrequency, "Frequency" - field = "freq #1", fsioFrequency1 - field = "freq #2", fsioFrequency2 - field = "freq #3", fsioFrequency3 - field = "freq #4", fsioFrequency4 - field = "freq #5", fsioFrequency5 - field = "freq #6", fsioFrequency6 - field = "freq #7", fsioFrequency7 - field = "freq #8", fsioFrequency8 - field = "freq #9", fsioFrequency9 - field = "freq #10", fsioFrequency10 - field = "freq #11", fsioFrequency11 - field = "freq #12", fsioFrequency12 - field = "freq #13", fsioFrequency13 - field = "freq #14", fsioFrequency14 - field = "freq #15", fsioFrequency15 - field = "freq #16", fsioFrequency16 - field = "" - field = "" - - dialog = fsioSetting, "Setting" - field = "Set number is not associated with the output number." - field = "Set number, only the cell number with some numbers." - field = "set #0", fsio_setting1 - field = "set #1", fsio_setting2 - field = "set #2", fsio_setting3 - field = "set #3", fsio_setting4 - field = "set #4", fsio_setting5 - field = "set #5", fsio_setting6 - field = "set #6", fsio_setting7 - field = "set #7", fsio_setting8 - field = "set #8", fsio_setting9 - field = "set #9", fsio_setting10 - field = "set #10", fsio_setting11 - field = "set #11", fsio_setting12 - field = "set #12", fsio_setting13 - field = "set #13", fsio_setting14 - field = "set #14", fsio_setting15 - field = "set #15", fsio_setting16 - - dialog = fsioOutputsDialog, "FSIO outputs", border - panel = fsioIO, West - panel = fsioFrequency, Center - panel = fsioSetting, East - - - dialog = fsioInputsDialog, "FSIO inputs" - field = "ADC #1", fsioAdc1 - field = "ADC #2", fsioAdc2 - field = "ADC #3", fsioAdc3 - field = "ADC #4", fsioAdc4 - - dialog = etbDialog, "Electronic Thtottle Body (alpha)" - field = "pedal Position Channel", pedalPositionChannel - field = "Pedal min", pedalPositionMin - field = "Pedal max", pedalPositionMax - field = "PWM Frequency", etbFreq - field = "Dir #1", etbDirectionPin1 - field = "Dir #2", etbDirectionPin2 - field = "Control #1", etbControlPin1 - field = "Control #2", etbControlPin2 - - dialog = testSpark, "Spark" - commandButton = "Spark #1", cmd_test_spk1 - commandButton = "Spark #2", cmd_test_spk2 - commandButton = "Spark #3", cmd_test_spk3 - commandButton = "Spark #4", cmd_test_spk4 - commandButton = "Spark #5", cmd_test_spk5 - commandButton = "Spark #6", cmd_test_spk6 - commandButton = "Spark #7", cmd_test_spk7 - commandButton = "Spark #8", cmd_test_spk8 - - dialog = testInjectors, "Fuel" - commandButton = "Injector #1", cmd_test_inj1 - commandButton = "Injector #2", cmd_test_inj2 - commandButton = "Injector #3", cmd_test_inj3 - commandButton = "Injector #4", cmd_test_inj4 - commandButton = "Injector #5", cmd_test_inj5 - commandButton = "Injector #6", cmd_test_inj6 - commandButton = "Injector #7", cmd_test_inj7 - commandButton = "Injector #8", cmd_test_inj8 - - dialog = testMisc, "Misc" - commandButton = "Fuel Pump", cmd_test_fuel_pump - commandButton = "Radiator Fan", cmd_test_radiator_fan - commandButton = "Check Engine", cmd_test_check_engine_light - commandButton = "Idle Air Valve", cmd_test_idle_valve - - dialog = ioTest, "I-O Test", border - panel = testSpark, West - panel = testInjectors, Center - panel = testMisc, East - - -; Board->ECU stimulator - dialog = ecuStimulator, "ECU stimulator" - field = "Trigger Simulator", triggerSimulatorFrequency - field = "self-stimulation", directSelfStimulation - field = "" - field = "digipot spi", digitalPotentiometerSpiDevice - field = "digipot CS #0", digitalPotentiometerChipSelect1 - field = "digipot CS #1", digitalPotentiometerChipSelect2 - field = "digipot CS #2", digitalPotentiometerChipSelect3 - field = "digipot CS #3", digitalPotentiometerChipSelect4 - field = "" - field = "trigger stimulator pin #1", triggerSimulatorPins1 - field = "trigger stimulator pin #2", triggerSimulatorPins2 - field = "trigger stimulator pin #3", triggerSimulatorPins3 - field = "" - field = "Logic input channel 1", logicAnalyzerPins1 - field = "Logic input channel 2", logicAnalyzerPins2 - field = "Logic input channel 3", logicAnalyzerPins3 - field = "Logic input channel 4", logicAnalyzerPins4 - field = "" - field = "Engine chart size", engineChartSize - - ; Racing Features->Launch Control - dialog = smLaunchControl, "Launch Control Settings" - field = "RPM Step1 Limit", step1rpm - field = "Launch RPM Window" step1RpmWindow - field = "Step1 Ignition Advance", step1timing - field = "Use Spark Cut", step1SparkCutEnable - field = "Use Fuel Cut", step1fuelCutEnable - field = "clutchDownPin", clutchDownPin - field = "clutchUpPin", clutchUpPin - +; this is TunerStudio project for www.rusefi.com DIY engine management system + +; this should stop TS from looking for the CAN ID in the 2nd byte location and allow the page reads to work correctly. +enable2ndByteCanID = false + +#unset tuneByMAF + +[TunerStudio] + queryCommand = "S" + signature = "MShift v0.02" ; signature is expected to be 7 or more characters. + +[Constants] +; new packet serial format with CRC + messageEnvelopeFormat = msEnvelope_1.0 + + endianness = little + nPages = 1 + + + pageIdentifier = "\x00\x00" + pageReadCommand = "R\x00\x00%2o%2c" + burnCommand = "B\x00\x00" + pageActivate = "P\x00\x00" + pageValueWrite = "W\x00\x00%2o%v" + pageChunkWrite = "C\x00\x00%2o%2c%v" +; crc32CheckCommand = "k%2i%2o\xB8\x36" + crc32CheckCommand = "k\x00\x00\x00\x00\x36\xB8" + +;communication settings + pageActivationDelay = 500 ; Milliseconds delay after burn command. See https://sourceforge.net/p/rusefi/tickets/77/ +;e.g. put writeblocks off and add an interwrite delay + writeBlocks = on + interWriteDelay = 10 + blockReadTimeout = 3000; Milliseconds general timeout + + blockingFactor = 400 ; max chunk size +;end communication settings + + ; name = bits, type, offset, bits + ; name = array, type, offset, shape, units, scale, translate, lo, hi, digits + ; name = scalar, type, offset, units, scale, translate, lo, hi, digits + +; see PAGE_0_SIZE in C source code +; CONFIG_DEFINITION_START +; this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Wed Feb 22 21:11:22 EST 2017 + +pageSize = 16376 +page = 1 + engineType = bits, S32, 0, [0:2], "AUDI_AAN", "DODGE_NEON_1995", "FORD_ASPIRE_1996", "FORD_FIESTA", "NISSAN_PRIMERA", "HONDA_ACCORD", "FORD_INLINE_6_1995", "GY6_139QMB" + engineSnifferRpmThreshold = scalar, S32, 4, "RPM", 1, 0, 0,30000, 0 + injector_flow = scalar, F32, 8, "cm3/min", 1, 0, 0, 1000, 2 +;skipping injector_unusedlag offset 12 + injector_battLagCorrBins = array, F32, 16, [8], "V", 1, 0, 0.0, 20.0, 2 + injector_battLagCorr = array, F32, 48, [8], "ms/V", 1, 0, 0.0, 50.0, 2 + directSelfStimulation = bits, U32, 80, [0:0], "false", "true" + activateAuxPid1 = bits, U32, 80, [1:1], "false", "true" + isVerboseAuxPid1 = bits, U32, 80, [2:2], "false", "true" + activateAuxPid2 = bits, U32, 80, [3:3], "false", "true" + isVerboseAuxPid2 = bits, U32, 80, [4:4], "false", "true" + activateAuxPid3 = bits, U32, 80, [5:5], "false", "true" + isVerboseAuxPid3 = bits, U32, 80, [6:6], "false", "true" + activateAuxPid4 = bits, U32, 80, [7:7], "false", "true" + isVerboseAuxPid4 = bits, U32, 80, [8:8], "false", "true" + useBiQuadAnalogFiltering= bits, U32, 80, [9:9], "false", "true" + issue_294_10 = bits, U32, 80, [10:10], "false", "true" + issue_294_11 = bits, U32, 80, [11:11], "false", "true" + issue_294_12 = bits, U32, 80, [12:12], "false", "true" + issue_294_13 = bits, U32, 80, [13:13], "false", "true" + issue_294_14 = bits, U32, 80, [14:14], "false", "true" + issue_294_15 = bits, U32, 80, [15:15], "false", "true" + issue_294_16 = bits, U32, 80, [16:16], "false", "true" + issue_294_17 = bits, U32, 80, [17:17], "false", "true" + issue_294_18 = bits, U32, 80, [18:18], "false", "true" + issue_294_19 = bits, U32, 80, [19:19], "false", "true" + issue_294_21 = bits, U32, 80, [20:20], "false", "true" + issue_294_22 = bits, U32, 80, [21:21], "false", "true" + issue_294_23 = bits, U32, 80, [22:22], "false", "true" + issue_294_24 = bits, U32, 80, [23:23], "false", "true" + issue_294_25 = bits, U32, 80, [24:24], "false", "true" + issue_294_26 = bits, U32, 80, [25:25], "false", "true" + issue_294_27 = bits, U32, 80, [26:26], "false", "true" + issue_294_28 = bits, U32, 80, [27:27], "false", "true" + issue_294_29 = bits, U32, 80, [28:28], "false", "true" + tpsMin = scalar, S16, 84, "ADC", 1, 0, 0, 1023, 0 + tpsMax = scalar, S16, 86, "ADC", 1, 0, 0, 1023, 0 + tpsErrorDetectionTooLow = scalar, S16, 88, "%", 1, 0, -40, 200, 0 + tpsErrorDetectionTooHigh = scalar, S16, 90, "%", 1, 0, -40, 200, 0 + cranking_baseFuel = scalar, F32, 92, "ms", 1, 0, 0, 200, 1 + cranking_rpm = scalar, S16, 96, "RPM", 1, 0, 0, 3000, 0 +;skipping cranking_alignmentFill offset 98 + primingSquirtDurationMs = scalar, F32, 100, "*C", 1, 0, -40, 200, 1 + ignitionDwellForCrankingMs = scalar, F32, 104, "ms", 1, 0, 0, 200, 1 + crankingChargeAngle = scalar, F32, 108, "deg", 1, 0, 0, 3000.0, 0 + map_samplingAngleBins = array, F32, 112, [8], "RPM", 1, 0, 0.0, 18000, 2 + map_samplingAngle = array, F32, 144, [8], "deg", 1, 0, 0.0, 90, 2 + map_samplingWindowBins = array, F32, 176, [8], "RPM", 1, 0, 0.0, 18000, 2 + map_samplingWindow = array, F32, 208, [8], "deg", 1, 0, 0.0, 90, 2 + map_sensor_lowValue = scalar, F32, 240, "kpa", 1, 0, -400, 800, 2 + map_sensor_highValue = scalar, F32, 244, "kpa", 1, 0, -400, 800, 2 + map_sensor_type = bits, U32, 248, [0:2] "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "3 Bar", "INVALID" + map_sensor_hwChannel = bits, U32, 252, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + clt_tempC_1 = scalar, F32, 256, "*C", 1, 0, -40, 200, 1 + clt_tempC_2 = scalar, F32, 260, "*C", 1, 0, -40, 200, 1 + clt_tempC_3 = scalar, F32, 264, "*C", 1, 0, -40, 200, 1 + clt_resistance_1 = scalar, F32, 268, "Ohm", 1, 0, 0, 200000, 1 + clt_resistance_2 = scalar, F32, 272, "Ohm", 1, 0, 0, 200000, 1 + clt_resistance_3 = scalar, F32, 276, "Ohm", 1, 0, 0, 200000, 1 + clt_bias_resistor = scalar, F32, 280, "Ohm", 1, 0, 0, 200000, 1 + clt_adcChannel = bits, U32, 284, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + iat_tempC_1 = scalar, F32, 288, "*C", 1, 0, -40, 200, 1 + iat_tempC_2 = scalar, F32, 292, "*C", 1, 0, -40, 200, 1 + iat_tempC_3 = scalar, F32, 296, "*C", 1, 0, -40, 200, 1 + iat_resistance_1 = scalar, F32, 300, "Ohm", 1, 0, 0, 200000, 1 + iat_resistance_2 = scalar, F32, 304, "Ohm", 1, 0, 0, 200000, 1 + iat_resistance_3 = scalar, F32, 308, "Ohm", 1, 0, 0, 200000, 1 + iat_bias_resistor = scalar, F32, 312, "Ohm", 1, 0, 0, 200000, 1 + iat_adcChannel = bits, U32, 316, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + step1rpm = scalar, S32, 320, "rpm", 1, 0, 0, 20000.0, 2 + step1timing = scalar, S32, 324, "deg", 1, 0, -180, 180, 2 + hip9011PrescalerAndSDO = scalar, S32, 328, "integer", 1, 0.0, 0.0, 32, 0 + knockBandCustom = scalar, F32, 332, "kHz", 1, 0.0, 0.0, 10.0, 2 + sparkDwellRpmBins = array, F32, 336, [8], "RPM", 1, 0.0, 0.0, 18000, 2 + sparkDwellValues = array, F32, 368, [8], "ms", 1, 0.0, 0.0, 30.0, 2 + displacement = scalar, F32, 400, "L", 1, 0, 0, 1000.0, 2 + cylindersCount = bits, U32, 404, [0:3], "INVALID", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, "INVALID", "INVALID", "INVALID" + firingOrder = bits, U32, 408, [0:4], "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", "fo16", "fo17", "INVALID" + cylinderBore = scalar, F32, 412, "mm", 1, 0, 0, 20000.0, 2 + sensorSnifferRpmThreshold = scalar, S32, 416, "RPM", 1, 0, 0,30000, 0 + rpmHardLimit = scalar, S32, 420, "rpm", 1, 0, 0, 20000.0, 2 + fuelAlgorithm = bits, U32, 424, [0:1], "MAF", "Alpha-N/TPS", "MAP", "SPEED DENSITY" + crankingInjectionMode = bits, U32, 428, [0:1], "Simultaneous", "Sequential", "Batch", "INVALID" + injectionMode = bits, U32, 432, [0:1], "Simultaneous", "Sequential", "Batch", "INVALID" + extraInjectionOffset = scalar, F32, 436, "deg", 1, 0.0, -720, 720, 2 + crankingTimingAngle = scalar, F32, 440, "deg", 1, 0.0, -360, 360, 2 + ignitionMode = bits, U32, 444, [0:1], "One coil", "Individual Coils", "Wasted", "INVALID" + ignitionOffset = scalar, F32, 448, "RPM", 1, 0, 0, 3000.0, 0 + timingMode = bits, U32, 452 [0:0], "dynamic", "fixed" + fixedModeTiming = scalar, F32, 456, "RPM", 1, 0, 0, 3000.0, 0 + globalTriggerAngleOffset = scalar, F32, 460, "deg", 1, 0, -720, 720, 0 + analogInputDividerCoefficient = scalar, F32, 464, "coef", 1, 0, 0.01, 10.0, 2 + vbattDividerCoeff = scalar, F32, 468, "coef", 1, 0, 0.01, 99.0, 2 + vbattAdcChannel = bits, U32, 472, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fanOnTemperature = scalar, F32, 476, "*C", 1, 0, 0, 1000.0, 2 + fanOffTemperature = scalar, F32, 480, "*C", 1, 0, 0, 1000.0, 2 + fuelLevelSensor = bits, U32, 484, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + vehicleSpeedCoef = scalar, F32, 488, "coef", 1, 0, 0.01, 2000.0, 2 + canNbcType = bits, U32, 492, [0:1], "BMW", "FIAT", "VAG" , "MAZDA RX8" + canSleepPeriod = scalar, S32, 496, "ms", 1, 0, 0, 1000.0, 2 + operationMode = bits, U32, 500, [0:2], "INVALID", "4 stroke without cam sensor", "4 stroke with cam sensor", "2 stroke", "4 stroke with symmetrical crank", "INVALID", "INVALID", "INVALID" + displayMode = bits, U32, 504, [0:1], "none", "hd44780", "hd44780 over pcf8574", "INVALID" + logFormat = bits, U32, 508, [0:0], "native", "Mega Log Viewer" + byFirmwareVersion = scalar, S32, 512, "index", 1, 0, 0, 300, 0 + HD44780width = scalar, S32, 516, "index", 1, 0, 0, 300, 0 + HD44780height = scalar, S32, 520, "index", 1, 0, 0, 300, 0 + tpsAdcChannel = bits, U32, 524, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +;skipping overrideCrankingIgnition offset 528 + sensorChartFrequency = scalar, S32, 532, "index", 1, 0, 0, 300, 0 ; size 4 + trigger_type = bits, U32, 536, [0:5], "custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "Miata NB", "GM_7X", "Cooper R50", "Mazda SOHC 4", "60/2", "36/1", "Honda 4+24+1", "Mitsubishi", "Honda 4+24", "Honda 1+4+24", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "1+60/2", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Honda 1+24", "Dodge Stratus", "36_2_2_2", "Nissan", "2JZ", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped" , "Dodge Neon 2003 crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "Jeep 18-2-2-2", "trg38", "trg39", "INVALID" + trigger_unusedCustomIsSynchronizationNeeded= bits, U32, 540, [0:0], "false", "true" + trigger_unusedCustomNeedSecondTriggerInput= bits, U32, 540, [1:1], "false", "true" + trigger_useOnlyFirstChannel= bits, U32, 540, [2:2], "false", "true" + trigger_customTotalToothCount = scalar, S32, 544, "number", 1, 0.0, 0, 500.0, 0 + trigger_customSkippedToothCount = scalar, S32, 548, "number", 1, 0.0, 0, 500.0, 0 + trigger_unusedcustomSyncRatioFrom = scalar, F32, 552, "number", 1, 0.0, 0, 1000.0, 4 + trigger_unusedcustomSyncRatioTo = scalar, F32, 556, "number", 1, 0.0, 0, 1000.0, 4 + trigger_customUseRiseEdge = bits, U32, 560, [0:0], "false", "true" + hip9011SpiDevice = bits,U32, 564, [0:1], "Off", "SPI1", "SPI2", "SPI3" + globalFuelCorrection = scalar, F32, 568, "coef", 1, 0.0, 0, 1000.0, 2 + pedalPositionMin = scalar, S16, 572, "ADC", 1, 0, 0, 1023, 0 + pedalPositionMax = scalar, S16, 574, "ADC", 1, 0, 0, 1023, 0 +;skipping maxKnockSubDeg offset 576 + mafAdcChannel = bits, U32, 580, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + afr_hwChannel = bits, U32, 584, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + afr_v1 = scalar, F32, 588, "volts", 1, 0.0, 0, 10.0, 2 + afr_value1 = scalar, F32, 592, "AFR", 1, 0.0, 0, 1000.0, 2 + afr_v2 = scalar, F32, 596, "volts", 1, 0.0, 0, 10.0, 2 + afr_value2 = scalar, F32, 600, "AFR", 1, 0.0, 0, 1000.0, 2 + pedalPositionChannel = bits, U32, 604, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + baroSensor_lowValue = scalar, F32, 608, "kpa", 1, 0, -400, 800, 2 + baroSensor_highValue = scalar, F32, 612, "kpa", 1, 0, -400, 800, 2 + baroSensor_type = bits, U32, 616, [0:2] "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "3 Bar", "INVALID" + baroSensor_hwChannel = bits, U32, 620, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + idle_solenoidPin = bits, U32, 624, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 628, [0:1], "default", "default inverted", "open collector", "open collector inverted" + idle_solenoidFrequency = scalar, S32, 632, "Hz", 1, 0, 0, 3000, 0 + idle_stepperDirectionPin = bits, U32, 636, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 640, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + manIdlePosition = scalar, F32, 644, "%", 1, 0, 0, 100, 0 + fuelPumpPin = bits, U32, 648, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 652, [0:1], "default", "default inverted", "open collector", "open collector inverted" + injectionPins1 = bits, U32, 656, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 660, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 664, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 668, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 672, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 676, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 680, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 684, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 688, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 692, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 696, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 700, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 704, [0:1], "default", "default inverted", "open collector", "open collector inverted" + ignitionPins1 = bits, U32, 708, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 712, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 716, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 720, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 724, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 728, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 732, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 736, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 740, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 744, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 748, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 752, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + ignitionPinMode = bits, U32, 756, [0:1], "default", "default inverted", "open collector", "open collector inverted" + malfunctionIndicatorPin = bits, U32, 760, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 764, [0:1], "default", "default inverted", "open collector", "open collector inverted" + fanPin = bits, U32, 768, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fanPinMode = bits, U32, 772, [0:1], "default", "default inverted", "open collector", "open collector inverted" + mapFrequency0Kpa = scalar, F32, 776, "Hz", 1, 0, 0, 100000, 2 + mapFrequency100Kpa = scalar, F32, 780, "Hz", 1, 0, 0, 100000, 2 + clutchDownPin = bits, U32, 784, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + clutchDownPinMode = scalar, F32, 788, "ms", 1, 0, 0, 200, 1 + alternatorControlPin = bits, U32, 792, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 796, [0:1], "default", "default inverted", "open collector", "open collector inverted" + HD44780_rs = bits, U32, 800, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 804, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 808, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 812, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 816, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 820, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 824, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 828, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, 832, "Rpm", 1, 0, 0,30000, 0 + digitalPotentiometerSpiDevice = bits,U32, 836, [0:1], "Off", "SPI1", "SPI2", "SPI3" + digitalPotentiometerChipSelect1 = bits, U32, 840, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 844, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 848, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 852, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + etbDirectionPin1 = bits, U32, 856, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + etbDirectionPin2 = bits, U32, 860, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + etbControlPin1 = bits, U32, 864, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + etbControlPin2 = bits, U32, 868, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 872, [0:1], "default", "default inverted", "open collector", "open collector inverted" + wboHeaterPin = bits, U32, 876, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 880, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fuelLevelEmptyTankVoltage = scalar, F32, 884, "V", 1, 0, 0,10, 2 + fuelLevelFullTankVoltage = scalar, F32, 888, "V", 1, 0, 0,10, 2 + afr_type = bits, S32, 892, [0:2], "BPSX", "Innovate", "14Point7", "Narrow", "PLX" +;skipping etbDT offset 896 + hip9011CsPinMode = bits, U32, 900, [0:1], "default", "default inverted", "open collector", "open collector inverted" + tachOutputPin = bits, U32, 904, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 908, [0:1], "default", "default inverted", "open collector", "open collector inverted" + triggerInputPins1 = bits, U32, 912, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 916, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 920, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + mainRelayPin = bits, U32, 924, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +;skipping idleThreadPeriod offset 928 +;skipping consoleLoopPeriod offset 932 +;skipping lcdThreadPeriod offset 936 + sdCardCsPin = bits, U32, 940, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +;skipping generalPeriodicThreadPeriod offset 944 + tunerStudioSerialSpeed = scalar, U32, 948, "BPs", 1, 0, 0,1000000, 0 + boardTestModeJumperPin = bits, U32, 952, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +;skipping canDeviceMode offset 956 + canTxPin = bits, U32, 960, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 964, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + triggerSimulatorPins1 = bits, U32, 968, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 972, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 976, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 980, [0:1], "default", "default inverted", "open collector", "open collector inverted" + triggerSimulatorPinModes2 = bits, U32, 984, [0:1], "default", "default inverted", "open collector", "open collector inverted" + triggerSimulatorPinModes3 = bits, U32, 988, [0:1], "default", "default inverted", "open collector", "open collector inverted" + o2heaterPin = bits, U32, 992, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 996, [0:1], "default", "default inverted", "open collector", "open collector inverted" + is_enabled_spi_1 = bits, U32, 1000, [0:0], "false", "true" + is_enabled_spi_2 = bits, U32, 1000, [1:1], "false", "true" + is_enabled_spi_3 = bits, U32, 1000, [2:2], "false", "true" + isSdCardEnabled = bits, U32, 1000, [3:3], "false", "true" + isFastAdcEnabled = bits, U32, 1000, [4:4], "false", "true" + isEngineControlEnabled = bits, U32, 1000, [5:5], "false", "true" + isHip9011Enabled = bits, U32, 1000, [6:6], "false", "true" + isVerboseAlternator = bits, U32, 1000, [7:7], "false", "true" + useSerialPort = bits, U32, 1000, [8:8], "false", "true" + useStepperIdle = bits, U32, 1000, [9:9], "false", "true" + enabledStep1Limiter = bits, U32, 1000, [10:10], "false", "true" + useTpicAdvancedMode = bits, U32, 1000, [11:11], "false", "true" + useLcdScreen = bits, U32, 1000, [12:12], "false", "true" + startConsoleInBinaryMode= bits, U32, 1000, [13:13], "false", "true" + useWarmupPidAfr = bits, U32, 1000, [14:14], "false", "true" + onOffAlternatorLogic = bits, U32, 1000, [15:15], "false", "true" + isCJ125Enabled = bits, U32, 1000, [16:16], "false", "true" + vvtCamSensorUseRise = bits, U32, 1000, [17:17], "false", "true" + logicAnalyzerPins1 = bits, U32, 1004, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1008, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1012, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1016, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +;skipping logicAnalyzerMode offset 1020 +;skipping unrealisticRpmThreashold offset 1024 + mainRelayPinMode = bits, U32, 1028, [0:1], "default", "default inverted", "open collector", "open collector inverted" + max31855_cs1 = bits, U32, 1032, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1036, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1040, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1044, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1048, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1052, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1056, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1060, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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,U32, 1064, [0:1], "Off", "SPI1", "SPI2", "SPI3" + fsioPins1 = bits, U32, 1068, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioPins2 = bits, U32, 1072, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioPins3 = bits, U32, 1076, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioPins4 = bits, U32, 1080, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioPins5 = bits, U32, 1084, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioPins6 = bits, U32, 1088, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioPins7 = bits, U32, 1092, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioPins8 = bits, U32, 1096, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioPins9 = bits, U32, 1100, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioPins10 = bits, U32, 1104, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioPins11 = bits, U32, 1108, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioPins12 = bits, U32, 1112, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioPins13 = bits, U32, 1116, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioPins14 = bits, U32, 1120, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioPins15 = bits, U32, 1124, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioPins16 = bits, U32, 1128, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + gpioPinModes1 = bits, U32, 1132, [0:1], "default", "default inverted", "open collector", "open collector inverted" + gpioPinModes2 = bits, U32, 1136, [0:1], "default", "default inverted", "open collector", "open collector inverted" + gpioPinModes3 = bits, U32, 1140, [0:1], "default", "default inverted", "open collector", "open collector inverted" + gpioPinModes4 = bits, U32, 1144, [0:1], "default", "default inverted", "open collector", "open collector inverted" + gpioPinModes5 = bits, U32, 1148, [0:1], "default", "default inverted", "open collector", "open collector inverted" + gpioPinModes6 = bits, U32, 1152, [0:1], "default", "default inverted", "open collector", "open collector inverted" + gpioPinModes7 = bits, U32, 1156, [0:1], "default", "default inverted", "open collector", "open collector inverted" + gpioPinModes8 = bits, U32, 1160, [0:1], "default", "default inverted", "open collector", "open collector inverted" + gpioPinModes9 = bits, U32, 1164, [0:1], "default", "default inverted", "open collector", "open collector inverted" + gpioPinModes10 = bits, U32, 1168, [0:1], "default", "default inverted", "open collector", "open collector inverted" + gpioPinModes11 = bits, U32, 1172, [0:1], "default", "default inverted", "open collector", "open collector inverted" + gpioPinModes12 = bits, U32, 1176, [0:1], "default", "default inverted", "open collector", "open collector inverted" + gpioPinModes13 = bits, U32, 1180, [0:1], "default", "default inverted", "open collector", "open collector inverted" + gpioPinModes14 = bits, U32, 1184, [0:1], "default", "default inverted", "open collector", "open collector inverted" + gpioPinModes15 = bits, U32, 1188, [0:1], "default", "default inverted", "open collector", "open collector inverted" + gpioPinModes16 = bits, U32, 1192, [0:1], "default", "default inverted", "open collector", "open collector inverted" + consoleUartDevice = bits,U32, 1196, [0:1], "Off", "UART1", "UART2", "UART3" +;skipping unused77 offset 1200 +;skipping unused78 offset 1204 + nb2ratioFrom = scalar, F32, 1208, "value", 1, 0, 0, 1000, 5 + nb2ratioTo = scalar, F32, 1212, "value", 1, 0, 0, 1000, 5 + triggerErrorPin = bits, U32, 1216, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1220, [0:1], "default", "default inverted", "open collector", "open collector inverted" + acRelayPin = bits, U32, 1224, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1228, [0:1], "default", "default inverted", "open collector", "open collector inverted" + fsioFrequency1 = scalar, U16, 1232, "Hz", 1, 0, 0, 3000, 0 + fsioFrequency2 = scalar, U16, 1234, "Hz", 1, 0, 0, 3000, 0 + fsioFrequency3 = scalar, U16, 1236, "Hz", 1, 0, 0, 3000, 0 + fsioFrequency4 = scalar, U16, 1238, "Hz", 1, 0, 0, 3000, 0 + fsioFrequency5 = scalar, U16, 1240, "Hz", 1, 0, 0, 3000, 0 + fsioFrequency6 = scalar, U16, 1242, "Hz", 1, 0, 0, 3000, 0 + fsioFrequency7 = scalar, U16, 1244, "Hz", 1, 0, 0, 3000, 0 + fsioFrequency8 = scalar, U16, 1246, "Hz", 1, 0, 0, 3000, 0 + fsioFrequency9 = scalar, U16, 1248, "Hz", 1, 0, 0, 3000, 0 + fsioFrequency10 = scalar, U16, 1250, "Hz", 1, 0, 0, 3000, 0 + fsioFrequency11 = scalar, U16, 1252, "Hz", 1, 0, 0, 3000, 0 + fsioFrequency12 = scalar, U16, 1254, "Hz", 1, 0, 0, 3000, 0 + fsioFrequency13 = scalar, U16, 1256, "Hz", 1, 0, 0, 3000, 0 + fsioFrequency14 = scalar, U16, 1258, "Hz", 1, 0, 0, 3000, 0 + fsioFrequency15 = scalar, U16, 1260, "Hz", 1, 0, 0, 3000, 0 + fsioFrequency16 = scalar, U16, 1262, "Hz", 1, 0, 0, 3000, 0 + hip9011CsPin = bits, U32, 1264, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1268, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1272, [0:1], "default", "default inverted", "open collector", "open collector inverted" + fsio_setting1 = scalar, F32, 1276, "Val", 1, 0, 0, 18000, 4 + fsio_setting2 = scalar, F32, 1280, "Val", 1, 0, 0, 18000, 4 + fsio_setting3 = scalar, F32, 1284, "Val", 1, 0, 0, 18000, 4 + fsio_setting4 = scalar, F32, 1288, "Val", 1, 0, 0, 18000, 4 + fsio_setting5 = scalar, F32, 1292, "Val", 1, 0, 0, 18000, 4 + fsio_setting6 = scalar, F32, 1296, "Val", 1, 0, 0, 18000, 4 + fsio_setting7 = scalar, F32, 1300, "Val", 1, 0, 0, 18000, 4 + fsio_setting8 = scalar, F32, 1304, "Val", 1, 0, 0, 18000, 4 + fsio_setting9 = scalar, F32, 1308, "Val", 1, 0, 0, 18000, 4 + fsio_setting10 = scalar, F32, 1312, "Val", 1, 0, 0, 18000, 4 + fsio_setting11 = scalar, F32, 1316, "Val", 1, 0, 0, 18000, 4 + fsio_setting12 = scalar, F32, 1320, "Val", 1, 0, 0, 18000, 4 + fsio_setting13 = scalar, F32, 1324, "Val", 1, 0, 0, 18000, 4 + fsio_setting14 = scalar, F32, 1328, "Val", 1, 0, 0, 18000, 4 + fsio_setting15 = scalar, F32, 1332, "Val", 1, 0, 0, 18000, 4 + fsio_setting16 = scalar, F32, 1336, "Val", 1, 0, 0, 18000, 4 + spi1mosiPin = bits, U32, 1340, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1344, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1348, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1352, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1356, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1360, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1364, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1368, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1372, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +;skipping hip9011Gain offset 1376 + joystickCenterPin = bits, U32, 1380, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1384, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1388, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1392, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1396, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + sensorChartMode = bits, S32, 1400, [0:2], "none", "trigger", "MAP", "RPM ACCEL", "DETAILED RPM", "INVALID" +;skipping mafSensorType offset 1404 + vehicleSpeedSensorInputPin = bits, U32, 1408, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1412, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + clutchUpPinMode = scalar, F32, 1416, "ms", 1, 0, 0, 200, 1 + fsioDigitalInputs1 = bits, U32, 1420, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioDigitalInputs2 = bits, U32, 1424, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioDigitalInputs3 = bits, U32, 1428, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioDigitalInputs4 = bits, U32, 1432, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioDigitalInputs5 = bits, U32, 1436, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioDigitalInputs6 = bits, U32, 1440, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioDigitalInputs7 = bits, U32, 1444, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioDigitalInputs8 = bits, U32, 1448, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioDigitalInputs9 = bits, U32, 1452, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioDigitalInputs10 = bits, U32, 1456, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioDigitalInputs11 = bits, U32, 1460, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioDigitalInputs12 = bits, U32, 1464, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioDigitalInputs13 = bits, U32, 1468, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioDigitalInputs14 = bits, U32, 1472, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioDigitalInputs15 = bits, U32, 1476, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioDigitalInputs16 = bits, U32, 1480, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + frequencyReportingMapInputPin = bits, U32, 1484, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + vvtDisplayInverted = bits, U32, 1488, [0:0], "false", "true" + fuelClosedLoopCorrectionEnabled= bits, U32, 1488, [1:1], "false", "true" + unusedBit__5 = bits, U32, 1488, [2:2], "false", "true" + unusedBit__6 = bits, U32, 1488, [3:3], "false", "true" + useConstantDwellDuringCranking= bits, U32, 1488, [4:4], "false", "true" + isEngineChartEnabled = bits, U32, 1488, [5:5], "false", "true" + unusedBit_7 = bits, U32, 1488, [6:6], "false", "true" + unusedBit__2 = bits, U32, 1488, [7:7], "false", "true" + canReadEnabled = bits, U32, 1488, [8:8], "false", "true" + canWriteEnabled = bits, U32, 1488, [9:9], "false", "true" + unusedBit_123 = bits, U32, 1488, [10:10], "false", "true" + unusedbit_9 = bits, U32, 1488, [11:11], "false", "true" + unusedbit_10 = bits, U32, 1488, [12:12], "false", "true" + isAlternatorControlEnabled= bits, U32, 1488, [13:13], "false", "true" + unusedBit__3 = bits, U32, 1488, [14:14], "false", "true" + unusedbit_8 = bits, U32, 1488, [15:15], "false", "true" + cutFuelOnHardLimit = bits, U32, 1488, [16:16], "false", "true" + cutSparkOnHardLimit = bits, U32, 1488, [17:17], "false", "true" + step1fuelCutEnable = bits, U32, 1488, [18:18], "false", "true" + step1SparkCutEnable = bits, U32, 1488, [19:19], "false", "true" + hasFrequencyReportingMapSensor= bits, U32, 1488, [20:20], "false", "true" + hipOutputChannel = bits, U32, 1492, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + idleMode = bits, U32, 1496, [0:0], "false", "true" + isInjectionEnabled = bits, U32, 1500, [0:0], "false", "true" + isIgnitionEnabled = bits, U32, 1500, [1:1], "false", "true" + isCylinderCleanupEnabled= bits, U32, 1500, [2:2], "false", "true" + secondTriggerChannelEnabled= bits, U32, 1500, [3:3], "false", "true" + needSecondTriggerInputDeprecated= bits, U32, 1500, [4:4], "false", "true" + isMapAveragingEnabled = bits, U32, 1500, [5:5], "false", "true" + anotherUnusedBit1 = bits, U32, 1500, [6:6], "false", "true" + anotherUnusedBit2 = bits, U32, 1500, [7:7], "false", "true" + isTunerStudioEnabled = bits, U32, 1500, [8:8], "false", "true" + isWaveAnalyzerEnabled = bits, U32, 1500, [9:9], "false", "true" + anotherUnusedBit212 = bits, U32, 1500, [10:10], "false", "true" + isPrintTriggerSynchDetails= bits, U32, 1500, [11:11], "false", "true" + isManualSpinningMode = bits, U32, 1500, [12:12], "false", "true" + twoWireBatchInjection = bits, U32, 1500, [13:13], "false", "true" + useOnlyRisingEdgeForTrigger= bits, U32, 1500, [14:14], "false", "true" + twoWireBatchIgnition = bits, U32, 1500, [15:15], "false", "true" + engineChartSize = scalar, U32, 1504, "count", 1, 0, 0, 300, 0 + targetIdleRpm = scalar, S32, 1508, "RPM", 1, 0, 0, 7000, 0 + acSwitchAdc = bits, U32, 1512, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + ignMathCalculateAtIndex = scalar, S32, 1516, "index", 1, 0, 0, 7000, 0 +;skipping acCutoffLowRpm offset 1520 +;skipping acCutoffHighRpm offset 1522 +;skipping acIdleRpmBump offset 1524 + warningPeriod = scalar, S16, 1526, "seconds", 1, 0, 0, 60, 0 + vRefAdcChannel = bits, U32, 1528, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +;skipping knockDetectionWindowStart offset 1532 +;skipping knockDetectionWindowEnd offset 1536 + idleStepperReactionTime = scalar, F32, 1540, "ms", 1, 0, 1, 300, 0 + knockVThreshold = scalar, F32, 1544, "V", 1, 0, 1, 5, 2 + fsioInputModes1 = scalar, F32, 1548, "ms", 1, 0, 0, 200, 1 + fsioInputModes2 = scalar, F32, 1552, "ms", 1, 0, 0, 200, 1 + fsioInputModes3 = scalar, F32, 1556, "ms", 1, 0, 0, 200, 1 + fsioInputModes4 = scalar, F32, 1560, "ms", 1, 0, 0, 200, 1 + fsioInputModes5 = scalar, F32, 1564, "ms", 1, 0, 0, 200, 1 + fsioInputModes6 = scalar, F32, 1568, "ms", 1, 0, 0, 200, 1 + fsioInputModes7 = scalar, F32, 1572, "ms", 1, 0, 0, 200, 1 + fsioInputModes8 = scalar, F32, 1576, "ms", 1, 0, 0, 200, 1 + fsioInputModes9 = scalar, F32, 1580, "ms", 1, 0, 0, 200, 1 + fsioInputModes10 = scalar, F32, 1584, "ms", 1, 0, 0, 200, 1 + fsioInputModes11 = scalar, F32, 1588, "ms", 1, 0, 0, 200, 1 + fsioInputModes12 = scalar, F32, 1592, "ms", 1, 0, 0, 200, 1 + fsioInputModes13 = scalar, F32, 1596, "ms", 1, 0, 0, 200, 1 + fsioInputModes14 = scalar, F32, 1600, "ms", 1, 0, 0, 200, 1 + fsioInputModes15 = scalar, F32, 1604, "ms", 1, 0, 0, 200, 1 + fsioInputModes16 = scalar, F32, 1608, "ms", 1, 0, 0, 200, 1 + externalKnockSenseAdc = bits, U32, 1612, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +;skipping unsed2342342 offset 1616 + idleStepperTotalSteps = scalar, S32, 1628, "count", 1, 0, 5, 3000, 0 + stepperEnablePin = bits, U32, 1632, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + noAccelAfterHardLimitPeriodSecs = scalar, F32, 1636, "sec", 1, 0, 0, 60, 0 + mapAveragingSchedulingAtIndex = scalar, S32, 1640, "index", 1, 0, 0, 7000, 0 + baroCorrPressureBins = array, F32, 1644, [4], "kPa", 1, 0, 0.0, 200, 2 + baroCorrRpmBins = array, F32, 1660, [4], "RPM", 1, 0, 0.0, 18000, 2 + baroCorrTable = array, F32, 1676, [4x4],"%", 1, 0, 0, 999.0, 2 + spi2SckMode = bits, U32, 1740, [0:5], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "mode12", "mode13", "mode14", "mode15", "mode16", "mode17", "mode18", "mode19", "mode20", "mode21", "mode22", "mode23", "mode24", "mode25", "mode26", "mode27", "mode28", "mode29", "mode30", "mode31", "PULLUP", "mode33", "mode34", "mode35" + spi2MosiMode = bits, U32, 1744, [0:5], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "mode12", "mode13", "mode14", "mode15", "mode16", "mode17", "mode18", "mode19", "mode20", "mode21", "mode22", "mode23", "mode24", "mode25", "mode26", "mode27", "mode28", "mode29", "mode30", "mode31", "PULLUP", "mode33", "mode34", "mode35" + spi2MisoMode = bits, U32, 1748, [0:5], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "mode12", "mode13", "mode14", "mode15", "mode16", "mode17", "mode18", "mode19", "mode20", "mode21", "mode22", "mode23", "mode24", "mode25", "mode26", "mode27", "mode28", "mode29", "mode30", "mode31", "PULLUP", "mode33", "mode34", "mode35" + crankingTpsCoef = array, F32, 1752, [8], "%", 1, 0, 0.0, 700.0, 2 + crankingTpsBins = array, F32, 1784, [8], "%", 1, 0, 0.0, 100.0, 2 + tachPulseDuractionMs = scalar, F32, 1816, "ms", 1, 0, 0.0, 100.0, 2 + tachPulseTriggerIndex = scalar, S32, 1820, "index", 1, 0, 0.0, 360.0, 0 + suckedOffCoef = scalar, F32, 1824, "%", 1, 0, 0.0, 300.0, 2 + unused71 = array, F32, 1828, [7], + addedToWallCoef = scalar, F32, 1856, "%", 1, 0, 0.0, 300.0, 2 + unused72 = array, F32, 1860, [7], + mapErrorDetectionTooLow = scalar, F32, 1888, "kPa", 1, 0, -100.0, 100.0, 2 + mapErrorDetectionTooHigh = scalar, F32, 1892, "kPa", 1, 0, -100.0, 800.0, 2 + step1RpmWindow = scalar, S32, 1896, "rpm", 1, 0, 0, 3000.0, 2 + idleRpmPid_pFactor = scalar, F32, 1900, "value", 1, 0, -1000, 1000, 5 + idleRpmPid_iFactor = scalar, F32, 1904, "value", 1, 0, -1000, 1000, 5 + idleRpmPid_dFactor = scalar, F32, 1908, "value", 1, 0, -1000, 1000, 5 + idleRpmPid_offset = scalar, F32, 1912, "value", 1, 0, 0, 1000, 3 +;skipping idleDT offset 1916 +;skipping idleControl offset 1920 + communicationPin = bits, U32, 1924, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + runningPin = bits, U32, 1928, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1932, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "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, U32, 1936, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + consoleSerialTxPin = bits, U32, 1940, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + consoleSerialRxPin = bits, U32, 1944, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + knockNoise = array, F32, 1948, [8], "v", 1, 0, 0.0, 10, 2 + knockNoiseRpmBins = array, F32, 1980, [8], "RPM", 1, 0, 0.0, 18000, 2 + etb_pFactor = scalar, F32, 2012, "value", 1, 0, -1000, 1000, 5 + etb_iFactor = scalar, F32, 2016, "value", 1, 0, -1000, 1000, 5 + etb_dFactor = scalar, F32, 2020, "value", 1, 0, -1000, 1000, 5 + etb_offset = scalar, F32, 2024, "value", 1, 0, 0, 1000, 3 + cltIdleRpmBins = array, F32, 2028, [16], "C", 1, 0, -100.0, 250.0, 2 + cltIdleRpm = array, F32, 2092, [16], "RPM", 1, 0, 0.0, 400.0, 0 + targetVBatt = scalar, F32, 2156, "Volts", 1, 0, 0,30, 1 + alternatorOffAboveTps = scalar, F32, 2160, "%", 1, 0, 0, 200, 2 + alternatorDT = scalar, S32, 2164, "ms", 1, 0, 0, 3000, 0 + alternatorControl_pFactor = scalar, F32, 2168, "value", 1, 0, -1000, 1000, 5 + alternatorControl_iFactor = scalar, F32, 2172, "value", 1, 0, -1000, 1000, 5 + alternatorControl_dFactor = scalar, F32, 2176, "value", 1, 0, -1000, 1000, 5 + alternatorControl_offset = scalar, F32, 2180, "value", 1, 0, 0, 1000, 3 + tpsAccelLength = scalar, S32, 2184, "cycles", 1, 0, 1, 200, 0 + tpsAccelEnrichmentThreshold = scalar, F32, 2188, "roc", 1, 0, 0, 200, 3 + vvtOffset = scalar, F32, 2192, "value", 1, 0, -720, 1000, 5 + engineLoadAccelLength = scalar, S32, 2196, "cycles", 1, 0, 1, 200, 0 + engineLoadDecelEnleanmentThreshold = scalar, F32, 2200, "roc", 1, 0, 0, 200, 3 + engineLoadDecelEnleanmentMultiplier = scalar, F32, 2204, "coeff", 1, 0, 0, 200, 3 + engineLoadAccelEnrichmentThreshold = scalar, F32, 2208, "roc", 1, 0, 0, 200, 3 + engineLoadAccelEnrichmentMultiplier = scalar, F32, 2212, "coeff", 1, 0, 0, 200, 3 + fatalErrorPin = bits, U32, 2216, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + warninigPin = bits, U32, 2220, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + configResetPin = bits, U32, 2224, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + uartConsoleSerialSpeed = scalar, U32, 2228, "BPs", 1, 0, 0,1000000, 0 + tpsDecelEnleanmentThreshold = scalar, F32, 2232, "roc", 1, 0, 0, 200, 3 + tpsDecelEnleanmentMultiplier = scalar, F32, 2236, "coeff", 1, 0, 0, 200, 3 + slowAdcAlpha = scalar, F32, 2240, "coeff", 1, 0, 0, 200, 3 + debugMode = bits, U32, 2244, [0:3], "Alternator_PID", "TPS accel enrich", "Warmup PID", "IDLE", "EL accl enrich", "Trigger Counters", "FSIO_ADC", "AUX_PID_1", "VVT PID", "Cranking", "Timing", "Closed-loop fuel corr", "VSS", "SD card", "mode14", "mode15" + warmupAfrPid_pFactor = scalar, F32, 2248, "value", 1, 0, -1000, 1000, 5 + warmupAfrPid_iFactor = scalar, F32, 2252, "value", 1, 0, -1000, 1000, 5 + warmupAfrPid_dFactor = scalar, F32, 2256, "value", 1, 0, -1000, 1000, 5 + warmupAfrPid_offset = scalar, F32, 2260, "value", 1, 0, 0, 1000, 3 + warmupTargetAfrBins = array, F32, 2264, [4], "C", 1, 0, -100.0, 250.0, 2 + warmupTargetAfr = array, F32, 2280, [4], "AFR", 1, 0, 0.0, 20.0, 2 + warmupAfrThreshold = scalar, F32, 2296, "tempterature", 1, 0, 0, 200, 3 + boostCutPressure = scalar, F32, 2300, "kPa", 1, 0, 0, 500, 0 + mapAccelTaperBins = array, F32, 2304, [8], "counter", 1, 0, 0.0, 300, 0 + mapAccelTaperMult = array, F32, 2336, [8], "mult", 1, 0, 0.0, 300, 2 + dizzySparkOutputPin = bits, U32, 2368, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + dizzySparkOutputPinMode = bits, U32, 2372, [0:1], "default", "default inverted", "open collector", "open collector inverted" + fsioAdc1 = bits, U32, 2376, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioAdc2 = bits, U32, 2380, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioAdc3 = bits, U32, 2384, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fsioAdc4 = bits, U32, 2388, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fixedTiming = scalar, F32, 2392, "deg", 1, 0, -720, 720, 2 + mapLowValueVoltage = scalar, F32, 2396, "v", 1, 0, 0.0, 10, 2 + mapHighValueVoltage = scalar, F32, 2400, "v", 1, 0, 0.0, 10, 2 + egoValueShift = scalar, F32, 2404, "value", 1, 0, -10.0, 10, 2 + camInput = bits, U32, 2408, [0:6], "INVALID", "INVALID", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PE5", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + auxPidDT1 = scalar, U32, 2412, "ms", 1, 0, 0, 3000, 0 + auxPidDT2 = scalar, U32, 2416, "ms", 1, 0, 0, 3000, 0 + auxPidDT3 = scalar, U32, 2420, "ms", 1, 0, 0, 3000, 0 + auxPidDT4 = scalar, U32, 2424, "ms", 1, 0, 0, 3000, 0 + crankingIdleAdjustment = scalar, F32, 2428, "percent", 1, 0, -100.0, 100, + tChargeMinRpmMinTps = scalar, F32, 2432, "mult", 1, 0, 0, 3, 4 + tChargeMinRpmMaxTps = scalar, F32, 2436, "mult", 1, 0, 0, 3, 4 + tChargeMaxRpmMinTps = scalar, F32, 2440, "mult", 1, 0, 0, 3, 4 + tChargeMaxRpmMaxTps = scalar, F32, 2444, "mult", 1, 0, 0, 3, 4 + auxPidPins1 = bits, U32, 2448, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + auxPidPins2 = bits, U32, 2452, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + auxPidPins3 = bits, U32, 2456, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + auxPidPins4 = bits, U32, 2460, [0:6], "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", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + auxPidFrequency1 = scalar, U16, 2464, "Hz", 1, 0, 0, 3000, 0 + auxPidFrequency2 = scalar, U16, 2466, "Hz", 1, 0, 0, 3000, 0 + auxPidFrequency3 = scalar, U16, 2468, "Hz", 1, 0, 0, 3000, 0 + auxPidFrequency4 = scalar, U16, 2470, "Hz", 1, 0, 0, 3000, 0 + alternatorPwmFrequency = scalar, S32, 2472, "Hz", 1, 0, 0, 3000.0, 0 + storageMode = bits, U32, 2476, [0:1], "Auto", "Always", "Never" + cj125SpiDevice = bits,U32, 2480, [0:1], "Off", "SPI1", "SPI2", "SPI3" + cj125CsPinMode = bits, U32, 2484, [0:1], "default", "default inverted", "open collector", "open collector inverted" + auxPid1_pFactor = scalar, F32, 2488, "value", 1, 0, -1000, 1000, 5 + auxPid1_iFactor = scalar, F32, 2492, "value", 1, 0, -1000, 1000, 5 + auxPid1_dFactor = scalar, F32, 2496, "value", 1, 0, -1000, 1000, 5 + auxPid1_offset = scalar, F32, 2500, "value", 1, 0, 0, 1000, 3 + auxPid2_pFactor = scalar, F32, 2504, "value", 1, 0, -1000, 1000, 5 + auxPid2_iFactor = scalar, F32, 2508, "value", 1, 0, -1000, 1000, 5 + auxPid2_dFactor = scalar, F32, 2512, "value", 1, 0, -1000, 1000, 5 + auxPid2_offset = scalar, F32, 2516, "value", 1, 0, 0, 1000, 3 + auxPid3_pFactor = scalar, F32, 2520, "value", 1, 0, -1000, 1000, 5 + auxPid3_iFactor = scalar, F32, 2524, "value", 1, 0, -1000, 1000, 5 + auxPid3_dFactor = scalar, F32, 2528, "value", 1, 0, -1000, 1000, 5 + auxPid3_offset = scalar, F32, 2532, "value", 1, 0, 0, 1000, 3 + auxPid4_pFactor = scalar, F32, 2536, "value", 1, 0, -1000, 1000, 5 + auxPid4_iFactor = scalar, F32, 2540, "value", 1, 0, -1000, 1000, 5 + auxPid4_dFactor = scalar, F32, 2544, "value", 1, 0, -1000, 1000, 5 + auxPid4_offset = scalar, F32, 2548, "value", 1, 0, 0, 1000, 3 + vvtMode = bits, U32, 2552, [0:2], "First half", "Second half", "2GZ", "Miata NB2", "mode4", "mode5", "mode6", "mode7" + biQuad_a0 = scalar, F32, 2556, "v", 1, 0, -1000, 1000, 9 + biQuad_a1 = scalar, F32, 2560, "v", 1, 0, -1000, 1000, 9 + biQuad_a2 = scalar, F32, 2564, "v", 1, 0, -1000, 1000, 9 + biQuad_b1 = scalar, F32, 2568, "v", 1, 0, -1000, 1000, 9 + biQuad_b2 = scalar, F32, 2572, "v", 1, 0, -1000, 1000, 9 + cltTimingBins = array, F32, 2576, [8], "C", 1, 0, -100.0, 250.0, 1 + cltTimingExtra = array, F32, 2608, [8], "degree", 1, 0, -400.0, 400.0, 0 + nbVvtIndex = scalar, S32, 2640, "index", 1, 0, 0, 4.0, 0 +;skipping autoTuneCltThreshold offset 2644 +;skipping autoTuneTpsRocThreshold offset 2648 +;skipping autoTuneTpsQuietPeriod offset 2652 + postCrankingTargetClt = scalar, F32, 2656, "Ñ", 1, 0, 0, 100, 0 + postCrankingFactor = scalar, F32, 2660, "mult", 1, 0, 0, 100, 4 + postCrankingDurationSec = scalar, F32, 2664, "seconds", 1, 0, 0, 100, 2 + auxTempSensor1_tempC_1 = scalar, F32, 2668, "*C", 1, 0, -40, 200, 1 + auxTempSensor1_tempC_2 = scalar, F32, 2672, "*C", 1, 0, -40, 200, 1 + auxTempSensor1_tempC_3 = scalar, F32, 2676, "*C", 1, 0, -40, 200, 1 + auxTempSensor1_resistance_1 = scalar, F32, 2680, "Ohm", 1, 0, 0, 200000, 1 + auxTempSensor1_resistance_2 = scalar, F32, 2684, "Ohm", 1, 0, 0, 200000, 1 + auxTempSensor1_resistance_3 = scalar, F32, 2688, "Ohm", 1, 0, 0, 200000, 1 + auxTempSensor1_bias_resistor = scalar, F32, 2692, "Ohm", 1, 0, 0, 200000, 1 + auxTempSensor1_adcChannel = bits, U32, 2696, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + auxTempSensor2_tempC_1 = scalar, F32, 2700, "*C", 1, 0, -40, 200, 1 + auxTempSensor2_tempC_2 = scalar, F32, 2704, "*C", 1, 0, -40, 200, 1 + auxTempSensor2_tempC_3 = scalar, F32, 2708, "*C", 1, 0, -40, 200, 1 + auxTempSensor2_resistance_1 = scalar, F32, 2712, "Ohm", 1, 0, 0, 200000, 1 + auxTempSensor2_resistance_2 = scalar, F32, 2716, "Ohm", 1, 0, 0, 200000, 1 + auxTempSensor2_resistance_3 = scalar, F32, 2720, "Ohm", 1, 0, 0, 200000, 1 + auxTempSensor2_bias_resistor = scalar, F32, 2724, "Ohm", 1, 0, 0, 200000, 1 + auxTempSensor2_adcChannel = bits, U32, 2728, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + fuelClosedLoopCltThreshold = scalar, S16, 2732, "C", 1, 0, 0, 100, 0 + fuelClosedLoopTpsThreshold = scalar, S16, 2734, "%", 1, 0, 0, 100, 0 + fuelClosedLoopRpmThreshold = scalar, S16, 2736, "rpm", 1, 0, 0, 5000, 0 + etbFreq = scalar, S16, 2738, "Hz", 1, 0, 0, 500, 10 + fuelClosedLoopPid_pFactor = scalar, F32, 2740, "value", 1, 0, -1000, 1000, 5 + fuelClosedLoopPid_iFactor = scalar, F32, 2744, "value", 1, 0, -1000, 1000, 5 + fuelClosedLoopPid_dFactor = scalar, F32, 2748, "value", 1, 0, -1000, 1000, 5 + fuelClosedLoopPid_offset = scalar, F32, 2752, "value", 1, 0, 0, 1000, 3 + fuelClosedLoopAfrLowThreshold = scalar, F32, 2756, "ratio", 1, 0, 0, 100, 1 + fuelClosedLoopAfrHighThreshold = scalar, F32, 2760, "ratio", 1, 0, 0, 100, 1 + stepperEnablePinMode = bits, U32, 2764, [0:5], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "mode12", "mode13", "mode14", "mode15", "mode16", "mode17", "mode18", "mode19", "mode20", "mode21", "mode22", "mode23", "mode24", "mode25", "mode26", "mode27", "mode28", "mode29", "mode30", "mode31", "PULLUP", "mode33", "mode34", "mode35" + cj125ua = bits, U32, 2768, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" + cj125ur = bits, U32, 2772, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +;skipping unused offset 2776 + le_formulas1 = array, U08, 3048, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas2 = array, U08, 3248, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas3 = array, U08, 3448, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas4 = array, U08, 3648, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas5 = array, U08, 3848, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas6 = array, U08, 4048, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas7 = array, U08, 4248, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas8 = array, U08, 4448, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas9 = array, U08, 4648, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas10 = array, U08, 4848, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas11 = array, U08, 5048, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas12 = array, U08, 5248, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas13 = array, U08, 5448, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas14 = array, U08, 5648, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas15 = array, U08, 5848, [200],"char", 1, 0, 0.0, 3.0, 2 + le_formulas16 = array, U08, 6048, [200],"char", 1, 0, 0.0, 3.0, 2 + timingMultiplier = array, U08, 6248, [200],"char", 1, 0, 0.0, 3.0, 2 + timingAdditive = array, U08, 6448, [200],"char", 1, 0, 0.0, 3.0, 2 + cltFuelCorrBins = array, F32, 6648, [16], "C", 1, 0, -100.0, 250.0, 2 + cltFuelCorr = array, F32, 6712, [16], "%", 1, 0, 0.0, 500.0, 2 + iatFuelCorrBins = array, F32, 6776, [16], "C", 1, 0, -100.0, 250.0, 2 + iatFuelCorr = array, F32, 6840, [16], "%", 1, 0, 0.0, 500.0, 2 + crankingFuelCoef = array, F32, 6904, [8], "%", 1, 0, 0.0, 700.0, 2 + crankingFuelBins = array, F32, 6936, [8], "C", 1, 0, -80.0, 170.0, 2 + crankingCycleCoef = array, F32, 6968, [8], "%", 1, 0, 0.0, 500.0, 2 + crankingCycleBins = array, F32, 7000, [8], "counter", 1, 0, -80.0, 170.0, 2 + cltIdleCorrBins = array, F32, 7032, [16], "C", 1, 0, -100.0, 250.0, 2 + cltIdleCorr = array, F32, 7096, [16], "%", 1, 0, 0.0, 500.0, 2 + mafDecoding = array, F32, 7160, [256], "kg/hour", 1, 0, -500.0, 4000.0, 2 + mafDecodingBins = array, F32, 8184, [256], "V", 1, 0, -5.0, 150.0, 2 + ignitionIatCorrTable = array, F32, 9208, [16x16],"deg", 1, 0, -720, 720, 2 + ignitionIatCorrLoadBins = array, F32, 10232, [16], "Temperature", 1, 0.0, 0, 300.0, 2 + ignitionIatCorrRpmBins = array, F32, 10296, [16], "RPM", 1, 0.0, 0, 18000.0, 2 + injectionPhase = array, F32, 10360, [16x16],"deg", 1, 0, -720, 720, 2 + injPhaseLoadBins = array, F32, 11384, [16], "Load", 1, 0.0, 0, 300.0, 2 + injPhaseRpmBins = array, F32, 11448, [16], "RPM", 1, 0.0, 0, 18000.0, 2 + fuelTable = array, F32, 11512, [16x16],"ms", 1, 0, 0.0, 300.0, 2 + fuelLoadBins = array, F32, 12536, [16], "V", 1, 0, 0.0, 300.0, 2 + fuelRpmBins = array, F32, 12600, [16], "RPM", 1, 0, 0.0, 25500.0, 2 + ignitionTable = array, F32, 12664, [16x16],"deg", 1, 0, -20, 90, 2 + ignitionLoadBins = array, F32, 13688, [16], "Load", 1, 0.0, 0, 300.0, 2 + ignitionRpmBins = array, F32, 13752, [16], "RPM", 1, 0.0, 0, 18000.0, 2 + veTable = array, F32, 13816, [16x16],"%", 1, 0, 0, 999.0, 2 + veLoadBins = array, F32, 14840, [16], "%", 1, 0.0, 0, 300.0, 2 + veRpmBins = array, F32, 14904, [16], "RPM", 1, 0.0, 0, 18000.0, 2 + afrTable = array, U08, 14968, [16x16],"deg", 0.1, 0, 0, 25.0, 1 + afrLoadBins = array, F32, 15224, [16], "%", 1, 0.0, 0, 300.0, 2 + afrRpmBins = array, F32, 15288, [16], "RPM", 1, 0.0, 0, 18000.0, 2 + tpsTpsAccelTable = array, F32, 15352, [8x8],"value", 1, 0, 0.0, 30000.0, 2 + tpsTpsAccelFromRpmBins = array, F32, 15608, [8], "from", 1, 0, 0.0, 30000.0, 2 + tpsTpsAccelToRpmBins = array, F32, 15640, [8], "to", 1, 0, 0.0, 25500.0, 2 + fsioTable1 = array, F32, 15672, [8x8],"value", 1, 0, 0.0, 30000.0, 2 + fsioTable1LoadBins = array, F32, 15928, [8], "L", 1, 0, 0.0, 30000.0, 2 + fsioTable1RpmBins = array, F32, 15960, [8], "RPM", 1, 0, 0.0, 25500.0, 2 + fsioTable2 = array, U08, 15992, [8x8],"value", 1, 0, 0.0, 255.0, 0 + fsioTable2LoadBins = array, F32, 16056, [8], "L", 1, 0, 0.0, 255, 0 + fsioTable2RpmBins = array, F32, 16088, [8], "RPM", 1, 0, 0.0, 25500.0, 2 + fsioTable3 = array, U08, 16120, [8x8],"value", 1, 0, 0.0, 255.0, 0 + fsioTable3LoadBins = array, F32, 16184, [8], "L", 1, 0, 0.0, 255, 0 + fsioTable3RpmBins = array, F32, 16216, [8], "RPM", 1, 0, 0.0, 25500.0, 2 + fsioTable4 = array, U08, 16248, [8x8],"value", 1, 0, 0.0, 255.0, 0 + fsioTable4LoadBins = array, F32, 16312, [8], "L", 1, 0, 0.0, 255, 0 + fsioTable4RpmBins = array, F32, 16344, [8], "RPM", 1, 0, 0.0, 25500.0, 2 +; total TS size = 16376 +[SettingContextHelp] + injector_flow = "cc/min, cubic centimeter per minute\nBy the way, g/s = 0.125997881 * (lb/hr)\ng/s = 0.125997881 * (cc/min)/10.5\ng/s = 0.0119997981 * cc/min" + directSelfStimulation = "Should trigger emulator push data right into trigger handling logic, eliminating the need for physical jumper wires?\nPS: Funny name, right? :)" + cranking_baseFuel = "Fuel squirt duration while cranking\nA number of curves adjust this value according to CLT/IAT/TPS etc" + cranking_rpm = "Cranking mode threshold. Special cranking logic controls fuel and spark while RPM is below this threshold\nset cranking_rpm X" + crankingChargeAngle = "While cranking (which causes battery voltage to drop) we can calculate dwell time in shaft\ndegrees, not in absolute time as in running mode.\nset cranking_charge_angle X" + knockBandCustom = "kHz knock band override" + cylinderBore = "Cylinder diameter, in mm." + sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" + fuelAlgorithm = "This setting controls which fuel quantity control algorithm is used.\nset algorithm X" + injectionMode = "'batched' means two injectors are wired together\nset injection_mode X" + extraInjectionOffset = "this is about deciding when the injector starts it's squirt\nSee also injectionPhase map\ntodo: do we need even need this since we have the map anyway?" + crankingTimingAngle = "Timing advance while engine cranking\nset cranking_timing_angle X" + ignitionMode = "'wasted' means one coil is driving two spark plugs in two cylinders, with one of the aparks not doing anything since it's happening on the exhaust cycle\nset ignition_mode X" + ignitionOffset = "this value could be used to offset the whole ignition timing table by a constant" + fixedModeTiming = "This value is used in 'fixed timing' mode, i.e. constant timing\nThis mode is useful for instance while adjusting distributor location" + globalTriggerAngleOffset = "Angle between Top Dead Center (TDC) and the first trigger event.\nKnowing this angle allows us to control timing and other angles in reference to TDC.\nset global_trigger_offset_angle X" + analogInputDividerCoefficient = "Coefficient of input voltage dividers on your PCB" + vbattDividerCoeff = "Battery Voltage input resistor divider coefficient" + fanOnTemperature = "Cooling fan turn-on temperature threshold, in Celsuis" + fanOffTemperature = "Cooling fan turn-off temperature threshold, in Celsuis" + vehicleSpeedCoef = "This coefficient translates vehicle speed input frequency (in Hz) into vehicle speed, km/h" + trigger_useOnlyFirstChannel = "This option could be used if your second trigger channel is broken" + tachOutputPin = "This implementation produces one pulse per engine cycle. See also dizzySparkOutputPin." + vvtCamSensorUseRise = "Use rise or fall signal front" + sensorChartMode = "rusEfi console Sensor Sniffer mode" + isInjectionEnabled = "enable injection" + isIgnitionEnabled = "enable ignition" + isCylinderCleanupEnabled = "If TPS above 95% no fuel would be injected during cranking\nenable cylinder_cleanup" + isPrintTriggerSynchDetails = "enable trigger_details" + twoWireBatchInjection = "This is needed if batched injection and individual injector wiring\nenable two_wire_batch_injection" + useOnlyRisingEdgeForTrigger = "VR sensors are only precise on rising front" + twoWireBatchIgnition = "This is needed if batched igniton (waster spark) and individual coil wiring" + ignMathCalculateAtIndex = "At what trigger index should some ignition-related math be executed? This is a performance trick to reduce load on synchronization trigger callback." + mapAveragingSchedulingAtIndex = "At what trigger index should some MAP-related math be executed? This is a performance trick to reduce load on synchronization trigger callback." + tachPulseTriggerIndex = "Trigger cycle index at which we start tach pulse (performance consideration)" + slowAdcAlpha = "ExpAverage alpha coefficient" + dizzySparkOutputPin = "This implementation makes a pulse every time one of the coils is charged. See also tachOutputPin" + + +; CONFIG_DEFINITION_END + + +[Tuning] + spotDepth = 2 ; 0 = no indicators, 1 = Z only, 2 = XYZ indicators. + cursorDepth = 2 ; Same as spot depth. + + gaugeColumns = 1 ; Only 1 or 2 are valid. + + pageButtons = "&EGO" + gauge1 = tachometer + gauge2 = afr1Gauge + gauge3 = mapGaugeValue + gauge4 = veValueGauge + + +[VeAnalyze] + + ; tableName, lambdaTargetTableName, lambdaChannel, egoCorrectionChannel, activeCondition +#if tuneByMAF + veAnalyzeMap = fuelTableTbl, afrTableTbl, AFRactual, egoCorrection, { 1 } +#else + veAnalyzeMap = veTableTbl, afrTableTbl, AFRactual, egoCorrection, { 1 } +#endif + ;lambdaTargetTables = afrTable1Tbl, afrTable2Tbl, afrTSCustom + + ; filter = Name, "DisplayName", outputChannel, operator, defaultVal, userAdjustable + filter = minRPMFilter, "Minimum RPM", rpm, < , 500, , true + +#if CELSIUS + filter = minCltFilter, "Minimum CLT", coolant, < , 60, , true +#else + filter = minCltFilter, "Minimum CLT", coolant, < , 160, , true +#endif + + filter = deltaTps, "dTPS", deltaTps > , 50, , true + + filter = VBatt, "VBatt", VBatt < , 12, , true + +; filter = minTps, "Minimum TPS", TPS, > , 1, , true + + +;[VeAnalyze] +; fuelAnalyzeMap = fuelTableTbl, afrTableTbl, AFRactual, egoCorrection , { 1 } +; filter = minRPMFilter, "Minimum RPM", rpm, < , 500, , true + + + +[OutputChannels] + +; see TS_FILE_VERSION in firmware code +fileVersion = { 20161225 } + + ochGetCommand = "O" + +; see TS_OUTPUT_SIZE in console source code + ochBlockSize = 356 + + rpm = scalar, U32, 0, "RPM", 1, 0.00000 +#if CELSIUS + coolant = scalar, F32, 4, "°C", 1, 0.0 +#else + coolant = scalar, F32, 4, "°F", {9/5}, 17.77777 +#endif +#if CELSIUS + intake = scalar, F32, 8, "°C", 1, 0.0 +#else + intake = scalar, F32, 8, "°F", {9/5}, 17.77777 +#endif + TPS = scalar, F32, 12, "%", 1, 0 + MAF = scalar, F32, 16, "V", 1, 0 + AFRactual = scalar, F32, 20, "AFR", 1, 0.0 + engineLoad = scalar, F32, 24, "%", 1, 0.0 ; Blend of MAP and TPS, depends on algorithm + VBatt = scalar, F32, 28, "V", 1, 0.0 + ; 10 bit TPS ADC value (from 0 to 1023 in 5v scale) + tpsADC = scalar, U16, 32, "ADC", 1, 0.0; + alignmet = scalar, U16, 34, "al", 1, 0.0; + baroPressure = scalar, F32, 36, "pres", 1, 0.0; + MAPValue = scalar, F32, 40, "MAP", 1, 0.0; + ; total fuel squirt duration (in MS) per engine cycle according to current CLT + crankingFuel = scalar, F32, 44, "ms", 1, 0.0; + baseFuel = scalar, F32, 48, "ms", 1, 0 + tCharge = scalar, F32, 52, "T", 1, 0.0; + ign_adv = scalar, F32, 56, "deg", 1, 0.0; + sparkDwellValue = scalar, F32, 60, "MAP", 1, 0.0; + ; actual total Ms time per engine cycle with all corrections + pulseWidth = scalar, F32, 64, "ms", 1, 0.0; + debugFloatField1 = scalar, F32, 68, "val", 1, 0.0; + + hasSdCard = bits, U32, 72, [0:0], "true", "false"; + isIgnitionEnabledIndicator=bits, U32, 72, [1:1], "true", "false"; + ind_injection_enabled=bits,U32, 72, [2:2], "true", "false"; + isCylinderCleanupEnabled=bits, U32, 72, [3:3], "true", "false"; + isCylinderCleanupActivated=bits,U32,72, [4:4], "true", "false"; + ind_fuel_pump = bits, U32, 72, [5:5], "true", "false"; + ind_fan = bits, U32, 72, [6:6], "true", "false"; + ind_o2_heater = bits, U32, 72, [7:7], "true", "false"; + ind_check_engine= bits, U32, 72, [8:8], "true", "false"; + needBurn = bits, U32, 72, [9:9], "true", "false"; + ind_2nd_trigger_en=bits, U32, 72, [10:10], "true", "false"; + clutchUpState =bits, U32, 72, [11:11], "true", "false"; + clutchDownState =bits, U32, 72, [12:12], "true", "false"; + knockEverIndicator=bits, U32, 72, [13:13], "true", "false"; + knockNowIndicator=bits, U32, 72, [14:14], "true", "false"; + vehicleSpeedKph = scalar, F32, 76, "kph", 1, 0.0; + + ind_tps_error = bits, U32, 80, [0:0], "true", "false"; + ind_clt_error = bits, U32, 80, [1:1], "true", "false"; + ind_map_error = bits, U32, 80, [2:2], "true", "false"; + ind_iat_error = bits, U32, 80, [3:3], "true", "false"; + ind_isTriggerError = bits, U32, 80, [5:5], "true", "false"; + ind_hasFatalError=bits, U32, 80, [6:6], "true", "false"; + ind_isWarnNow =bits, U32, 80, [7:7], "true", "false"; + firmwareTsVersion = scalar,U32, 84, "version_p", 1, 0 + egt1 = scalar, S16, 88, "°C", 1, 0 + egt2 = scalar, S16, 90, "°C", 1, 0 + egt3 = scalar, S16, 92, "°C", 1, 0 + egt4 = scalar, S16, 94, "°C", 1, 0 + egt5 = scalar, S16, 96, "°C", 1, 0 + egt6 = scalar, S16, 98, "°C", 1, 0 + egt7 = scalar, S16, 100, "°C", 1, 0 + egt8 = scalar, S16, 102, "°C", 1, 0 + rpmAcceleration = scalar, F32, 104, "dRpm", 1, 0 + massAirFlowValue= scalar, F32, 108, "Kg/h", 1, 0 + veValue = scalar, F32, 112, "ratio", 1, 0 + deltaTps = scalar, F32, 116, "ratio", 1, 0 + triggerErrorsCounter = scalar, U32,120, "counter", 1, 0 + engineLoadAccelExtra = scalar,F32, 124, "value", 1, 0 + tpsAccelFuel = scalar, F32, 128, "ms", 1, 0 + baroCorrection = scalar, F32, 132, "%", 1, 0 + pedalPosition = scalar, F32, 136, "%", 1, 0 + injectorDutyCycle= scalar, F32, 140, "%", 1, 0 + knockCount = scalar, U32, 144, "counter", 1, 0 + ; fuelLevel 148 + knockLevel = scalar, F32, 152, "Volts", 1, 0 + ; totalTriggerErrorCounter 156 + wallFuelAmount = scalar, F32, 160, "ms", 1, 0 + iatCorrection = scalar, F32, 164, "%", 1, 0 + wallFuelCorrection = scalar, F32, 168, "ms", 1, 0 + curIdlePosition = scalar, F32, 172, "percent", 1, 0 + cltCorrection = scalar, F32, 184, "%", 1, 0 + debugIntField1 = scalar, U32, 192, "val", 1, 0.0; + debugFloatField2 = scalar, F32, 200, "val", 1, 0.0; + debugFloatField3 = scalar, F32, 204, "val", 1, 0.0; + debugFloatField4 = scalar, F32, 208, "val", 1, 0.0; + debugFloatField5 = scalar, F32, 212, "val", 1, 0.0; + debugIntField2 = scalar, U32, 216, "val", 1, 0.0; + debugIntField3 = scalar, U32, 220, "val", 1, 0.0; + engineLoadDelta = scalar,F32, 228, "value", 1, 0 + speedToRpmRatio = scalar,F32, 232, "value", 1, 0 + warningCounter = scalar,U32, 236, "count", 1, 0 + lastErrorCode = scalar,U32, 240, "error", 1, 0 + internalMcuTemperature = scalar,F32, 244, "C", 1, 0 + vvtPosition = scalar,F32, 248, "deg", 1, 0 + engineMode = scalar, U32, 252, "em", 1, 0.0; + debugFloatField6 = scalar, F32, 256, "val", 1, 0.0; + debugFloatField7 = scalar, F32, 260, "val", 1, 0.0; + firmwareVersion = scalar,U32, 264, "version_f", 1, 0 + fuelPidCorrection = scalar, F32, 268, "ms", 1, 0 + + egoCorrection = { 100 } + time = { timeNow } +; engineLoad = { fuleAlgorithm == 0 ? MAF : TPS } + +[CurveEditor] +; xAxis = leftValue, rightValue, step +; yAxis = bottomValue, topValue, step + + + curve = knockThresholdCurve, "Engine knock threshold RPM based" + columnLabel = "RPM", "Threshold" + xAxis = 0, 8000, 10 + yAxis = 0, 8, 10 + xBins = knockNoiseRpmBins, rpm + yBins = knockNoise + gauge = rpm + + curve = mapAccelTaper, "Engine Load Acceleration Enrichment Taper" + columnLabel = "Distance", "Multiplier" + xAxis = 0, 128, 10 + yAxis = -5, 5, 10 + xBins = mapAccelTaperBins + yBins = mapAccelTaperMult + + curve = dwellCorrection, "Dwell time RPM based" + columnLabel = "RPM", "Dwell" + xAxis = 0, 8000, 10 + yAxis = 0, 30, 10 + xBins = sparkDwellRpmBins, rpm + yBins = sparkDwellValues + gauge = rpm + + curve = map_samplingAngleCurve, "MAP Sampling Start Angle" + columnLabel = "RPM", "Angle" + xAxis = 0, 8000, 10 + yAxis = 0, 180, 10 + xBins = map_samplingAngleBins, rpm + yBins = map_samplingAngle + gauge = rpm + + curve = map_samplingWindowCurve, "MAP Sampling Duration" + columnLabel = "RPM", "Window" + xAxis = 0, 8000, 10 + yAxis = 0, 180, 10 + xBins = map_samplingWindowBins, rpm + yBins = map_samplingWindow + gauge = rpm + + curve = injectorsDeadTime, "Injector Dead Time by VBatt" + columnLabel = "Voltage", "Dead Time" + xAxis = 8, 21, 10 + yAxis = -3, 3, 10 + xBins = injector_battLagCorrBins, VBatt + yBins = injector_battLagCorr + gauge = VBattGauge + + curve = mafDecodingCurve, "MAF Sensor Settings" + columnLabel = "Voltage", "kg/hour" + xAxis = -1, 6, 10 + yAxis = -30, 1300, 10 + xBins = mafDecodingBins, MAF + yBins = mafDecoding + gauge = mafGaugeVolts + + curve = iatFuelCorrCurve, "Intake air temperature fuel Multiplier" + columnLabel = "Coolant", "Multiplier" + xAxis = -40, 120, 10 + yAxis = 0, 5, 10 + xBins = iatFuelCorrBins, intake + yBins = iatFuelCorr + gauge = IATGauge + + curve = cltTimingCorrCurve, "Warmup timing correction" + columnLabel = "Coolant", "Extra" + xAxis = -40, 120, 10 + yAxis = 0, 50, 100 + xBins = cltTimingBins, coolant + yBins = cltTimingExtra + gauge = CLTGauge + + curve = cltFuelCorrCurve, "Warmup fuel manual Multiplier" + columnLabel = "Coolant", "Multiplier" + xAxis = -40, 120, 10 + yAxis = 0, 50, 100 + xBins = cltFuelCorrBins, coolant + yBins = cltFuelCorr + gauge = CLTGauge + + curve = crankingCltCurve, "Cranking Coolant Temperature multiplier" + columnLabel = "Coolant", "Multiplier" + xAxis = -40, 120, 10 + yAxis = 0, 5, 10 + xBins = crankingFuelBins, coolant + yBins = crankingFuelCoef + gauge = CLTGauge + + curve = crankingTpsCurve, "Cranking TPS Multiplier" + columnLabel = "TPS", "Multiplier" + xAxis = -40, 120, 10 + yAxis = 0, 5, 10 + xBins = crankingTpsBins, TPS + yBins = crankingTpsCoef + gauge = throttleGauge + + curve = crankingDurationCurve, "Cranking Duration Multiplier" + columnLabel = "Engine Cycle", "Multiplier" + xAxis = 0, 1000, 10 + yAxis = 0, 5, 10 + xBins = crankingCycleBins + yBins = crankingCycleCoef + + + curve = cltIdleCurve, "Warmup IAC position manual Multiplier" + columnLabel = "Coolant", "Multiplier" + xAxis = -40, 120, 10 + yAxis = 0, 50, 100 + xBins = cltIdleCorrBins, coolant + yBins = cltIdleCorr + gauge = CLTGauge + + curve = warmupTargetAfrCurve, "CLT-based target AFR" + columnLabel = "Coolant", "Correction" + xAxis = -40, 120, 10 + yAxis = 0, 50, 100 + xBins = warmupTargetAfrBins, coolant + yBins = warmupTargetAfr + gauge = CLTGauge + +[TableEditor] + ; table_id, map3d_id, "title", page + table = fuelTableTbl, fuelTableMap, "Fuel Table", 1 + ; constant, variable + xBins = fuelRpmBins, rpm + yBins = fuelLoadBins, engineLoad + zBins = fuelTable +; gridHeight = 2.0 + gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. + upDownLabel = "(RICHER)", "(LEANER)" + + table = tpsTpsAccelTbl, tpsTpsAccelMap, "TPS/TPS acceleration Multiplier", 1 + xBins = tpsTpsAccelFromRpmBins, TPS + yBins = tpsTpsAccelToRpmBins, TPS + zBins = tpsTpsAccelTable + + + table = fsioTable1Tbl, fsioTable1Map, "FSIO Table #1", 1 + xBins = fsioTable1RpmBins, rpm + yBins = fsioTable1LoadBins, engineLoad + zBins = fsioTable1 + + table = fsioTable2Tbl, fsioTable2Map, "FSIO Table #2", 1 + xBins = fsioTable2RpmBins, rpm + yBins = fsioTable2LoadBins, engineLoad + zBins = fsioTable2 + + table = fsioTable3Tbl, fsioTable3Map, "FSIO Table #3", 1 + xBins = fsioTable3RpmBins, rpm + yBins = fsioTable3LoadBins, engineLoad + zBins = fsioTable3 + + table = fsioTable4Tbl, fsioTable4Map, "FSIO Table #4", 1 + xBins = fsioTable4RpmBins, rpm + yBins = fsioTable4LoadBins, engineLoad + zBins = fsioTable4 + + table = baroCorrTbl, baroCorrMap, "Baro Correction", 1 + ; constant, variable + xBins = baroCorrRpmBins, rpm + 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, rpm + yBins = ignitionLoadBins, engineLoad + 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, rpm + yBins = ignitionIatCorrLoadBins, intake + zBins = ignitionIatCorrTable +; gridHeight = 2.0 + gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. + upDownLabel = "(RICHER)", "(LEANER)" + + table = veTableTbl, veTableMap, "VE Table", 1 + ; constant, variable + xBins = veRpmBins, rpm + yBins = veLoadBins, MAPValue + zBins = veTable +; gridHeight = 2.0 + gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. + upDownLabel = "(RICHER)", "(LEANER)" + + + table = injPhaseTableTbl, injPhaseTableMap, "Injection Phase", 1 + ; constant, variable + xBins = injPhaseRpmBins, rpm + yBins = injPhaseLoadBins, engineLoad + zBins = injectionPhase +; gridHeight = 2.0 + gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. + upDownLabel = "(Later)", "(Sooner)" + + table = afrTableTbl, afrTableMap, "Target AFR Table", 1 + ; constant, variable + xBins = afrRpmBins, rpm + yBins = afrLoadBins, MAPValue + zBins = afrTable +; gridHeight = 2.0 + gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees. + upDownLabel = "(RICHER)", "(LEANER)" + +[GaugeConfigurations] + + ;Name Var Title Units Lo Hi LoD LoW HiW HiD vd ld + tachometer = rpm, "Engine Speed", "RPM", 0, 15000, 200, 500, 6000, 6000, 0, 0 +#if CELSIUS + CLTGauge = coolant, "Coolant Temp", "°C", -40, 140, -15, 1, 95, 110, 1, 1 +#else + CLTGauge = coolant, "Coolant Temp", "°F", -40, 285, 5, 35, 205, 230, 1, 1 +#endif +#if CELSIUS + IATGauge = intake, "Intake Air Temp", "°C", -40, 140, -15, 1, 95, 110, 1, 1 +#else + IATGauge = intake, "Intake Air Temp", "°F", -40, 285, 5, 35, 205, 230, 1, 1 +#endif +#if CELSIUS + tChargeGauge = tCharge, "Charge Temp", "°C", -40, 140, -15, 1, 95, 110, 1, 1 +#else + tChargeGauge = tCharge, "Charge Temp", "°F", -40, 285, 5, 35, 205, 230, 1, 1 +#endif + + + throttleGauge = TPS, "Throttle Position", "%", 0, 100, 0, 0, 100, 100, 2, 2 + afr1Gauge = AFRactual, "Air:Fuel Ratio 1", "", 10, 19.4, 12, 13, 15, 16, 2, 2 + mafGaugeVolts = MAF, "Mass Air Flow", "v", 0, 5, 0, 1, 3, 4, 1, 1 + VBattGauge = VBatt, "Battery Voltage", "V", 8, 21, 9, 10, 17, 19, 1, 1 + tpsADCGauge = tpsADC, "tps ADC", "ADC", 0, 1024, 0, 0, 0, 0, 0, 0 + atmPresCGauge = baroPressure, "Baro", "kPa", 0, 1024, 0, 0, 0, 0, 0, 0 + mapGaugeValue = MAPValue, "MAP", "kPa", 0, 300, 10, 10, 200, 200, 0, 0 + ignadvGauge = ign_adv, "Ignition Advance 1", "degrees", -100, 100, -999, -999, 999, 999, 1, 1 +; warmupEnrichGauge = warmupEnrich, "Warmup Enrichment", "%", 100, 150, -1, -1, 101, 105, 0, 0 +; accelEnrichGauge = accDecEnrich, "Accel Enrich", "%", 50, 150, -1, -1, 999, 999, 0, 0 + dwellGauge = sparkDwellValue, "Dwell", "mSec", 0, 10, 0.5, 1.0, 6.0, 8.0, 1, 1 + 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 + vssGauge = vehicleSpeedKph, "Speed", "kmh", 0, 200, 0, 1, 3, 4, 1, 1 + rpmAccelerationGa = rpmAcceleration, "rpm delta", "dRpm", 0, 3, 0, 1, 3, 4, 1, 1 + massAirFlowValueGa = massAirFlowValue,"Air Flow", "kg/hr", 0, 50, -999, -999, 999, 999, 1, 1 + veValueGauge = veValue, "fuel: VE", "", 0, 120, 10, 10, 100, 100, 1, 1 + baroCorrectionGauge = baroCorrection,"BaroCorr", "%", 0, 120, 10, 10, 100, 100, 1, 1 + pedalPositionGauge = pedalPosition,"Pedal Position", "%", 0, 120, 10, 10, 100, 100, 1, 1 + knockCountGauge = knockCount,"Knock count", "count", 0, 120, 10, 10, 100, 100, 1, 1 + knockLevelGauge = knockLevel,"Knock level", "volts", 0, 7, 10, 10, 100, 100, 1, 2 + + triggerErrorsCounterGauge = triggerErrorsCounter, "trg err", "count", 0, 15000, 0, 0, 6000, 6000, 0, 0 + + pulseWidthGauge = pulseWidth, "fuel final squirt, per injection", "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1 + baseFuelGauge = baseFuel, "fuel: base duration, before corr", "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1 + fuelPidCorrectionGauge = fuelPidCorrection, "fuel: closed loop correction", "mSec", -11, 11, 1.0, 1.2, 20, 25, 3, 1 + + crankingFuelGauge = crankingFuel, "fuel: crank Width", "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 3, 1 + iatCorrectionGauge = iatCorrection, "fuel: IAT correction", "mult", 0, 3, 0, 0, 3, 3, 2, 2 + cltCorrectionGauge = cltCorrection, "fuel: CLT correction", "mult", 0, 3, 0, 0, 3, 3, 2, 2 + injectorDutyCycleGauge=injectorDutyCycle, "fuel: injectorDutyCycle","%", 0, 120, 10, 10, 100, 100, 1, 1 + + engineLoadDeltaGauge = engineLoadDelta,"fuel: load change","value", 0, 120, 10, 10, 100, 100, 1, 1 + engineLoadAccelExtraGauge = engineLoadAccelExtra,"fuel: load extra","value", 0, 120, 10, 10, 100, 100, 1, 1 + deltaTpsGauge = deltaTps, "fuel: TPS change", "", 0, 120, 10, 10, 100, 100, 1, 1 + tpsAccelFuelGauge = tpsAccelFuel,"fuel: TPS enrich", "ms", 0, 120, 10, 10, 100, 100, 1, 1 + wallFuelAmountGauge = wallFuelAmount, "fuel: wall amount", "ms", 0, 100, 0, 0, 100, 100, 0, 0 + wallFuelCorrectionGauge = wallFuelCorrection, "fuel: wall correction extra", "ms", 0, 100, 0, 0, 100, 100, 0, 0 + + curIdlePositionGauge = curIdlePosition, "idle position", "%", 0, 100, 0, 0, 100, 100, 0, 0 + + debugFloatField1Gauge = debugFloatField1, "debug f1", "%", 0, 100, 0, 0, 100, 100, 4, 4 + debugFloatField2Gauge = debugFloatField2, "debug f2", "%", 0, 100, 0, 0, 100, 100, 4, 4 + debugFloatField3Gauge = debugFloatField3, "debug f3", "%", 0, 100, 0, 0, 100, 100, 4, 4 + debugFloatField4Gauge = debugFloatField4, "debug f4", "%", 0, 100, 0, 0, 100, 100, 4, 4 + debugFloatField5Gauge = debugFloatField5, "debug f5", "%", 0, 100, 0, 0, 100, 100, 4, 4 + debugFloatField6Gauge = debugFloatField6, "debug f6", "%", 0, 100, 0, 0, 100, 100, 4, 4 + debugFloatField7Gauge = debugFloatField7, "debug f7", "%", 0, 100, 0, 0, 100, 100, 4, 4 + debugIntField1Gauge = debugIntField1, "debug i1", "%", 0, 100, 0, 0, 100, 100, 0, 0 + debugIntField2Gauge = debugIntField2, "debug i2", "%", 0, 100, 0, 0, 100, 100, 0, 0 + debugIntField3Gauge = debugIntField3, "debug i3", "%", 0, 100, 0, 0, 100, 100, 0, 0 + speedToRpmRatioGauge = speedToRpmRatio, "speed2rpm", "", 0, 100, 0, 0, 100, 100, 4, 4 + warningCounterGauge = warningCounter, "warn", "", 0, 100, 0, 0, 100, 100, 0, 0 + lastErrorCodeGauge = lastErrorCode, "error", "", 0, 8000, 0, 0, 8000, 8000, 0, 0 + internalMcuTemperatureGauge = internalMcuTemperature, "internal temperature", "C", 0, 100, 0, 0, 100, 100, 0, 0 + vvtPositionGauge = vvtPosition, "VVT position", "deg", 0, 100, 0, 0, 720, 720, 0, 0 + + +[FrontPage] + ; Gauges are numbered left to right, top to bottom. + ; + ; 1 2 3 4 + ; 5 6 7 8 + + ; currently a minimum of 6 gauges must be on the dash, this appears to be an old not needed limitation. next release 1 will work. + gauge1 = tachometer + gauge2 = CLTGauge + gauge3 = throttleGauge + gauge4 = mafGaugeVolts + gauge5 = afr1Gauge + gauge6 = VBattGauge + gauge7 = dwellGauge + gauge8 = ignadvGauge + + + +; = expression, off-label, on-label, off-bg, off-fg, on-bg, on-fg + ; important status + indicator = { ind_hasFatalError }, "", "FATAL ERROR", green, black, red, black + indicator = { firmwareTsVersion == fileVersion }, "WRONG VERSION", "version", red, black, green, black + indicator = { ind_isWarnNow }, "", "warn", green, black, red, black + indicator = { ind_check_engine }, "ok", "Check engine", green, black, red, black + indicator = { isIgnitionEnabledIndicator}, "no ignition", "ignition", red, black, green, black + indicator = { ind_injection_enabled}, "no injection", "injection", red, black, green, black + indicator = { ind_isTriggerError}, "ok", "trg err", green, black, red, black + + + ; minor info + indicator = { ind_fan}, "no fan", "fan", white, black, green, black + indicator = { isCylinderCleanupActivated}, "no cyl cleanup", "cyl cleanup", white, black, green, black + indicator = { needBurn }, "no Burn", "Need Burn", white, black, yellow, black + indicator = { hasSdCard}, "no SD", "with SD", white, black, green, black + indicator = { ind_fuel_pump}, "no pump", "pump", white, black, green, black + indicator = { clutchUpState }, "clutch", "cltch Up", white, black, red, black + indicator = { clutchDownState }, "clutch", "cltch Down", white, black, red, black + + ; error codes + indicator = { ind_tps_error}, "tps", "tps error", white, black, red, black + indicator = { ind_clt_error}, "clt", "clt error", white, black, red, black + indicator = { ind_iat_error}, "iat", "iat error", white, black, red, black + indicator = { ind_map_error}, "map", "map error", white, black, red, black + + indicator = { knockEverIndicator }, "", "Knock recently", white, black, red, black + indicator = { knockNowIndicator }, "no knock", "Knock NOW", white, black, red, black + + +[Datalog] + ; Channel Label Type Format + entry = time, "Time", float, "%.3f" + entry = rpm, "RPM", int, "%d" + entry = firmwareVersion, "version", int, "%d" + entry = coolant, "CLT", float, "%.2f" + entry = intake, "IAT", float, "%.2f" + entry = TPS, "TPS", float, "%.2f" + entry = MAF, "MAF", float, "%.2f" + entry = MAPValue, "MAP", float, "%.1f" + entry = AFRactual, "AFR", float, "%.2f" + entry = VBatt, "vBatt", float, "%.2f" + entry = engineLoad, "Load", float, "%.1f" + entry = ign_adv, "ignAdv", float, "%.2f" + entry = knockLevel, "Knock", float, "%.2f" + entry = vehicleSpeedKph, "speed", float, "%.2f" + entry = speedToRpmRatio, "s2rpm", float, "%.3f" + entry = rpmAcceleration, "dRPM", float, "%.3f" + entry = massAirFlowValue,"airMass", float, "%.3f" + entry = pedalPosition, "pedal", float, "%.3f" + entry = triggerErrorsCounter, "trg err",int, "%d" + entry = curIdlePosition, "idle position", float, "%.3f" + + + entry = pulseWidth, "fuel: pulse", float, "%.3f" + entry = baseFuel, "fuel: base", float, "%.2f" + entry = fuelPidCorrection,"fuel: pid", float, "%.2f" + entry = veValue, "fuel: VE", float, "%.3f" + entry = injectorDutyCycle,"fuel: duty cyc",float,"%.3f" + + entry = engineLoadAccelExtra, "fuel: load extra",float, "%.3f" + entry = engineLoadDelta, "fuel: load change",float, "%.3f" + + entry = deltaTps, "fuel: TPS change",float, "%.3f" + entry = tpsAccelFuel, "fuel: TOS enrich", float, "%.3f" + + entry = wallFuelCorrection,"fuel: wall corr ms", float, "%.3f" + entry = wallFuelAmount, "fuel: wall amount", float, "%.3f" + + entry = baroCorrection, "baroCorrection",float,"%.3f" + entry = iatCorrection, "fuel: IAT corr", float, "%.3f" + entry = cltCorrection, "cltCorrection", float,"%.3f" + + entry = sparkDwellValue, "dwell", float,"%.3f" + entry = vvtPosition, "VVT", float,"%.2f" + +; is there a way to log parameter? entry = debugMode, "debugMode",int,"%d" +; Alternator_PID: alternator duty cycle +; DBG_TPS_ACCEL: from TPS + entry = debugFloatField1, "debug f1",float,"%.4f" + +; Alternator_PID: current integration term +; DBG_TPS_ACCEL: to TPS + entry = debugFloatField2, "debug f2",float,"%.4f" + +; Alternator_PID: previous error +; DBG_TPS_ACCEL: tps<>tps table value + entry = debugFloatField3, "debug f3",float,"%.4f" + +; Alternator_PID: I setting +; DBG_TPS_ACCEL: extra fuel + entry = debugFloatField4, "debug f4",float,"%.4f" + +; Alternator_PID: D setting + entry = debugFloatField5, "debug f5",float,"%.4f" + +; Alternator_PID: dTerm + entry = debugFloatField6, "debug f6",float,"%.4f" + + entry = debugFloatField7, "debug f7",float,"%.4f" + + +; Alternator_PID: P setting + entry = debugIntField1, "debug i1",int,"%d" + +; Alternator_PID: offset setting + entry = debugIntField2, "debug i2",int,"%d" + +; Alternator_PID: PID reset counter + entry = debugIntField3, "debug i3",int,"%d" + + entry = engineMode, "mode",int,"%d" + entry = warningCounter, "err: count",int,"%d" + entry = lastErrorCode, "err: last",int,"%d" + entry = internalMcuTemperature, "int temp",float,"%.2f" + + entry = tCharge, "tCharge",float,"%.3f" + +; tpsADC = U16, "ADC", +; alignmet = U16, "al", +; atmPres = F32, "pres", +; crankingFuel = F32, "ms", +; tCharge = F32, "T", +; sparkDwell = F32, "MAP", +; warmUpEnrich = F32, "%", + +[Menu] + + menu = "Engine" + subMenu = engineChars, "Base Engine Settings" + subMenu = triggerConfiguration, "Trigger Configuration" + subMenu = std_separator + subMenu = injectionSettings, "Injection Settings" + subMenu = ignitionSettings, "Ignition Settings" + subMenu = std_separator + subMenu = analogInputs, "Analog inputs" + subMenu = cltSensor, "CLT Sensor Settings" + subMenu = iatSensor, "IAT Sensor Settings" + subMenu = auxTempSensor1Sensor, "AuxTemp1 Sensor Settings" + subMenu = auxTempSensor2Sensor, "AuxTemp2 Sensor Settings" + subMenu = mapSettings, "MAP Sensor Settings" + subMenu = mafDecodingCurve, "MAF Sensor Settings" + subMenu = egoSettings, "EGO Sensor Settings" + subMenu = egtInputs, "EGT inputs" + subMenu = energySystems, "Battery and Alternator Settings" + subMenu = auxPidDialog, "Aux PID" + subMenu = speedSensor, "Speed Sensor Settings" + subMenu = tachSettings, "Tachometer output" + subMenu = std_separator + subMenu = fanSetting, "Fan Settings" + subMenu = idleSettings, "Idle Settings" + subMenu = mainRealay, "Main Relay Settings" + subMenu = fuelPump, "Fuel Pump Settings" + subMenu = malfunction, "MIL Settings" + subMenu = hipFunction, "hip9011 Settings (knock decoder)" + subMenu = cj125Function, "CJ125 Settings (wbo decoder)" + subMenu = spiFunction, "SPI Settings" + subMenu = etbDialog, "Electronic Thtottle Body (alpha)" + menu = "Tuning" + subMenu = generalSettings, "General" + subMenu = monitoringSettings, "rusEfi Console Settings" + subMenu = std_separator + subMenu = crankingDialog, "Cranking" + subMenu = crankingCltCurve, "Cranking Coolant Temp Multiplier" + subMenu = crankingTpsCurve, "Cranking TPS Multiplier" + subMenu = crankingDurationCurve, "Cranking Duration Multiplier" + subMenu = std_separator + subMenu = warmupFuelDialog, "Warmup fuel closed-loop" + subMenu = cltFuelCorrCurve, "Warmup fuel manual Multiplier", 0, {useWarmupPidAfr == 0} + subMenu = warmupTargetAfrCurve, "Warmup fuel auto correction AFR target", 0, {useWarmupPidAfr == 1} + subMenu = cltIdleCurve, "Warmup IAC position manual Multiplier" + subMenu = cltTimingCorrCurve, "Warmup timing correction" + subMenu = std_separator + subMenu = fuelTableTbl, "Fuel Table", 0, {fuelAlgorithm != 3} + subMenu = veTableTbl, "VE Table", 0, {fuelAlgorithm == 3} + subMenu = afrTableTbl, "Targe AFR Table", 0, {fuelAlgorithm == 3} + subMenu = iatFuelCorrCurve, "Intake air temperature fuel Multiplier" + subMenu = injPhaseTableTbl, "Injection Phase" + subMenu = mapAccelTaper, "Engine Load Acceleration Enrichment Taper" + subMenu = std_separator + subMenu = fuelClosedLoopDialog, "Fuel closed-loop correction" + subMenu = AccelEnrich, "Accel/Decel Enrichment/Enleanment" + subMenu = tpsTpsAccelTbl, "TPS/TPS acceleration Multiplier" + subMenu = std_separator + subMenu = ignitionTableTbl, "Ignition Table" + subMenu = ignitionIatCorrTableTbl, "Ignition Intake Air Temp correction" + subMenu = baroCorrTbl, "Baro Correction", 0, {fuelAlgorithm == 3} + subMenu = std_separator + subMenu = std_realtime, "&Realtime Display", 0 + subMenu = tChargeSettings, "tCharge Settings" + + menu = "3D Map Tuning" +; subMenu = std_realtime, "Realtime Display" +; subMenu = std_warmup, "Warmup Wizard" + subMenu = fuelTableMap, "Fuel Table", 0, {fuelAlgorithm != 3} + subMenu = veTableMap, "VE Table", 0, {fuelAlgorithm == 3} + subMenu = afrTableMap, "Targe AFR Table", 0, {fuelAlgorithm == 3} + subMenu = injPhaseTableMap, "Injection Phase" + subMenu = ignitionTableMap, "Ignition Table" + subMenu = ignitionIatCorrTableMap, "Ignition Intake Air Temp correction" + + menu = "Racing Features" + subMenu = smLaunchControl, "Launch Control" + subMenu = std_separator + + menu = "Board" + subMenu = fsioInputsDialog, "FSIO inputs" + subMenu = fsioOutputsDialog, "FSIO outputs" + subMenu = fsioTable1Tbl, "FSIO Table #1" + subMenu = fsioTable2Tbl, "FSIO Table #2" + subMenu = fsioTable3Tbl, "FSIO Table #3" + subMenu = fsioTable4Tbl, "FSIO Table #4" + subMenu = std_separator + subMenu = connection, "Connection" + subMenu = joystickPanel, "Joystick" + subMenu = std_separator + subMenu = ioTest, "I-O Test" + subMenu = ecuStimulator, "ECU stimulator" + subMenu = allPins, "Full pinout" + +[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. + +cmd_test_spk1 = "w\x00\x12\x00\x01" +cmd_test_spk2 = "w\x00\x12\x00\x02" +cmd_test_spk3 = "w\x00\x12\x00\x03" +cmd_test_spk4 = "w\x00\x12\x00\x04" +cmd_test_spk5 = "w\x00\x12\x00\x05" +cmd_test_spk6 = "w\x00\x12\x00\x06" +cmd_test_spk7 = "w\x00\x12\x00\x07" +cmd_test_spk8 = "w\x00\x12\x00\x08" +cmd_test_spk9 = "w\x00\x12\x00\x09" +cmd_test_spk10 = "w\x00\x12\x00\x0a" +cmd_test_spk11 = "w\x00\x12\x00\x0b" +cmd_test_spk12 = "w\x00\x12\x00\x0c" +cmd_test_spk13 = "w\x00\x12\x00\x0d" +cmd_test_spk14 = "w\x00\x12\x00\x0e" +cmd_test_spk15 = "w\x00\x12\x00\x0f" +cmd_test_spk16 = "w\x00\x12\x00\x10" + + +cmd_test_inj1 = "w\x00\x13\x00\x01" +cmd_test_inj2 = "w\x00\x13\x00\x02" +cmd_test_inj3 = "w\x00\x13\x00\x03" +cmd_test_inj4 = "w\x00\x13\x00\x04" +cmd_test_inj5 = "w\x00\x13\x00\x05" +cmd_test_inj6 = "w\x00\x13\x00\x06" +cmd_test_inj7 = "w\x00\x13\x00\x07" +cmd_test_inj8 = "w\x00\x13\x00\x08" +cmd_test_inj9 = "w\x00\x13\x00\x09" +cmd_test_inj10 = "w\x00\x13\x00\x0a" +cmd_test_inj11 = "w\x00\x13\x00\x0b" +cmd_test_inj12 = "w\x00\x13\x00\x0c" +cmd_test_inj13 = "w\x00\x13\x00\x0d" +cmd_test_inj14 = "w\x00\x13\x00\x0e" +cmd_test_inj15 = "w\x00\x13\x00\x0f" +cmd_test_inj16 = "w\x00\x13\x00\x10" + +cmd_test_fuel_pump = "w\x00\x14\x00\x01" +cmd_test_radiator_fan = "w\x00\x15\x00\x01" +cmd_test_check_engine_light = "w\x00\x16\x00\x01" +cmd_test_idle_valve = "w\x00\x17\x00\x01" + + +[UserDefined] + dialog = tChargeSettings, "tChart Settings" + field = "MinRpm MinTps", tChargeMinRpmMinTps + field = "MinRpm MaxTps", tChargeMinRpmMaxTps + field = "MaxRpm MinTps", tChargeMaxRpmMinTps + field = "MaxRpm MaxTps", tChargeMaxRpmMaxTps + + dialog = baseInjection, "Injection" + field = "Enabled", isInjectionEnabled + field = "Mode", injectionMode, {isInjectionEnabled == 1} + field = "#Batch injection with individual wiring" + field = "Two wire batch", twoWireBatchInjection, {isInjectionEnabled == 1 && injectionMode == 2} + + dialog = baseIgnition, "Ignition" + field = "Enabled", isIgnitionEnabled + field = "Mode", ignitionMode, {isIgnitionEnabled == 1} + field = "#Wasted spark with individual coils" + field = "Two wire wasted", twoWireBatchIgnition, {isIgnitionEnabled == 1 && ignitionMode == 2} + field = "Timing Mode", timingMode, {isIgnitionEnabled == 1} + field = "Fixed Timinig", fixedTiming, {isIgnitionEnabled == 1 && timingMode == 1} + + +; Engine->Base Engine Settings + dialog = engineChars, "Base Engine Settings" +; field = "Engine Preset", engineType + field = "Number of Cylinders", cylindersCount + field = "Engine Displacement", displacement + field = "debug fields", debugMode + field = "" + field = "Firing Order", firingOrder + panel = baseInjection + panel = baseIgnition + +; Engine->Trigger configuration + dialog = triggerConfiguration_settings, "Settings Trigger" + field = "Trigger type", trigger_type + field = "Operation mode", operationMode + field = "With VR sensors only rising edge has reliable position" + field = "use only rising edge", useOnlyRisingEdgeForTrigger + field = "Trigger Angle Offset", globalTriggerAngleOffset + field = "#Custom Trigger" + field = "total Tooth Count", trigger_customTotalToothCount, {trigger_type == 0} + field = "skipped Tooth Count", trigger_customSkippedToothCount, {trigger_type == 0} +; field = "sync Ratio From", trigger_customSyncRatioFrom, {trigger_type == 0} +; field = "sync Ratio To", trigger_customSyncRatioTo, {trigger_type == 0} + field = "use Rise Edge?", trigger_customUseRiseEdge, {trigger_type == 0} + dialog = triggerConfiguration_IO, "Settings I/O" + field = "!ECU reboot needed to apply pin assignment" + field = "#Cam is primary if you have cam sensor" + field = "Primary input channel", triggerInputPins1 + field = "Secondary channel", triggerInputPins2, { trigger_type != 0 && trigger_type != 8 && trigger_type != 9 && trigger_type != 18 && trigger_type != 20} + field = "Cam Sync/VVT input", camInput + field = "VVT mode", vvtMode, {trigger_type != 80} + field = "VVT use rise front", vvtCamSensorUseRise, {trigger_type != 80} + field = "VVT position display offset", vvtOffset + field = "VVT display inverted", vvtDisplayInverted + field = "NB2 from temp", nb2ratioFrom + field = "NB2 to temp", nb2ratioTo + field = "nbVvtIndex", nbVvtIndex + field = "Trigger error LED", triggerErrorPin + field = "Trigger error LED mode", triggerErrorPinMode + field = "print sync details to console", isPrintTriggerSynchDetails + dialog = triggerConfiguration + panel = triggerConfiguration_settings, North + panel = triggerConfiguration_IO, South + +; Engine->Injection Settings + dialog = injChars, "Injector Settings", yAxis + field = "Injector Flow", injector_flow + field = "phase offset", extraInjectionOffset + + dialog = injIO, "Injector Output", yAxis + field = "!ECU reboot needed to apply these settings" + field = "injection Pin Mode", injectionPinMode + field = "Injection Pin 1", injectionPins1 + field = "Injection Pin 2", injectionPins2, {cylindersCount > 1} + field = "Injection Pin 3", injectionPins3, {cylindersCount > 2} + field = "Injection Pin 4", injectionPins4, {cylindersCount > 3} + field = "Injection Pin 5 ", injectionPins5, {cylindersCount > 4} + field = "Injection Pin 6 ", injectionPins6, {cylindersCount > 5} + field = "Injection Pin 7 ", injectionPins7, {cylindersCount > 6} + field = "Injection Pin 8 ", injectionPins8, {cylindersCount > 7} + field = "Injection Pin 9 ", injectionPins9, {cylindersCount > 8} + field = "Injection Pin 10 ", injectionPins10, {cylindersCount > 9} + field = "Injection Pin 11 ", injectionPins11, {cylindersCount > 10} + field = "Injection Pin 12 ", injectionPins12, {cylindersCount > 11} + + dialog = injectorSetting, "", yAxis + panel = injChars, North + panel = injIO, East + + dialog = injectionSettings, "", xAxis + panel = injectorSetting, West + panel = injectorsDeadTime, East + +; Engine->Ignition Settings + dialog = ignitionOutputs, "Ignition Outputs" + field = "Ignition Pin Mode", ignitionPinMode + field = "Ignition Pin 1", ignitionPins1 + field = "Ignition Pin 2", ignitionPins2, {(ignitionMode != 0 && cylindersCount > 1) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 2) || (firingOrder == 7) || (firingOrder == 9) || (firingOrder == 11) || (firingOrder == 12)))} + field = "Ignition Pin 3", ignitionPins3, {(ignitionMode != 0 && cylindersCount > 2) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 1) || (firingOrder == 3) || (firingOrder == 4) || (firingOrder == 5) || (firingOrder == 9)))} + field = "Ignition Pin 4", ignitionPins4, {(ignitionMode != 0 && cylindersCount > 3) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 7) || (firingOrder == 12)))} + field = "Ignition Pin 5", ignitionPins5, {(ignitionMode != 0 && cylindersCount > 4) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 4) || (firingOrder == 12)))} + field = "Ignition Pin 6", ignitionPins6, {(ignitionMode != 0 && cylindersCount > 5) && (ignitionMode !=2 || twoWireBatchIgnition == 1 )} + field = "Ignition Pin 7", ignitionPins7, {(ignitionMode != 0 && cylindersCount > 6) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 11)))} + field = "Ignition Pin 8", ignitionPins8, {(ignitionMode != 0 && cylindersCount > 7) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11)))} + field = "Ignition Pin 9", ignitionPins9, {(ignitionMode != 0 && cylindersCount > 8) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11)))} + field = "Ignition Pin 10", ignitionPins10, {(ignitionMode != 0 && cylindersCount > 9) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11)))} + field = "Ignition Pin 11", ignitionPins11, {(ignitionMode != 0 && cylindersCount > 10) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11)))} + field = "Ignition Pin 12", ignitionPins12, {(ignitionMode != 0 && cylindersCount > 11) && (ignitionMode !=2 || twoWireBatchIgnition == 1 || ((firingOrder == 5) || (firingOrder == 11)))} + field = "This is useful to have tachometer working while converting from distributor" + field = "Dizzy out Pin", dizzySparkOutputPin + field = "Dizzy out Pin Mode", dizzySparkOutputPinMode + + dialog = ignitionSettings, "", xAxis + panel = ignitionOutputs, West + panel = dwellCorrection, Center + +; Engine->Aux1 Thermistor Settings + dialog = auxTempSensor1_thermistor, "aux1 Thermistor Settings" + field = "!Here is three pairs of thermistor temperature and his resistance." + field = "!Typical temperatures is -40°C, 0°C and 100°C" + field = "" + field = "Lowest temperature", auxTempSensor1_tempC_1 + field = "Resistance @ LT", auxTempSensor1_resistance_1 + field = "" + field = "Middle temperature", auxTempSensor1_tempC_2 + field = "Resistance @ MT", auxTempSensor1_resistance_2 + field = "" + field = "Highest temperature", auxTempSensor1_tempC_3 + field = "Resistance @ HT", auxTempSensor1_resistance_3 + dialog = auxTempSensor1Sensor_IO, "auxTempSensor1 Sensor I/O" + field = "auxTempSensor1 ADC input", auxTempSensor1_adcChannel + field = "Bias Resistor Value", auxTempSensor1_bias_resistor + dialog = auxTempSensor1Sensor, "", yAxis + panel = auxTempSensor1_thermistor, North + panel = auxTempSensor1Sensor_IO, South + +; Engine->Aux2 Thermistor Settings + dialog = auxTempSensor2_thermistor, "aux1 Thermistor Settings" + field = "!Here is three pairs of thermistor temperature and his resistance." + field = "!Typical temperatures is -40°C, 0°C and 100°C" + field = "" + field = "Lowest temperature", auxTempSensor2_tempC_1 + field = "Resistance @ LT", auxTempSensor2_resistance_1 + field = "" + field = "Middle temperature", auxTempSensor2_tempC_2 + field = "Resistance @ MT", auxTempSensor2_resistance_2 + field = "" + field = "Highest temperature", auxTempSensor2_tempC_3 + field = "Resistance @ HT", auxTempSensor2_resistance_3 + dialog = auxTempSensor2Sensor_IO, "auxTempSensor2 Sensor I/O" + field = "auxTempSensor2 ADC input", auxTempSensor2_adcChannel + field = "Bias Resistor Value", auxTempSensor2_bias_resistor + dialog = auxTempSensor2Sensor, "", yAxis + panel = auxTempSensor2_thermistor, North + panel = auxTempSensor2Sensor_IO, South + + + dialog = allPins1 + field = "MAP ADC input", map_sensor_hwChannel + field = "frequencyReportingMapInputPin", frequencyReportingMapInputPin + field = "CLT ADC input", clt_adcChannel + field = "IAT ADC input", iat_adcChannel + field = "vBatt ADC input", vbattAdcChannel + field = "TPS ADC input", tpsAdcChannel + field = "MAF ADC input", mafAdcChannel + field = "AFR ADC input", afr_hwChannel + field = "fuelLevelSensor", fuelLevelSensor + field = "Baro ADC input", baroSensor_hwChannel + field = "pedal Position Channel", pedalPositionChannel + field = "Primary input channel", triggerInputPins1 + field = "Secondary channel", triggerInputPins2 + field = "Cam Sync/VVT input", camInput + field = "Vehicle Speed Input pin", vehicleSpeedSensorInputPin + field = "clutchDownPin", clutchDownPin + field = "clutchUpPin", clutchUpPin + + dialog = allPins2 + field = "Tachometer output Pin", tachOutputPin + field = "Dizzy out Pin", dizzySparkOutputPin + field = "O2 heater pin", o2heaterPin + field = "Idle Solenoid Pin", idle_solenoidPin + field = "Idle Stepper Dir", idle_stepperDirectionPin + field = "Idle Stepper Step", idle_stepperStepPin + field = "Idle Stepper Enable", stepperEnablePin + field = "Fuel Pump Pin", fuelPumpPin + field = "ETB Dir #1", etbDirectionPin1 + field = "ETB Dir #2", etbDirectionPin2 + field = "ETB Control #1", etbControlPin1 + field = "ETB Control #2", etbControlPin2 + + dialog = allPins3 + 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 = "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 = allPins4 + field = "FSIO dig inp #1", fsioDigitalInputs1 + field = "FSIO dig inp #2", fsioDigitalInputs2 + field = "FSIO dig inp #3", fsioDigitalInputs3 + field = "FSIO dig inp #4", fsioDigitalInputs4 + field = "FSIO dig inp #5", fsioDigitalInputs5 + field = "FSIO dig inp #6", fsioDigitalInputs6 + field = "FSIO dig inp #7", fsioDigitalInputs7 + field = "FSIO dig inp #8", fsioDigitalInputs8 + field = "FSIO dig inp #9", fsioDigitalInputs9 + + + + dialog = allPins1_2, "", xAxis + panel = allPins1 + panel = allPins2 + + dialog = allPins3_4, "", xAxis + panel = allPins3 + panel = allPins4 + + dialog = allPins, "All Pins", xAxis + panel = allPins1_2 + panel = allPins3_4 + + +; Engine->CLT Thermistor Settings + dialog = clt_thermistor, "CLT Thermistor Settings" + field = "!Here is three pairs of thermistor temperature and his resistance." + field = "!Typical temperatures is -40°C, 0°C and 100°C" + field = "" + field = "Lowest temperature", clt_tempC_1 + field = "Resistance @ LT", clt_resistance_1 + field = "" + field = "Middle temperature", clt_tempC_2 + field = "Resistance @ MT", clt_resistance_2 + field = "" + field = "Highest temperature", clt_tempC_3 + field = "Resistance @ HT", clt_resistance_3 + dialog = cltSensor_IO, "CLT Sensor I/O" + field = "CLT ADC input", clt_adcChannel + field = "Bias Resistor Value", clt_bias_resistor + dialog = cltSensor, "", yAxis + panel = clt_thermistor, North + panel = cltSensor_IO, South + +; Engine->IAT Thermistor Settings + dialog = iat_thermistor, "IAT Thermistor Settings" + field = "!Here is three pairs of thermistor temperature and his resistance." + field = "!Typical temperatures is -40°C, 0°C and 100°C" + field = "" + field = "Lowest temperature", iat_tempC_1 + field = "Resistance @ LT", iat_resistance_1 + field = "" + field = "Middle temperature", iat_tempC_2 + field = "Resistance @ MT", iat_resistance_2 + field = "" + field = "Highest temperature", iat_tempC_3 + field = "Resistance @ HT", iat_resistance_3 + dialog = iatSensor_IO, "IAT Sensor I/O" + field = "IAT ADC input", iat_adcChannel + field = "Bias Resistor Value", iat_bias_resistor + dialog = iatSensor, "", yAxis + panel = iat_thermistor, North + panel = iatSensor_IO, South + +; Engine->MAP Sensor Settings + dialog = mapSensorVDlg, "Voltage Sensor Settings", xAxis + field = "MAP ADC input", map_sensor_hwChannel, {hasFrequencyReportingMapSensor == 0} + field = "Map type", map_sensor_type, {hasFrequencyReportingMapSensor == 0} + field = "MAP value low point", map_sensor_lowValue, { map_sensor_type == 0 && hasFrequencyReportingMapSensor == 0} + field = "MAP voltage low point", mapLowValueVoltage, { map_sensor_type == 0 && hasFrequencyReportingMapSensor == 0} + field = "MAP value high point", map_sensor_highValue, { map_sensor_type == 0 && hasFrequencyReportingMapSensor == 0} + field = "MAP voltage high value", mapHighValueVoltage, { map_sensor_type == 0 && hasFrequencyReportingMapSensor == 0} + + dialog = mapSensorFDlg, "Frequency Sensor Settings", xAxis + field = "pin", frequencyReportingMapInputPin, {hasFrequencyReportingMapSensor == 1} + field = "0 kPa freq", mapFrequency0Kpa, {hasFrequencyReportingMapSensor == 1} + field = "100 kpa freq", mapFrequency100Kpa, {hasFrequencyReportingMapSensor == 1} + + dialog = mapCurves, "", border + panel = map_samplingAngleCurve, West + panel = map_samplingWindowCurve, East + + dialog = mapSwitch, "MAP input type" + field = "frequency-based MAP", hasFrequencyReportingMapSensor + + dialog = mapVandF, "V and F" + panel = mapSensorVDlg, North + panel = mapSensorFDlg, South + + dialog = mapSwitchAndSettings, "Switch and Settings" + field = "!ECU reboot needed to apply pin assignment" + panel = mapSwitch, North + panel = mapVandF, South + + dialog = mapSettings, "MAP Sensor Settings", border + panel = mapCurves, North + panel = mapSwitchAndSettings, South + +; Engine->EGO Sensor Settings + dialog = egoSettings_sensor, "EGO Sensor Settings" + 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 = "AFR ADC input", afr_hwChannel + field = "O2 heater pin", o2heaterPin + dialog = egoSettings, "", yAxis + panel = egoSettings_sensor, North + panel = egoSettings_IO, South + +; Engine->EGT inputs + dialog = egtInputs, "EGT inputs" + field = "SPI", max31855spiDevice + field = "CS #1", max31855_cs1 + field = "CS #2", max31855_cs2 + field = "CS #3", max31855_cs3 + field = "CS #4", max31855_cs4 + field = "CS #5", max31855_cs5 + field = "CS #6", max31855_cs6 + field = "CS #7", max31855_cs7 + field = "CS #8", max31855_cs8 + +; Engine->idle Settings + dialog = idleSolenoid, "solenoid" + field = "Idle Solenoid Pin Mode", idle_solenoidPinMode, !useStepperIdle + field = "Idle Solenoid Pin", idle_solenoidPin, !useStepperIdle + field = "Idle Solenoid Frequency", idle_solenoidFrequency, !useStepperIdle + + dialog = idleStepper, "stepper" + field = "Idle Stepper Step", idle_stepperStepPin, useStepperIdle + field = "Idle Stepper Dir", idle_stepperDirectionPin, useStepperIdle + field = "Idle Stepper Enable", stepperEnablePin, useStepperIdle + field = "Idle Stepper Enable mode", stepperEnablePinMode, useStepperIdle + field = "Stepper reaction time", idleStepperReactionTime, useStepperIdle + field = "Stepper total steps", idleStepperTotalSteps, useStepperIdle + + dialog = idleType, "Type idle valve", border + panel = idleSolenoid, West + panel = idleStepper, East + + dialog = idleSettings, "", yAxis + field = "Manual mode", idleMode + field = "Cranking Extra", crankingIdleAdjustment + field = "Auto target", targetIdleRpm, { idleMode == 0} + field = "idle P", idleRpmPid_pFactor + field = "idle I", idleRpmPid_iFactor + field = "idle D", idleRpmPid_dFactor + field = "idle offset", idleRpmPid_offset + slider = "Manual Idle Position", manIdlePosition, horizontal + field = "" + field = "use stepper", useStepperIdle + panel = idleType + +; Engine->Fan Settings + dialog = fanSetting, "Fan Settings" + field = "Fan On Temperature", fanOnTemperature + field = "Fan Off Temperature", fanOffTemperature + field = "" + field = "!ECU reboot needed to apply these settings" + field = "Fan Pin Mode", fanPinMode + field = "Fan Pin", fanPin + +; Engine->Main Relay Settings + dialog = mainRealay, "Main Relay Settings" + field = "!ECU reboot needed to apply these settings" + field = "Main Relay Mode", mainRelayPinMode + field = "Main Relay Pin", mainRelayPin + +; Engine->Fuel Pump Settings + dialog = fuelPump, "Fuel Pump Settings" + field = "!ECU reboot needed to apply these settings" + field = "Fuel Pump Pin Mode", fuelPumpPinMode + field = "Fuel Pump Pin", fuelPumpPin + +; Engine->MIL Settings + dialog = malfunction, "Check Engine Settings" + field = "!ECU reboot needed to apply these settings" + field = "Check Engine Pin Mode", malfunctionIndicatorPinMode + field = "Check Engine Pin", malfunctionIndicatorPin + field = "Warning Period", warningPeriod + +; Engine->hip9011 Settings + dialog = hipFunction, "HIP9011 Settings (knock decoder)" + field = "Enabled", isHip9011Enabled + field = "Threshold", knockVThreshold, {isHip9011Enabled == 1} + field = "!ECU reboot needed to apply these settings" + field = "IntHold pin (hip9011 input)", hip9011IntHoldPin, {isHip9011Enabled == 1} + field = "IntHold pin (hip9011 input) mode", hip9011IntHoldPinMode, {isHip9011Enabled == 1} + field = "ChipSelect pin", hip9011CsPin, {isHip9011Enabled == 1} + field = "ChipSelect mode", hip9011CsPinMode, {isHip9011Enabled == 1} + field = "hip Output/stm input", hipOutputChannel, {isHip9011Enabled == 1} + field = "prescaler & SDO", hip9011PrescalerAndSDO, {isHip9011Enabled == 1} + field = "Band Freq override", knockBandCustom, {isHip9011Enabled == 1} + field = "SPI device", hip9011SpiDevice, {isHip9011Enabled == 1} + field = "SPI2sck", spi2SckMode, {isHip9011Enabled == 1} + field = "SPI2mosi", spi2MosiMode, {isHip9011Enabled == 1} + field = "SPI2miso", spi2MisoMode, {isHip9011Enabled == 1} + panel = knockThresholdCurve + +; Engine->cj125 Settings + dialog = cj125Function, "CJ125 Settings (wbo decoder)" + field = "Enabled", isCJ125Enabled + field = "!ECU reboot needed to apply these settings" + field = "ChipSelect pin", cj125CsPin, {isCJ125Enabled == 1} + field = "ChipSelect mode", cj125CsPinMode, {isCJ125Enabled == 1} + field = "SPI device", cj125SpiDevice + field = "UA input", cj125ua, {isCJ125Enabled == 1} + field = "UR input", cj125ur, {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 = "SPI1 MISO", spi1misoPin, {is_enabled_spi_1 == 1} + field = "SPI1 SCK", spi1sckPin, {is_enabled_spi_1 == 1} + field = "SPI2 enable", is_enabled_spi_2 + 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 enable", is_enabled_spi_3 + 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} + + dialog = fuelClosedLoopDialog, "Fuel closed-loop correction" + field = "Enabled", fuelClosedLoopCorrectionEnabled + field = "!No correction below these value" + field = "CLT - low threshod", fuelClosedLoopCltThreshold, {fuelClosedLoopCorrectionEnabled == 1} + field = "RPM - low threshod", fuelClosedLoopRpmThreshold, {fuelClosedLoopCorrectionEnabled == 1} + field = "EGO - low threshod", fuelClosedLoopAfrLowThreshold, {fuelClosedLoopCorrectionEnabled == 1} + field = "!No correction above these value" + field = "TPS - high threshod", fuelClosedLoopTpsThreshold, {fuelClosedLoopCorrectionEnabled == 1} + field = "EGO - high threshod", fuelClosedLoopAfrHighThreshold, {fuelClosedLoopCorrectionEnabled == 1} + field = "!PID settings" + field = "P factor", fuelClosedLoopPid_pFactor, {fuelClosedLoopCorrectionEnabled == 1} + field = "I factor", fuelClosedLoopPid_iFactor, {fuelClosedLoopCorrectionEnabled == 1} + field = "D factor", fuelClosedLoopPid_dFactor, {fuelClosedLoopCorrectionEnabled == 1} + + + dialog = auxPidDialog, "Aux PID" + field = "Enabled", activateAuxPid1 + field = "FSIO pin #1", auxPidPins1 + field = "PWM Frequency", auxPidFrequency1 + field = "verbose", isVerboseAuxPid1 + field = "#target based on FSIO map#1" + field = "control period", auxPidDT1, {activateAuxPid1 == 1} + field = "#PID control" + field = "offset", auxPid1_offset, {activateAuxPid1 == 1} + field = "P factor", auxPid1_pFactor, {activateAuxPid1 == 1} + field = "I factor", auxPid1_iFactor, {activateAuxPid1 == 1} + field = "D factor", auxPid1_dFactor, {activateAuxPid1 == 1} + field = "FSIO pin #2", auxPidPins2 + field = "FSIO pin #3", auxPidPins3 + field = "FSIO pin #4", auxPidPins4 + +; Engine->Battery & Alternator + dialog = batteryDialog, "Battery Settings", yAxis + field = "vBatt ADC input", vbattAdcChannel + field = "Battery Input Divider Coefficient", vbattDividerCoeff + dialog = alternator, "Alternator Settings", yAxis + field = "Enabled", isAlternatorControlEnabled + field = "simple on/off mode", onOffAlternatorLogic, {isAlternatorControlEnabled == 1} + field = "Target", targetVBatt, {isAlternatorControlEnabled == 1} + field = "Pin", alternatorControlPin, {isAlternatorControlEnabled == 1} + field = "Pin Mode", alternatorControlPinMode, {isAlternatorControlEnabled == 1} + field = "PWM frequency", alternatorPwmFrequency, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} + field = "Off Above TPS", alternatorOffAboveTps, {isAlternatorControlEnabled == 1} + field = "Verbose", isVerboseAlternator, {isAlternatorControlEnabled == 1} + field = "control period", alternatorDT, {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 = "#% duty = Pterm + Iterm + Dterm + offset%" + + + dialog = warmupFuelDialog, "Warmup fuel closed-loop", yAxis + field = "use automatic Pid Afr control", useWarmupPidAfr + field = "warmup temperature Threshold", warmupAfrThreshold + field = "wa offset", warmupAfrPid_offset + field = "wa P factor", warmupAfrPid_pFactor + field = "wa I factor", warmupAfrPid_iFactor + field = "wa D factor", warmupAfrPid_dFactor + field = "#correction = Pterm + Iterm + Dterm + offset" + + + dialog = energySystems, "Battery and Alternator Settings", yAxis + panel = batteryDialog + panel = alternator + +; Engine->Speed Sensor + dialog = speedSensor, "Speed Sensor Settings" + field = "Input pin", vehicleSpeedSensorInputPin + field = "revolution to speed mult", vehicleSpeedCoef + +; Engine->Other inputs + dialog = analogInputs, "Analog inputs" + field = "!ECU reboot needed to apply these settings" + field = "TPS ADC input", tpsAdcChannel + field = "TPS low value detection threshold", tpsErrorDetectionTooLow + field = "TPS high value detection threshold", tpsErrorDetectionTooHigh + field = "!todo: move MAF channel to maf curve dialog" + field = "MAF ADC input", mafAdcChannel + field = "Baro ADC input", baroSensor_hwChannel + field = "Analog divider", analogInputDividerCoefficient + field = "Use BiQuad averaging", useBiQuadAnalogFiltering + field = "Smoothing factor", slowAdcAlpha, {useBiQuadAnalogFiltering == 0} + field = "Bi_Q a0", biQuad_a0, {useBiQuadAnalogFiltering == 1} + field = "Bi_Q a1", biQuad_a1, {useBiQuadAnalogFiltering == 1} + field = "Bi_Q a2", biQuad_a2, {useBiQuadAnalogFiltering == 1} + field = "Bi_Q b1", biQuad_b1, {useBiQuadAnalogFiltering == 1} + field = "Bi_Q b2", biQuad_b2, {useBiQuadAnalogFiltering == 1} + + dialog = tachSettings, "Tachometer output" + field = "!See also dizzySparkOutputPin" + field = "pin", tachOutputPin + field = "pin mode", tachOutputPinMode + field = "rise at trigger index", tachPulseTriggerIndex + field = "pulse duration", tachPulseDuractionMs + + +; Board->Connection + dialog = tsPort, "TunerStudio Port" + field = "startConsoleInBinaryMode", startConsoleInBinaryMode + field = "tunerStudioSerialSpeed", tunerStudioSerialSpeed + field = "Use PC10/PC11 serial?", useSerialPort + field = "startConsoleInBinaryMode", startConsoleInBinaryMode + + dialog = canBus, "CAN Bus" + field = "Can Read Enabled", canReadEnabled + field = "Can Write Enabled", canWriteEnabled +; field = "Can Nbc Type", canNbcType + field = "Can Sleep Period", canSleepPeriod + field = "TX pin", canTxPin + field = "RX pin", canRxPin + + dialog = sdCard, "SD Card Logger" + field = "SdCard", isSdCardEnabled + field = "log format", logFormat + field = "Mass Storage", storageMode + + 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 = connectRight, "", yAxis + panel = tsPort + panel = canBus + panel = sdCard + panel = gpsReceiver + + dialog = connection, "", border + panel = lcdScreen, East + panel = connectRight, West + + dialog = joystickPanel, "Joystick" + field = "joustick center button", joystickCenterPin + field = "joustick button A", joystickAPin + field = "joustick button B", joystickBPin + field = "joustick button C", joystickCPin + field = "joustick button D", joystickDPin + + dialog = monitoringSettings, "rusEfi Console Settings" + field = "Sensor Sniffer", sensorChartMode + field = " Threshold", sensorSnifferRpmThreshold + field = " Each X cycle", sensorChartFrequency + field = "Engine Sniffer", isEngineChartEnabled + field = " Threshold", engineSnifferRpmThreshold + + + +; Tuning->General + dialog = generalSettings, "General" + field = "RPM Hard Limit", rpmHardLimit + field = "Boost Cut Pressure", boostCutPressure + field = "" + field = "Fuel Algorithm", fuelAlgorithm + field = "" + field = "#System hack's" + field = "Global fuel correction", globalFuelCorrection + field = "Ignition Math Logic @", ignMathCalculateAtIndex + field = "MAP Averaging Logic @", mapAveragingSchedulingAtIndex + field = "comm status pin", communicationPin + field = "running status", runningPin + + dialog = crankingFuel, "Fuel" + field = "Injection Mode", crankingInjectionMode + field = "Base Fuel Pulse Width", cranking_baseFuel + + + dialog = crankingIgnition, "Ignition" + field = "Advance", crankingTimingAngle + field = "Use fixed Dwell?", useConstantDwellDuringCranking + field = "Fixed Dwell", ignitionDwellForCrankingMs, {useConstantDwellDuringCranking == 1} + field = "Charge Angle", crankingChargeAngle, {useConstantDwellDuringCranking == 0} + + dialog = postCrankingEnrichment, "Post-cranking short-time fuel enrichment" + field = "Target temperature", postCrankingTargetClt + field = "Post-Cranking factor", postCrankingFactor + field = "Duraction", postCrankingDurationSec + + +; Tuning->Cranking + dialog = crankingDialog, "Cranking" + field = "Cranking RPM limit", cranking_rpm + panel = crankingFuel + panel = crankingIgnition + panel = postCrankingEnrichment + field = "" + field = "" + field = "enable Cylinder Cleanup", isCylinderCleanupEnabled + + + dialog = EngineLoadAccelPanel, "Engine Load" + field = "Length", engineLoadAccelLength + field = "Accel Threshold", engineLoadAccelEnrichmentThreshold + field = "Accel Multiplier", engineLoadAccelEnrichmentMultiplier + field = "Decel Threshold", engineLoadDecelEnleanmentThreshold + field = "Decel Multiplier", engineLoadDecelEnleanmentMultiplier + + dialog = TpsAccelPanel, "TPS" + field = "Length", tpsAccelLength + field = "Accel Threshold", tpsAccelEnrichmentThreshold + field = "Decel Threshold", tpsDecelEnleanmentThreshold +; field = "Decel Multiplier", tpsDecelEnleanmentMultiplier + +; Tuning->AccelEnrichment + dialog = AccelEnrich, "Accel/Decel Enrichment" + panel = EngineLoadAccelPanel + panel = TpsAccelPanel + field = "sucked off wall coefficient", suckedOffCoef + field = "added to wall coef", addedToWallCoef + + +; Flex Logic + dialog = fsioIO, "Outputs" + field = "output #1", fsioPins1 + field = "output #2", fsioPins2 + field = "output #3", fsioPins3 + field = "output #4", fsioPins4 + field = "output #5", fsioPins5 + field = "output #6", fsioPins6 + field = "output #7", fsioPins7 + field = "output #8", fsioPins8 + field = "output #9", fsioPins9 + field = "output #10", fsioPins10 + field = "output #11", fsioPins11 + field = "output #12", fsioPins12 + field = "output #13", fsioPins13 + field = "output #14", fsioPins14 + field = "output #15", fsioPins15 + field = "output #16", fsioPins16 + field = "" + field = "" + + dialog = fsioFrequency, "Frequency" + field = "freq #1", fsioFrequency1 + field = "freq #2", fsioFrequency2 + field = "freq #3", fsioFrequency3 + field = "freq #4", fsioFrequency4 + field = "freq #5", fsioFrequency5 + field = "freq #6", fsioFrequency6 + field = "freq #7", fsioFrequency7 + field = "freq #8", fsioFrequency8 + field = "freq #9", fsioFrequency9 + field = "freq #10", fsioFrequency10 + field = "freq #11", fsioFrequency11 + field = "freq #12", fsioFrequency12 + field = "freq #13", fsioFrequency13 + field = "freq #14", fsioFrequency14 + field = "freq #15", fsioFrequency15 + field = "freq #16", fsioFrequency16 + field = "" + field = "" + + dialog = fsioSetting, "Setting" + field = "Set number is not associated with the output number." + field = "Set number, only the cell number with some numbers." + field = "set #0", fsio_setting1 + field = "set #1", fsio_setting2 + field = "set #2", fsio_setting3 + field = "set #3", fsio_setting4 + field = "set #4", fsio_setting5 + field = "set #5", fsio_setting6 + field = "set #6", fsio_setting7 + field = "set #7", fsio_setting8 + field = "set #8", fsio_setting9 + field = "set #9", fsio_setting10 + field = "set #10", fsio_setting11 + field = "set #11", fsio_setting12 + field = "set #12", fsio_setting13 + field = "set #13", fsio_setting14 + field = "set #14", fsio_setting15 + field = "set #15", fsio_setting16 + + dialog = fsioOutputsDialog, "FSIO outputs", border + panel = fsioIO, West + panel = fsioFrequency, Center + panel = fsioSetting, East + + + dialog = fsioInputsDialog, "FSIO inputs" + field = "ADC #1", fsioAdc1 + field = "ADC #2", fsioAdc2 + field = "ADC #3", fsioAdc3 + field = "ADC #4", fsioAdc4 + + dialog = etbDialog, "Electronic Thtottle Body (alpha)" + field = "pedal Position Channel", pedalPositionChannel + field = "Pedal min", pedalPositionMin + field = "Pedal max", pedalPositionMax + field = "PWM Frequency", etbFreq + field = "Dir #1", etbDirectionPin1 + field = "Dir #2", etbDirectionPin2 + field = "Control #1", etbControlPin1 + field = "Control #2", etbControlPin2 + + dialog = testSpark, "Spark" + commandButton = "Spark #1", cmd_test_spk1 + commandButton = "Spark #2", cmd_test_spk2 + commandButton = "Spark #3", cmd_test_spk3 + commandButton = "Spark #4", cmd_test_spk4 + commandButton = "Spark #5", cmd_test_spk5 + commandButton = "Spark #6", cmd_test_spk6 + commandButton = "Spark #7", cmd_test_spk7 + commandButton = "Spark #8", cmd_test_spk8 + + dialog = testInjectors, "Fuel" + commandButton = "Injector #1", cmd_test_inj1 + commandButton = "Injector #2", cmd_test_inj2 + commandButton = "Injector #3", cmd_test_inj3 + commandButton = "Injector #4", cmd_test_inj4 + commandButton = "Injector #5", cmd_test_inj5 + commandButton = "Injector #6", cmd_test_inj6 + commandButton = "Injector #7", cmd_test_inj7 + commandButton = "Injector #8", cmd_test_inj8 + + dialog = testMisc, "Misc" + commandButton = "Fuel Pump", cmd_test_fuel_pump + commandButton = "Radiator Fan", cmd_test_radiator_fan + commandButton = "Check Engine", cmd_test_check_engine_light + commandButton = "Idle Air Valve", cmd_test_idle_valve + + dialog = ioTest, "I-O Test", border + panel = testSpark, West + panel = testInjectors, Center + panel = testMisc, East + + +; Board->ECU stimulator + dialog = ecuStimulator, "ECU stimulator" + field = "Trigger Simulator", triggerSimulatorFrequency + field = "self-stimulation", directSelfStimulation + field = "" + field = "digipot spi", digitalPotentiometerSpiDevice + field = "digipot CS #0", digitalPotentiometerChipSelect1 + field = "digipot CS #1", digitalPotentiometerChipSelect2 + field = "digipot CS #2", digitalPotentiometerChipSelect3 + field = "digipot CS #3", digitalPotentiometerChipSelect4 + field = "" + field = "trigger stimulator pin #1", triggerSimulatorPins1 + field = "trigger stimulator pin #2", triggerSimulatorPins2 + field = "trigger stimulator pin #3", triggerSimulatorPins3 + field = "" + field = "Logic input channel 1", logicAnalyzerPins1 + field = "Logic input channel 2", logicAnalyzerPins2 + field = "Logic input channel 3", logicAnalyzerPins3 + field = "Logic input channel 4", logicAnalyzerPins4 + field = "" + field = "Engine chart size", engineChartSize + + ; Racing Features->Launch Control + dialog = smLaunchControl, "Launch Control Settings" + field = "RPM Step1 Limit", step1rpm + field = "Launch RPM Window" step1RpmWindow + field = "Step1 Ignition Advance", step1timing + field = "Use Spark Cut", step1SparkCutEnable + field = "Use Fuel Cut", step1fuelCutEnable + field = "clutchDownPin", clutchDownPin + field = "clutchUpPin", clutchUpPin + diff --git a/firmware/tunerstudio/rusefi.input b/firmware/tunerstudio/rusefi.input index 1868384926..3984535c9e 100644 --- a/firmware/tunerstudio/rusefi.input +++ b/firmware/tunerstudio/rusefi.input @@ -7,7 +7,7 @@ enable2ndByteCanID = false [TunerStudio] queryCommand = "S" - signature = "MShift v0.01" ; signature is expected to be 7 or more characters. + signature = "MShift v0.02" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC