From e41a96a4c56459d1fbbbaebe330559cf86a167e9 Mon Sep 17 00:00:00 2001 From: GitHub git update Action Date: Fri, 22 Mar 2024 17:17:19 +0000 Subject: [PATCH] Auto-generated Configs --- ...e_configuration_generated_structures_XXX.h | 2794 ++++++++-------- .../generated/rusefi_generated_XXX.h | 16 +- .../controllers/generated/signature_XXX.h | 4 +- .../tunerstudio/generated/rusefi_XXX.ini | 2926 +++++++++-------- 4 files changed, 2841 insertions(+), 2899 deletions(-) diff --git a/generated/controllers/generated/engine_configuration_generated_structures_XXX.h b/generated/controllers/generated/engine_configuration_generated_structures_XXX.h index 7bca2f2..9e80898 100644 --- a/generated/controllers/generated/engine_configuration_generated_structures_XXX.h +++ b/generated/controllers/generated/engine_configuration_generated_structures_XXX.h @@ -1,4 +1,4 @@ -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Mon Mar 18 17:16:09 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Fri Mar 22 17:15:17 UTC 2024 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -604,10 +604,95 @@ struct engine_configuration_s { */ uint8_t maxAcClt; /** - * units: RPM + * Just for reference really, not taken into account by any logic at this point + * units: CR * offset 16 */ - uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + float compressionRatio; + /** + * Voltage when the wastegate is closed. + * You probably don't have one of these! + * units: mv + * offset 20 + */ + uint16_t wastegatePositionMin; + /** + * Voltage when the wastegate is fully open. + * You probably don't have one of these! + * 1 volt = 1000 units + * units: mv + * offset 22 + */ + uint16_t wastegatePositionMax; + /** + * Voltage when the idle valve is closed. + * You probably don't have one of these! + * units: mv + * offset 24 + */ + uint16_t idlePositionMin; + /** + * Voltage when the idle valve is open. + * You probably don't have one of these! + * 1 volt = 1000 units + * units: mv + * offset 26 + */ + uint16_t idlePositionMax; + /** + * offset 28 + */ + output_pin_e mainRelayPin; + /** + * offset 30 + */ + Gpio sdCardCsPin; + /** + * set_can_tx_pin X + * offset 32 + */ + Gpio canTxPin; + /** + * set_can_rx_pin X + * offset 34 + */ + Gpio canRxPin; + /** + * By the way ETB PID runs at 500hz, length in 1/500 of second here. + * offset 36 + */ + uint16_t etbExpAverageLength; + /** + * units: % + * offset 38 + */ + int8_t launchFuelAdderPercent; + /** + * Time required to detect a stuck throttle. + * units: sec + * offset 39 + */ + scaled_channel etbJamTimeout; + /** + * offset 40 + */ + output_pin_e tachOutputPin; + /** + * offset 42 + */ + pin_output_mode_e tachOutputPinMode; + /** + * Additional idle % while A/C is active + * units: % + * offset 43 + */ + uint8_t acIdleExtraOffset; + /** + * Value between 0 and 100 used in Manual mode + * units: % + * offset 44 + */ + float manIdlePosition; /** * This parameter sets the latest that the last multispark can occur after the main ignition event. For example, if the ignition timing is 30 degrees BTDC, and this parameter is set to 45, no multispark will ever be fired after 15 degrees ATDC. * units: deg @@ -621,11 +706,10 @@ struct engine_configuration_s { */ uint8_t multisparkMaxExtraSparkCount; /** - * need 4 byte alignment - * units: units + * units: RPM * offset 50 */ - uint8_t alignmentFill_at_50[2]; + int16_t vvtControlMinRpm; /** * offset 52 */ @@ -860,11 +944,9 @@ struct engine_configuration_s { */ firing_order_e firingOrder; /** - * need 4 byte alignment - * units: units * offset 441 */ - uint8_t alignmentFill_at_441[1]; + uint8_t justATempTest; /** * offset 442 */ @@ -943,11 +1025,9 @@ struct engine_configuration_s { */ uint8_t maxIdleVss; /** - * need 4 byte alignment - * units: units * offset 463 */ - uint8_t alignmentFill_at_463[1]; + uint8_t camDecoder2jzPrecision; /** * Expected oil pressure after starting the engine. If oil pressure does not reach this level within 5 seconds of engine start, fuel will be cut. Set to 0 to disable and always allow starting. * units: kPa @@ -960,11 +1040,10 @@ struct engine_configuration_s { */ timing_mode_e timingMode; /** - * need 4 byte alignment - * units: units + * set can_mode X * offset 467 */ - uint8_t alignmentFill_at_467[1]; + can_nbc_e canNbcType; /** * This value is the ignition timing used when in 'fixed timing' mode, i.e. constant timing * This mode is useful when adjusting distributor location. @@ -1021,126 +1100,99 @@ struct engine_configuration_s { * offset 496 */ float driveWheelRevPerKm; - /** - * set can_mode X - * offset 500 - */ - can_nbc_e canNbcType; - /** - * need 4 byte alignment - * units: units - * offset 501 - */ - uint8_t alignmentFill_at_501[3]; /** * CANbus thread period in ms * units: ms - * offset 504 + * offset 500 */ int canSleepPeriodMs; - /** - * offset 508 - */ - uint8_t camDecoder2jzPrecision; - /** - * offset 509 - */ - uint8_t justATempTest; - /** - * offset 510 - */ - uint8_t unusedHere333; - /** - * offset 511 - */ - uint8_t unusedHere334; /** * units: index - * offset 512 + * offset 504 */ int byFirmwareVersion; /** * First throttle body, first sensor. See also pedalPositionAdcChannel - * offset 516 + * offset 508 */ adc_channel_e tps1_1AdcChannel; /** * This is the processor input pin that the battery voltage circuit is connected to, if you are unsure of what pin to use, check the schematic that corresponds to your PCB. - * offset 517 + * offset 509 */ adc_channel_e vbattAdcChannel; /** * This is the processor pin that your fuel level sensor in connected to. This is a non standard input so will need to be user defined. - * offset 518 + * offset 510 */ adc_channel_e fuelLevelSensor; /** * Second throttle body position sensor, single channel so far * set_analog_input_pin tps2 X - * offset 519 + * offset 511 */ adc_channel_e tps2_1AdcChannel; /** * 0.1 is a good default value * units: x - * offset 520 + * offset 512 */ float idle_derivativeFilterLoss; /** * just a temporary solution * units: angle - * offset 524 + * offset 516 */ int trailingSparkAngle; /** - * offset 528 + * offset 520 */ trigger_config_s trigger; /** * Extra air taper amount * units: % - * offset 540 + * offset 532 */ float airByRpmTaper; /** - * offset 544 + * offset 536 */ spi_device_e hip9011SpiDevice; /** * Duty cycle to use in case of a sensor failure. This duty cycle should produce the minimum possible amount of boost. This duty is also used in case any of the minimum RPM/TPS/MAP conditions are not met. * units: % - * offset 545 + * offset 537 */ uint8_t boostControlSafeDutyCycle; /** - * offset 546 + * offset 538 */ adc_channel_e mafAdcChannel; /** - * offset 547 + * offset 539 */ uint8_t acrRevolutions; /** - * offset 548 + * offset 540 */ int calibrationBirthday; /** * units: volts - * offset 552 + * offset 544 */ float adcVcc; /** * units: Deg - * offset 556 + * offset 548 */ float mapCamDetectionAnglePosition; /** * Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts. - * offset 560 + * offset 552 */ brain_input_pin_e camInputs[CAM_INPUTS_COUNT]; /** - * offset 568 + * offset 560 */ afr_sensor_s afr; /** @@ -1149,203 +1201,205 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set_analog_input_pin pps X * See throttlePedalUpVoltage and throttlePedalWOTVoltage - * offset 588 + * offset 580 */ adc_channel_e throttlePedalPositionAdcChannel; /** * TPS/PPS error threshold * units: % - * offset 589 + * offset 581 */ scaled_channel etbSplit; /** - * offset 590 + * offset 582 */ Gpio tle6240_cs; /** - * offset 592 + * offset 584 */ pin_output_mode_e tle6240_csPinMode; /** - * offset 593 + * offset 585 */ pin_output_mode_e mc33810_csPinMode; /** * Throttle Pedal not pressed switch - used on some older vehicles like early Mazda Miata - * offset 594 + * offset 586 */ switch_input_pin_e throttlePedalUpPin; /** * @see hasBaroSensor - * offset 596 + * offset 588 */ air_pressure_sensor_config_s baroSensor; /** - * offset 608 + * offset 600 */ idle_hardware_s idle; - /** - * Value between 0 and 100 used in Manual mode - * units: % - * offset 620 - */ - float manIdlePosition; /** * Ignition timing to remove when a knock event occurs. * units: % - * offset 624 + * offset 612 */ scaled_channel knockRetardAggression; /** * After a knock event, reapply timing at this rate. * units: deg/s - * offset 625 + * offset 613 */ scaled_channel knockRetardReapplyRate; /** * Select which cam is used for engine sync. Other cams will be used only for VVT measurement, but not engine sync. - * offset 626 + * offset 614 */ engineSyncCam_e engineSyncCam; /** - * Set this so your vehicle speed signal is responsive, but not noisy. Larger value give smoother but slower response. - * offset 627 + * offset 615 */ - uint8_t vssFilterReciprocal; + pin_output_mode_e sdCardCsPinMode; /** * Number of turns of your vehicle speed sensor per turn of the wheels. For example if your sensor is on the transmission output, enter your axle/differential ratio. If you are using a hub-mounted sensor, enter a value of 1.0. * units: ratio - * offset 628 + * offset 616 */ scaled_channel vssGearRatio; + /** + * Set this so your vehicle speed signal is responsive, but not noisy. Larger value give smoother but slower response. + * offset 618 + */ + uint8_t vssFilterReciprocal; /** * Number of pulses output per revolution of the shaft where your VSS is mounted. For example, GM applications of the T56 output 17 pulses per revolution of the transmission output shaft. * units: count - * offset 630 + * offset 619 */ uint8_t vssToothCount; /** * Override the Y axis (load) value used for only the Idle VE table. * Advanced users only: If you aren't sure you need this, you probably don't need this. - * offset 631 + * offset 620 */ ve_override_e idleVeOverrideMode; /** - * offset 632 + * need 4 byte alignment + * units: units + * offset 621 + */ + uint8_t alignmentFill_at_621[1]; + /** + * offset 622 */ Gpio l9779_cs; /** - * offset 634 + * offset 624 */ output_pin_e injectionPins[MAX_CYLINDER_COUNT]; /** - * offset 658 + * offset 648 */ output_pin_e ignitionPins[MAX_CYLINDER_COUNT]; /** - * offset 682 + * offset 672 */ pin_output_mode_e injectionPinMode; /** - * offset 683 + * offset 673 */ pin_output_mode_e ignitionPinMode; /** - * offset 684 + * offset 674 */ output_pin_e fuelPumpPin; /** - * offset 686 + * offset 676 */ pin_output_mode_e fuelPumpPinMode; /** * How many consecutive VVT gap rations have to match expected ranges for sync to happen * units: count - * offset 687 + * offset 677 */ int8_t gapVvtTrackingLengthOverride; /** * Check engine light, also malfunction indicator light. Always blinks once on boot. - * offset 688 + * offset 678 */ output_pin_e malfunctionIndicatorPin; /** - * offset 690 + * offset 680 */ pin_output_mode_e malfunctionIndicatorPinMode; /** - * offset 691 + * offset 681 */ pin_output_mode_e fanPinMode; /** - * offset 692 + * offset 682 */ output_pin_e fanPin; /** * Some cars have a switch to indicate that clutch pedal is all the way down - * offset 694 + * offset 684 */ switch_input_pin_e clutchDownPin; /** - * offset 696 + * offset 686 */ output_pin_e alternatorControlPin; /** - * offset 698 + * offset 688 */ pin_output_mode_e alternatorControlPinMode; /** - * offset 699 + * offset 689 */ pin_input_mode_e clutchDownPinMode; /** - * offset 700 + * offset 690 */ Gpio digitalPotentiometerChipSelect[DIGIPOT_COUNT]; /** - * offset 708 + * offset 698 */ pin_output_mode_e electronicThrottlePin1Mode; /** - * offset 709 + * offset 699 */ spi_device_e max31855spiDevice; /** - * offset 710 + * offset 700 */ Gpio debugTriggerSync; /** * Digital Potentiometer is used by stock ECU stimulation code - * offset 712 + * offset 702 */ spi_device_e digitalPotentiometerSpiDevice; /** - * need 4 byte alignment - * units: units - * offset 713 + * offset 703 */ - uint8_t alignmentFill_at_713[1]; + pin_input_mode_e brakePedalPinMode; /** - * offset 714 + * offset 704 */ Gpio mc33972_cs; /** - * offset 716 + * offset 706 */ pin_output_mode_e mc33972_csPinMode; /** * Useful in Research&Development phase - * offset 717 + * offset 707 */ adc_channel_e auxFastSensor1_adcChannel; /** * First throttle body, second sensor. - * offset 718 + * offset 708 */ adc_channel_e tps1_2AdcChannel; /** * Second throttle body, second sensor. - * offset 719 + * offset 709 */ adc_channel_e tps2_2AdcChannel; /** @@ -1353,567 +1407,555 @@ struct engine_configuration_s { * Second channel * See also tps1_1AdcChannel * See throttlePedalSecondaryUpVoltage and throttlePedalSecondaryWOTVoltage - * offset 720 + * offset 710 */ adc_channel_e throttlePedalPositionSecondAdcChannel; - /** - * units: % - * offset 721 - */ - uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; /** * AFR, WBO, EGO - whatever you like to call it - * offset 729 + * offset 711 */ ego_sensor_e afr_type; /** - * offset 730 + * offset 712 */ Gpio mc33810_cs[C_MC33810_COUNT]; + /** + * need 4 byte alignment + * units: units + * offset 714 + */ + uint8_t alignmentFill_at_714[2]; /** * 0.1 is a good default value * units: x - * offset 732 + * offset 716 */ float idle_antiwindupFreq; /** - * offset 736 + * offset 720 */ brain_input_pin_e triggerInputPins[TRIGGER_INPUT_PIN_COUNT]; /** * Minimum allowed time for the boost phase. If the boost target current is reached before this time elapses, it is assumed that the injector has failed short circuit. * units: us - * offset 740 + * offset 724 */ uint16_t mc33_t_min_boost; /** - * offset 742 + * offset 726 */ pin_output_mode_e hip9011CsPinMode; + /** + * offset 727 + */ + pin_input_mode_e throttlePedalUpPinMode; + /** + * Ratio between the wheels and your transmission output. + * units: ratio + * offset 728 + */ + scaled_channel finalGearRatio; + /** + * offset 730 + */ + brain_input_pin_e tcuInputSpeedSensorPin; + /** + * offset 732 + */ + uint8_t tcuInputSpeedSensorTeeth; + /** + * need 4 byte alignment + * units: units + * offset 733 + */ + uint8_t alignmentFill_at_733[1]; + /** + * Each rusEFI piece can provide synthetic trigger signal for external ECU. Sometimes these wires are routed back into trigger inputs of the same rusEFI board. + * See also directSelfStimulation which is different. + * offset 734 + */ + Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; + /** + * units: g/s + * offset 738 + */ + scaled_channel fordInjectorSmallPulseSlope; + /** + * offset 740 + */ + pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; + /** + * offset 742 + */ + adc_channel_e maf2AdcChannel; /** * need 4 byte alignment * units: units * offset 743 */ uint8_t alignmentFill_at_743[1]; - /** - * offset 744 - */ - output_pin_e tachOutputPin; - /** - * offset 746 - */ - pin_output_mode_e tachOutputPinMode; - /** - * need 4 byte alignment - * units: units - * offset 747 - */ - uint8_t alignmentFill_at_747[1]; - /** - * offset 748 - */ - output_pin_e mainRelayPin; - /** - * offset 750 - */ - Gpio sdCardCsPin; - /** - * set_can_tx_pin X - * offset 752 - */ - Gpio canTxPin; - /** - * set_can_rx_pin X - * offset 754 - */ - Gpio canRxPin; - /** - * offset 756 - */ - pin_input_mode_e throttlePedalUpPinMode; - /** - * Additional idle % while A/C is active - * units: % - * offset 757 - */ - uint8_t acIdleExtraOffset; - /** - * Ratio between the wheels and your transmission output. - * units: ratio - * offset 758 - */ - scaled_channel finalGearRatio; - /** - * offset 760 - */ - brain_input_pin_e tcuInputSpeedSensorPin; - /** - * offset 762 - */ - uint8_t tcuInputSpeedSensorTeeth; - /** - * need 4 byte alignment - * units: units - * offset 763 - */ - uint8_t alignmentFill_at_763[1]; - /** - * Voltage when the wastegate is closed. - * You probably don't have one of these! - * units: mv - * offset 764 - */ - uint16_t wastegatePositionMin; - /** - * Voltage when the wastegate is fully open. - * You probably don't have one of these! - * 1 volt = 1000 units - * units: mv - * offset 766 - */ - uint16_t wastegatePositionMax; - /** - * Voltage when the idle valve is closed. - * You probably don't have one of these! - * units: mv - * offset 768 - */ - uint16_t idlePositionMin; - /** - * Voltage when the idle valve is open. - * You probably don't have one of these! - * 1 volt = 1000 units - * units: mv - * offset 770 - */ - uint16_t idlePositionMax; - /** - * Secondary TTL channel baud rate - * units: BPs - * offset 772 - */ - uint32_t tunerStudioSerialSpeed; - /** - * Just for reference really, not taken into account by any logic at this point - * units: CR - * offset 776 - */ - float compressionRatio; - /** - * Each rusEFI piece can provide synthetic trigger signal for external ECU. Sometimes these wires are routed back into trigger inputs of the same rusEFI board. - * See also directSelfStimulation which is different. - * offset 780 - */ - Gpio triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT]; - /** - * units: g/s - * offset 784 - */ - scaled_channel fordInjectorSmallPulseSlope; - /** - * offset 786 - */ - pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT]; - /** - * offset 788 - */ - adc_channel_e maf2AdcChannel; - /** - * need 4 byte alignment - * units: units - * offset 789 - */ - uint8_t alignmentFill_at_789[1]; /** * On-off O2 sensor heater control. 'ON' if engine is running, 'OFF' if stopped or cranking. - * offset 790 + * offset 744 */ output_pin_e o2heaterPin; /** - * offset 792 + * offset 746 */ pin_output_mode_e o2heaterPinModeTodO; /** * units: RPM - * offset 793 + * offset 747 */ scaled_channel lambdaProtectionMinRpm; /** * units: % - * offset 794 + * offset 748 */ scaled_channel lambdaProtectionMinLoad; /** * need 4 byte alignment * units: units - * offset 795 + * offset 749 */ - uint8_t alignmentFill_at_795[1]; + uint8_t alignmentFill_at_749[3]; /** - offset 796 bit 0 */ + offset 752 bit 0 */ bool is_enabled_spi_1 : 1 {}; /** - offset 796 bit 1 */ + offset 752 bit 1 */ bool is_enabled_spi_2 : 1 {}; /** - offset 796 bit 2 */ + offset 752 bit 2 */ bool is_enabled_spi_3 : 1 {}; /** * enable sd/disable sd - offset 796 bit 3 */ + offset 752 bit 3 */ bool isSdCardEnabled : 1 {}; /** * Use 11 bit (standard) or 29 bit (extended) IDs for rusEFI verbose CAN format. - offset 796 bit 4 */ + offset 752 bit 4 */ bool rusefiVerbose29b : 1 {}; /** - offset 796 bit 5 */ + offset 752 bit 5 */ bool rethrowHardFault : 1 {}; /** - offset 796 bit 6 */ + offset 752 bit 6 */ bool isHip9011Enabled : 1 {}; /** - offset 796 bit 7 */ + offset 752 bit 7 */ bool requireFootOnBrakeToCrank : 1 {}; /** - offset 796 bit 8 */ + offset 752 bit 8 */ bool verboseQuad : 1 {}; /** * This setting should only be used if you have a stepper motor idle valve and a stepper motor driver installed. - offset 796 bit 9 */ + offset 752 bit 9 */ bool useStepperIdle : 1 {}; /** - offset 796 bit 10 */ + offset 752 bit 10 */ bool enabledStep1Limiter : 1 {}; /** - offset 796 bit 11 */ + offset 752 bit 11 */ bool useTpicAdvancedMode : 1 {}; /** - offset 796 bit 12 */ + offset 752 bit 12 */ bool lambdaProtectionEnable : 1 {}; /** - offset 796 bit 13 */ + offset 752 bit 13 */ bool verboseTLE8888 : 1 {}; /** * CAN broadcast using custom rusEFI protocol * enable can_broadcast/disable can_broadcast - offset 796 bit 14 */ + offset 752 bit 14 */ bool enableVerboseCanTx : 1 {}; /** - offset 796 bit 15 */ + offset 752 bit 15 */ bool etb1configured : 1 {}; /** - offset 796 bit 16 */ + offset 752 bit 16 */ bool etb2configured : 1 {}; /** * Useful for individual intakes - offset 796 bit 17 */ + offset 752 bit 17 */ bool measureMapOnlyInOneCylinder : 1 {}; /** - offset 796 bit 18 */ + offset 752 bit 18 */ bool stepperForceParkingEveryRestart : 1 {}; /** * If enabled, try to fire the engine before a full engine cycle has been completed using RPM estimated from the last 90 degrees of engine rotation. As soon as the trigger syncs plus 90 degrees rotation, fuel and ignition events will occur. If disabled, worst case may require up to 4 full crank rotations before any events are scheduled. - offset 796 bit 19 */ + offset 752 bit 19 */ bool isFasterEngineSpinUpEnabled : 1 {}; /** * This setting disables fuel injection while the engine is in overrun, this is useful as a fuel saving measure and to prevent back firing. - offset 796 bit 20 */ + offset 752 bit 20 */ bool coastingFuelCutEnabled : 1 {}; /** * Override the IAC position during overrun conditions to help reduce engine breaking, this can be helpful for large engines in light weight cars or engines that have trouble returning to idle. - offset 796 bit 21 */ + offset 752 bit 21 */ bool useIacTableForCoasting : 1 {}; /** - offset 796 bit 22 */ + offset 752 bit 22 */ bool useNoiselessTriggerDecoder : 1 {}; /** - offset 796 bit 23 */ + offset 752 bit 23 */ bool useIdleTimingPidControl : 1 {}; /** * Allows disabling the ETB when the engine is stopped. You may not like the power draw or PWM noise from the motor, so this lets you turn it off until it's necessary. - offset 796 bit 24 */ + offset 752 bit 24 */ bool disableEtbWhenEngineStopped : 1 {}; /** - offset 796 bit 25 */ + offset 752 bit 25 */ bool is_enabled_spi_4 : 1 {}; /** * Disable the electronic throttle motor and DC idle motor for testing. * This mode is for testing ETB/DC idle position sensors, etc without actually driving the throttle. - offset 796 bit 26 */ + offset 752 bit 26 */ bool pauseEtbControl : 1 {}; /** - offset 796 bit 27 */ + offset 752 bit 27 */ bool alignEngineSnifferAtTDC : 1 {}; /** - offset 796 bit 28 */ + offset 752 bit 28 */ bool verboseKLine : 1 {}; /** - offset 796 bit 29 */ + offset 752 bit 29 */ bool idleIncrementalPidCic : 1 {}; /** * AEM X-Series or rusEFI Wideband - offset 796 bit 30 */ + offset 752 bit 30 */ bool enableAemXSeries : 1 {}; /** - offset 796 bit 31 */ - bool unusedBit_230_31 : 1 {}; + offset 752 bit 31 */ + bool unusedBit_225_31 : 1 {}; /** - * offset 800 + * offset 756 */ brain_input_pin_e logicAnalyzerPins[LOGIC_ANALYZER_CHANNEL_COUNT]; /** - * offset 808 + * offset 764 */ pin_output_mode_e mainRelayPinMode; /** * need 4 byte alignment * units: units - * offset 809 + * offset 765 */ - uint8_t alignmentFill_at_809[1]; + uint8_t alignmentFill_at_765[1]; /** - * offset 810 + * offset 766 */ Gpio hip9011CsPin; /** - * offset 812 + * offset 768 */ Gpio hip9011IntHoldPin; /** - * offset 814 + * offset 770 */ pin_output_mode_e hip9011IntHoldPinMode; /** * need 4 byte alignment * units: units - * offset 815 + * offset 771 */ - uint8_t alignmentFill_at_815[1]; + uint8_t alignmentFill_at_771[1]; /** - * offset 816 + * offset 772 */ uint32_t verboseCanBaseAddress; /** * Boost Voltage * units: v - * offset 820 + * offset 776 */ uint8_t mc33_hvolt; /** * Minimum MAP before closed loop boost is enabled. Use to prevent misbehavior upon entering boost. * units: kPa - * offset 821 + * offset 777 */ uint8_t minimumBoostClosedLoopMap; /** * Optional Radiator Fan used with A/C - * offset 822 + * offset 778 */ output_pin_e acFanPin; /** - * offset 824 + * offset 780 */ pin_output_mode_e acFanPinMode; /** - * offset 825 + * offset 781 */ spi_device_e l9779spiDevice; /** - * units: volts - * offset 826 - */ - scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; - /** - * offset 834 + * offset 782 */ imu_type_e imuType; - /** - * units: multiplier - * offset 835 - */ - scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 843 + * offset 783 */ - uint8_t alignmentFill_at_843[1]; + uint8_t alignmentFill_at_783[1]; /** * units: kg - * offset 844 + * offset 784 */ uint16_t vehicleWeight; /** * How far above idle speed do we consider idling, i.e. coasting detection threshold. * For example, if target = 800, this param = 200, then anything below 1000 RPM is considered idle. * units: RPM - * offset 846 + * offset 786 */ int16_t idlePidRpmUpperLimit; /** * Apply nonlinearity correction below a pulse of this duration. Pulses longer than this duration will receive no adjustment. * units: ms - * offset 848 + * offset 788 */ scaled_channel applyNonlinearBelowPulse; /** - * offset 850 + * offset 790 */ Gpio lps25BaroSensorScl; /** - * offset 852 + * offset 792 */ Gpio lps25BaroSensorSda; /** - * offset 854 + * offset 794 */ brain_input_pin_e vehicleSpeedSensorInputPin; /** * Some vehicles have a switch to indicate that clutch pedal is all the way up - * offset 856 + * offset 796 */ switch_input_pin_e clutchUpPin; /** - * offset 858 + * offset 798 */ InjectorNonlinearMode injectorNonlinearMode; /** - * offset 859 + * offset 799 */ pin_input_mode_e clutchUpPinMode; /** - * offset 860 + * offset 800 */ Gpio max31855_cs[EGT_CHANNEL_COUNT]; /** * Continental/GM flex fuel sensor, 50-150hz type - * offset 876 + * offset 816 */ brain_input_pin_e flexSensorPin; /** - * offset 878 + * offset 818 */ Gpio test557pin; /** - * offset 880 + * offset 820 */ pin_output_mode_e stepperDirectionPinMode; /** - * offset 881 + * offset 821 */ spi_device_e mc33972spiDevice; /** * Stoichiometric ratio for your secondary fuel. This value is used when the Flex Fuel sensor indicates E100, typically 9.0 * units: :1 - * offset 882 + * offset 822 */ scaled_channel stoichRatioSecondary; /** * Maximum allowed ETB position. Some throttles go past fully open, so this allows you to limit it to fully open. * units: % - * offset 883 + * offset 823 */ uint8_t etbMaximumPosition; /** * Rate the ECU will log to the SD card, in hz (log lines per second). * units: hz - * offset 884 + * offset 824 */ uint16_t sdCardLogFrequency; /** - * offset 886 + * offset 826 */ adc_channel_e idlePositionChannel; /** * need 4 byte alignment * units: units - * offset 887 + * offset 827 */ - uint8_t alignmentFill_at_887[1]; + uint8_t alignmentFill_at_827[1]; /** - * offset 888 + * offset 828 */ Gpio debugMapAveraging; /** - * offset 890 + * offset 830 */ output_pin_e starterRelayDisablePin; /** * On some vehicles we can disable starter once engine is already running - * offset 892 + * offset 832 */ pin_output_mode_e starterRelayDisablePinMode; /** * need 4 byte alignment * units: units - * offset 893 + * offset 833 */ - uint8_t alignmentFill_at_893[1]; + uint8_t alignmentFill_at_833[1]; /** * Some Subaru and some Mazda use double-solenoid idle air valve - * offset 894 + * offset 834 */ output_pin_e secondSolenoidPin; /** * See also starterControlPin - * offset 896 + * offset 836 */ switch_input_pin_e startStopButtonPin; /** - * need 4 byte alignment - * units: units - * offset 898 + * units: RPM + * offset 838 */ - uint8_t alignmentFill_at_898[2]; + scaled_channel lambdaProtectionRestoreRpm; + /** + * offset 839 + */ + pin_output_mode_e acRelayPinMode; /** * This many MAP samples are used to estimate the current MAP. This many samples are considered, and the minimum taken. Recommended value is 1 for single-throttle engines, and your number of cylinders for individual throttle bodies. * units: count - * offset 900 + * offset 840 */ int mapMinBufferLength; /** * Below this throttle position, the engine is considered idling. If you have an electronic throttle, this checks accelerator pedal position instead of throttle position, and should be set to 1-2%. * units: % - * offset 904 + * offset 844 */ int16_t idlePidDeactivationTpsThreshold; /** * units: % - * offset 906 + * offset 846 */ int16_t stepperParkingExtraSteps; /** * units: ADC - * offset 908 + * offset 848 */ uint16_t tps1SecondaryMin; /** * units: ADC - * offset 910 + * offset 850 */ uint16_t tps1SecondaryMax; /** * units: rpm - * offset 912 + * offset 852 */ int16_t antiLagRpmTreshold; /** * Maximum time to crank starter when start/stop button is pressed * units: Seconds - * offset 914 + * offset 854 */ uint16_t startCrankingDuration; /** * This pin is used for debugging - snap a logic analyzer on it and see if it's ever high - * offset 916 + * offset 856 */ Gpio triggerErrorPin; /** - * offset 918 + * offset 858 */ pin_output_mode_e triggerErrorPinMode; + /** + * need 4 byte alignment + * units: units + * offset 859 + */ + uint8_t alignmentFill_at_859[1]; + /** + * offset 860 + */ + output_pin_e acRelayPin; + /** + * units: % + * offset 862 + */ + uint8_t lambdaProtectionMinTps; + /** + * Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed + * units: s + * offset 863 + */ + scaled_channel lambdaProtectionTimeout; + /** + * offset 864 + */ + script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; + /** + * offset 896 + */ + Gpio spi1mosiPin; + /** + * offset 898 + */ + Gpio spi1misoPin; + /** + * offset 900 + */ + Gpio spi1sckPin; + /** + * offset 902 + */ + Gpio spi2mosiPin; + /** + * offset 904 + */ + Gpio spi2misoPin; + /** + * offset 906 + */ + Gpio spi2sckPin; + /** + * offset 908 + */ + Gpio spi3mosiPin; + /** + * offset 910 + */ + Gpio spi3misoPin; + /** + * offset 912 + */ + Gpio spi3sckPin; + /** + * Saab Combustion Detection Module knock signal input pin + * also known as Saab Ion Sensing Module + * offset 914 + */ + Gpio cdmInputPin; + /** + * offset 916 + */ + uart_device_e consoleUartDevice; + /** + * rusEFI console Sensor Sniffer mode + * offset 917 + */ + sensor_chart_e sensorChartMode; + /** + * offset 918 + */ + maf_sensor_type_e mafSensorType; /** * need 4 byte alignment * units: units @@ -1921,770 +1963,676 @@ struct engine_configuration_s { */ uint8_t alignmentFill_at_919[1]; /** - * offset 920 - */ - output_pin_e acRelayPin; - /** - * units: % - * offset 922 - */ - uint8_t lambdaProtectionMinTps; - /** - * Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed - * units: s - * offset 923 - */ - scaled_channel lambdaProtectionTimeout; - /** - * units: RPM - * offset 924 - */ - scaled_channel lambdaProtectionRestoreRpm; - /** - * offset 925 - */ - pin_output_mode_e acRelayPinMode; - /** - * need 4 byte alignment - * units: units - * offset 926 - */ - uint8_t alignmentFill_at_926[2]; - /** - * offset 928 - */ - script_setting_t scriptSetting[SCRIPT_SETTING_COUNT]; - /** - * offset 960 - */ - Gpio spi1mosiPin; - /** - * offset 962 - */ - Gpio spi1misoPin; - /** - * offset 964 - */ - Gpio spi1sckPin; - /** - * offset 966 - */ - Gpio spi2mosiPin; - /** - * offset 968 - */ - Gpio spi2misoPin; - /** - * offset 970 - */ - Gpio spi2sckPin; - /** - * offset 972 - */ - Gpio spi3mosiPin; - /** - * offset 974 - */ - Gpio spi3misoPin; - /** - * offset 976 - */ - Gpio spi3sckPin; - /** - * Saab Combustion Detection Module knock signal input pin - * also known as Saab Ion Sensing Module - * offset 978 - */ - Gpio cdmInputPin; - /** - * offset 980 - */ - uart_device_e consoleUartDevice; - /** - * rusEFI console Sensor Sniffer mode - * offset 981 - */ - sensor_chart_e sensorChartMode; - /** - * offset 982 - */ - maf_sensor_type_e mafSensorType; - /** - * need 4 byte alignment - * units: units - * offset 983 - */ - uint8_t alignmentFill_at_983[1]; - /** - offset 984 bit 0 */ + offset 920 bit 0 */ bool clutchUpPinInverted : 1 {}; /** - offset 984 bit 1 */ + offset 920 bit 1 */ bool clutchDownPinInverted : 1 {}; /** * If enabled we use two H-bridges to drive stepper idle air valve - offset 984 bit 2 */ + offset 920 bit 2 */ bool useHbridgesToDriveIdleStepper : 1 {}; /** - offset 984 bit 3 */ + offset 920 bit 3 */ bool multisparkEnable : 1 {}; /** - offset 984 bit 4 */ + offset 920 bit 4 */ bool enableLaunchRetard : 1 {}; /** - offset 984 bit 5 */ + offset 920 bit 5 */ bool canInputBCM : 1 {}; /** * This property is useful if using rusEFI as TCM or BCM only - offset 984 bit 6 */ + offset 920 bit 6 */ bool consumeObdSensors : 1 {}; /** * Read VSS from OEM CAN bus according to selected CAN vehicle configuration. - offset 984 bit 7 */ + offset 920 bit 7 */ bool enableCanVss : 1 {}; /** - offset 984 bit 8 */ + offset 920 bit 8 */ bool enableInnovateLC2 : 1 {}; /** - offset 984 bit 9 */ + offset 920 bit 9 */ bool showHumanReadableWarning : 1 {}; /** * If enabled, adjust at a constant rate instead of a rate proportional to the current lambda error. This mode may be easier to tune, and more tolerant of sensor noise. - offset 984 bit 10 */ + offset 920 bit 10 */ bool stftIgnoreErrorMagnitude : 1 {}; /** - offset 984 bit 11 */ + offset 920 bit 11 */ bool vvtBooleanForVerySpecialCases : 1 {}; /** - offset 984 bit 12 */ + offset 920 bit 12 */ bool enableSoftwareKnock : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable vvt_details - offset 984 bit 13 */ + offset 920 bit 13 */ bool verboseVVTDecoding : 1 {}; /** * get invertCamVVTSignal - offset 984 bit 14 */ + offset 920 bit 14 */ bool invertCamVVTSignal : 1 {}; /** * In Alpha-N mode, compensate for air temperature. - offset 984 bit 15 */ + offset 920 bit 15 */ bool alphaNUseIat : 1 {}; /** - offset 984 bit 16 */ + offset 920 bit 16 */ bool knockBankCyl1 : 1 {}; /** - offset 984 bit 17 */ + offset 920 bit 17 */ bool knockBankCyl2 : 1 {}; /** - offset 984 bit 18 */ + offset 920 bit 18 */ bool knockBankCyl3 : 1 {}; /** - offset 984 bit 19 */ + offset 920 bit 19 */ bool knockBankCyl4 : 1 {}; /** - offset 984 bit 20 */ + offset 920 bit 20 */ bool knockBankCyl5 : 1 {}; /** - offset 984 bit 21 */ + offset 920 bit 21 */ bool knockBankCyl6 : 1 {}; /** - offset 984 bit 22 */ + offset 920 bit 22 */ bool knockBankCyl7 : 1 {}; /** - offset 984 bit 23 */ + offset 920 bit 23 */ bool knockBankCyl8 : 1 {}; /** - offset 984 bit 24 */ + offset 920 bit 24 */ bool knockBankCyl9 : 1 {}; /** - offset 984 bit 25 */ + offset 920 bit 25 */ bool knockBankCyl10 : 1 {}; /** - offset 984 bit 26 */ + offset 920 bit 26 */ bool knockBankCyl11 : 1 {}; /** - offset 984 bit 27 */ + offset 920 bit 27 */ bool knockBankCyl12 : 1 {}; /** - offset 984 bit 28 */ + offset 920 bit 28 */ bool tcuEnabled : 1 {}; /** - offset 984 bit 29 */ + offset 920 bit 29 */ bool canBroadcastUseChannelTwo : 1 {}; /** * If enabled we use four Push-Pull outputs to directly drive stepper idle air valve coils - offset 984 bit 30 */ + offset 920 bit 30 */ bool useRawOutputToDriveIdleStepper : 1 {}; /** * Print incoming and outgoing second bus CAN messages in rusEFI console - offset 984 bit 31 */ + offset 920 bit 31 */ bool verboseCan2 : 1 {}; /** - * offset 988 + * offset 924 */ dc_io etbIo[ETB_COUNT]; /** * Wastegate control Solenoid - * offset 1004 + * offset 940 */ output_pin_e boostControlPin; /** - * offset 1006 + * offset 942 */ pin_output_mode_e boostControlPinMode; /** * need 4 byte alignment * units: units - * offset 1007 + * offset 943 */ - uint8_t alignmentFill_at_1007[1]; + uint8_t alignmentFill_at_943[1]; /** - * offset 1008 + * offset 944 */ switch_input_pin_e ALSActivatePin; /** - * offset 1010 + * offset 946 */ switch_input_pin_e launchActivatePin; /** - * offset 1012 + * offset 948 */ pid_s boostPid; /** - * offset 1032 + * offset 968 */ boostType_e boostType; /** - * offset 1033 + * offset 969 */ pin_input_mode_e ignitionKeyDigitalPinMode; /** - * offset 1034 + * offset 970 */ Gpio ignitionKeyDigitalPin; /** * units: Hz - * offset 1036 + * offset 972 */ int boostPwmFrequency; /** - * offset 1040 + * offset 976 */ launchActivationMode_e launchActivationMode; /** - * offset 1041 + * offset 977 */ antiLagActivationMode_e antiLagActivationMode; /** - * need 4 byte alignment - * units: units - * offset 1042 + * How long to look back for TPS-based acceleration enrichment. Increasing this time will trigger enrichment for longer when a throttle position change occurs. + * units: sec + * offset 978 */ - uint8_t alignmentFill_at_1042[2]; + scaled_channel tpsAccelLookback; + /** + * Pause closed loop fueling after deceleration fuel cut occurs. Set this to a little longer than however long is required for normal fueling behavior to resume after fuel cut. + * units: sec + * offset 979 + */ + scaled_channel noFuelTrimAfterDfcoTime; /** * Launch disabled above this speed if setting is above zero * units: Kph - * offset 1044 + * offset 980 */ int launchSpeedThreshold; /** * Starting Launch RPM window to activate (subtracts from Launch RPM) * units: RPM - * offset 1048 + * offset 984 */ int launchRpmWindow; /** * Spark Skip Transition Target * units: % - * offset 1052 + * offset 988 */ int launchSparkSkipPercent; /** * Duty Cycle for the Boost Solenoid * units: % - * offset 1056 + * offset 992 */ int launchBoostDuty; /** - * offset 1060 + * offset 996 */ float magicNumberAvailableForDevTricks; /** - * offset 1064 + * offset 1000 */ float turbochargerFilter; /** - * offset 1068 + * offset 1004 */ int launchTpsThreshold; /** - * offset 1072 + * offset 1008 */ float launchActivateDelay; /** - * offset 1076 + * offset 1012 */ stft_s stft; /** - * offset 1100 + * offset 1036 */ dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online - * offset 1116 + * offset 1052 */ vehicle_info_t engineMake; /** * For example, LS1 or NB2 * REQUIRED for rusEFI Online - * offset 1148 + * offset 1084 */ vehicle_info_t engineCode; /** * For example, Hunchback or Orange Miata * Vehicle name has to be unique between your vehicles. * REQUIRED for rusEFI Online - * offset 1180 + * offset 1116 */ vehicle_info_t vehicleName; /** - * offset 1212 + * offset 1148 */ output_pin_e tcu_solenoid[TCU_SOLENOID_COUNT]; /** - * offset 1224 + * offset 1160 */ dc_function_e etbFunctions[ETB_COUNT]; /** - * offset 1226 + * offset 1162 */ spi_device_e drv8860spiDevice; /** * need 4 byte alignment * units: units - * offset 1227 + * offset 1163 */ - uint8_t alignmentFill_at_1227[1]; + uint8_t alignmentFill_at_1163[1]; /** - * offset 1228 + * offset 1164 */ Gpio drv8860_cs; /** - * offset 1230 + * offset 1166 */ pin_output_mode_e drv8860_csPinMode; /** * need 4 byte alignment * units: units - * offset 1231 + * offset 1167 */ - uint8_t alignmentFill_at_1231[1]; + uint8_t alignmentFill_at_1167[1]; /** - * offset 1232 + * offset 1168 */ Gpio drv8860_miso; /** - * units: volt - * offset 1234 - */ - scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; - /** - * offset 1250 + * offset 1170 */ output_pin_e luaOutputPins[LUA_PWM_COUNT]; /** * need 4 byte alignment * units: units - * offset 1266 + * offset 1186 */ - uint8_t alignmentFill_at_1266[2]; + uint8_t alignmentFill_at_1186[2]; /** * Angle between cam sensor and VVT zero position * set vvt_offset X * units: value - * offset 1268 + * offset 1188 */ float vvtOffsets[CAM_INPUTS_COUNT]; /** - * offset 1284 + * offset 1204 */ vr_threshold_s vrThreshold[VR_THRESHOLD_COUNT]; /** - * offset 1316 + * offset 1236 */ gppwm_note_t gpPwmNote[GPPWM_CHANNELS]; /** * units: ADC - * offset 1380 + * offset 1300 */ uint16_t tps2SecondaryMin; /** * units: ADC - * offset 1382 + * offset 1302 */ uint16_t tps2SecondaryMax; /** * Select which bus the wideband controller is attached to. - offset 1384 bit 0 */ + offset 1304 bit 0 */ bool widebandOnSecondBus : 1 {}; /** * Enables lambda sensor closed loop feedback for fuelling. - offset 1384 bit 1 */ + offset 1304 bit 1 */ bool fuelClosedLoopCorrectionEnabled : 1 {}; /** * On even fire engines with even number of cylinders we go wasted spark during cranking. Use this setting to disable wasted spark cranking on odd fire engines. - offset 1384 bit 2 */ + offset 1304 bit 2 */ bool oddFireEngine : 1 {}; /** - offset 1384 bit 3 */ + offset 1304 bit 3 */ bool boardUseTachPullUp : 1 {}; /** - offset 1384 bit 4 */ + offset 1304 bit 4 */ bool boardUseTempPullUp : 1 {}; /** - offset 1384 bit 5 */ + offset 1304 bit 5 */ bool yesUnderstandLocking : 1 {}; /** * Sometimes we have a performance issue while printing error - offset 1384 bit 6 */ + offset 1304 bit 6 */ bool silentTriggerError : 1 {}; /** - offset 1384 bit 7 */ + offset 1304 bit 7 */ bool useLinearCltSensor : 1 {}; /** * enable can_read/disable can_read - offset 1384 bit 8 */ + offset 1304 bit 8 */ bool canReadEnabled : 1 {}; /** * enable can_write/disable can_write. See also can1ListenMode - offset 1384 bit 9 */ + offset 1304 bit 9 */ bool canWriteEnabled : 1 {}; /** - offset 1384 bit 10 */ + offset 1304 bit 10 */ bool useLinearIatSensor : 1 {}; /** - offset 1384 bit 11 */ + offset 1304 bit 11 */ bool boardUse2stepPullDown : 1 {}; /** * Treat milliseconds value as duty cycle value, i.e. 0.5ms would become 50% - offset 1384 bit 12 */ + offset 1304 bit 12 */ bool tachPulseDurationAsDutyCycle : 1 {}; /** * This enables smart alternator control and activates the extra alternator settings. - offset 1384 bit 13 */ + offset 1304 bit 13 */ bool isAlternatorControlEnabled : 1 {}; /** * https://wiki.rusefi.com/Trigger-Configuration-Guide * This setting flips the signal from the primary engine speed sensor. - offset 1384 bit 14 */ + offset 1304 bit 14 */ bool invertPrimaryTriggerSignal : 1 {}; /** * https://wiki.rusefi.com/Trigger-Configuration-Guide * This setting flips the signal from the secondary engine speed sensor. - offset 1384 bit 15 */ + offset 1304 bit 15 */ bool invertSecondaryTriggerSignal : 1 {}; /** - offset 1384 bit 16 */ + offset 1304 bit 16 */ bool cutFuelOnHardLimit : 1 {}; /** * Be careful enabling this: some engines are known to self-disassemble their valvetrain with a spark cut. Fuel cut is much safer. - offset 1384 bit 17 */ + offset 1304 bit 17 */ bool cutSparkOnHardLimit : 1 {}; /** - offset 1384 bit 18 */ + offset 1304 bit 18 */ bool launchFuelCutEnable : 1 {}; /** * This is the Cut Mode normally used - offset 1384 bit 19 */ + offset 1304 bit 19 */ bool launchSparkCutEnable : 1 {}; /** - offset 1384 bit 20 */ + offset 1304 bit 20 */ bool boardUseCrankPullUp : 1 {}; /** - offset 1384 bit 21 */ + offset 1304 bit 21 */ bool boardUseCamPullDown : 1 {}; /** - offset 1384 bit 22 */ + offset 1304 bit 22 */ bool boardUseCamVrPullUp : 1 {}; /** - offset 1384 bit 23 */ + offset 1304 bit 23 */ bool boardUseD2PullDown : 1 {}; /** - offset 1384 bit 24 */ + offset 1304 bit 24 */ bool boardUseD3PullDown : 1 {}; /** - offset 1384 bit 25 */ + offset 1304 bit 25 */ bool boardUseD4PullDown : 1 {}; /** - offset 1384 bit 26 */ + offset 1304 bit 26 */ bool boardUseD5PullDown : 1 {}; /** * Are you a developer troubleshooting TS over CAN ISO/TP? - offset 1384 bit 27 */ + offset 1304 bit 27 */ bool verboseIsoTp : 1 {}; /** - offset 1384 bit 28 */ + offset 1304 bit 28 */ bool engineSnifferFocusOnInputs : 1 {}; /** - offset 1384 bit 29 */ + offset 1304 bit 29 */ bool launchActivateInverted : 1 {}; /** - offset 1384 bit 30 */ + offset 1304 bit 30 */ bool twoStroke : 1 {}; /** * Where is your primary skipped wheel located? - offset 1384 bit 31 */ + offset 1304 bit 31 */ bool skippedWheelOnCam : 1 {}; /** - * offset 1388 + * offset 1308 */ adc_channel_e hipOutputChannel; /** * need 4 byte alignment * units: units - * offset 1389 + * offset 1309 */ - uint8_t alignmentFill_at_1389[1]; + uint8_t alignmentFill_at_1309[1]; /** * A/C button input - * offset 1390 + * offset 1310 */ switch_input_pin_e acSwitch; /** - * offset 1392 + * offset 1312 */ adc_channel_e vRefAdcChannel; /** * Expected neutral position * units: % - * offset 1393 + * offset 1313 */ uint8_t etbNeutralPosition; /** * See also idleRpmPid - * offset 1394 + * offset 1314 */ idle_mode_e idleMode; /** * need 4 byte alignment * units: units - * offset 1395 + * offset 1315 */ - uint8_t alignmentFill_at_1395[1]; + uint8_t alignmentFill_at_1315[1]; /** - offset 1396 bit 0 */ + offset 1316 bit 0 */ bool isInjectionEnabled : 1 {}; /** - offset 1396 bit 1 */ + offset 1316 bit 1 */ bool isIgnitionEnabled : 1 {}; /** * When enabled if TPS is held above 95% no fuel is injected while cranking to clear excess fuel from the cylinders. - offset 1396 bit 2 */ + offset 1316 bit 2 */ bool isCylinderCleanupEnabled : 1 {}; /** * Should we use tables to vary tau/beta based on CLT/MAP, or just with fixed values? - offset 1396 bit 3 */ + offset 1316 bit 3 */ bool complexWallModel : 1 {}; /** * RPM is measured based on last 720 degrees while instant RPM is measured based on the last 90 degrees of crank revolution - offset 1396 bit 4 */ + offset 1316 bit 4 */ bool alwaysInstantRpm : 1 {}; /** - offset 1396 bit 5 */ + offset 1316 bit 5 */ bool isMapAveragingEnabled : 1 {}; /** * If enabled, use separate temperature multiplier table for cranking idle position. * If disabled, use normal running multiplier table applied to the cranking base position. - offset 1396 bit 6 */ + offset 1316 bit 6 */ bool overrideCrankingIacSetting : 1 {}; /** * This activates a separate ignition timing table for idle conditions, this can help idle stability by using ignition retard and advance either side of the desired idle speed. Extra retard at low idle speeds will prevent stalling and extra advance at high idle speeds can help reduce engine power and slow the idle speed. - offset 1396 bit 7 */ + offset 1316 bit 7 */ bool useSeparateAdvanceForIdle : 1 {}; /** - offset 1396 bit 8 */ + offset 1316 bit 8 */ bool isWaveAnalyzerEnabled : 1 {}; /** * This activates a separate fuel table for Idle, this allows fine tuning of the idle fuelling. - offset 1396 bit 9 */ + offset 1316 bit 9 */ bool useSeparateVeForIdle : 1 {}; /** * Verbose info in console below engineSnifferRpmThreshold * enable trigger_details - offset 1396 bit 10 */ + offset 1316 bit 10 */ bool verboseTriggerSynchDetails : 1 {}; /** * Usually if we have no trigger events that means engine is stopped * Unless we are troubleshooting and spinning the engine by hand - this case a longer * delay is needed - offset 1396 bit 11 */ + offset 1316 bit 11 */ bool isManualSpinningMode : 1 {}; /** - offset 1396 bit 12 */ + offset 1316 bit 12 */ bool cutFuelInAcr : 1 {}; /** - offset 1396 bit 13 */ + offset 1316 bit 13 */ bool hondaK : 1 {}; /** * This is needed if your coils are individually wired (COP) and you wish to use batch ignition (Wasted Spark). - offset 1396 bit 14 */ + offset 1316 bit 14 */ bool twoWireBatchIgnition : 1 {}; /** - offset 1396 bit 15 */ + offset 1316 bit 15 */ bool useFixedBaroCorrFromMap : 1 {}; /** * In Constant mode, timing is automatically tapered to running as RPM increases. * In Table mode, the "Cranking ignition advance" table is used directly. - offset 1396 bit 16 */ + offset 1316 bit 16 */ bool useSeparateAdvanceForCranking : 1 {}; /** * This enables the various ignition corrections during cranking (IAT, CLT, FSIO and PID idle). * You probably don't need this. - offset 1396 bit 17 */ + offset 1316 bit 17 */ bool useAdvanceCorrectionsForCranking : 1 {}; /** * Enable a second cranking table to use for E100 flex fuel, interpolating between the two based on flex fuel sensor. - offset 1396 bit 18 */ + offset 1316 bit 18 */ bool flexCranking : 1 {}; /** * This flag allows to use a special 'PID Multiplier' table (0.0-1.0) to compensate for nonlinear nature of IAC-RPM controller - offset 1396 bit 19 */ + offset 1316 bit 19 */ bool useIacPidMultTable : 1 {}; /** - offset 1396 bit 20 */ + offset 1316 bit 20 */ bool isBoostControlEnabled : 1 {}; /** * Interpolates the Ignition Retard from 0 to 100% within the RPM Range - offset 1396 bit 21 */ + offset 1316 bit 21 */ bool launchSmoothRetard : 1 {}; /** * Some engines are OK running semi-random sequential while other engine require phase synchronization - offset 1396 bit 22 */ + offset 1316 bit 22 */ bool isPhaseSyncRequiredForIgnition : 1 {}; /** * If enabled, use a curve for RPM limit (based on coolant temperature) instead of a constant value. - offset 1396 bit 23 */ + offset 1316 bit 23 */ bool useCltBasedRpmLimit : 1 {}; /** * If enabled, don't wait for engine start to heat O2 sensors. WARNING: this will reduce the life of your sensor, as condensation in the exhaust from a cold start can crack the sensing element. - offset 1396 bit 24 */ + offset 1316 bit 24 */ bool forceO2Heating : 1 {}; /** * If increased VVT duty cycle increases the indicated VVT angle, set this to 'advance'. If it decreases, set this to 'retard'. Most intake cams use 'advance', and most exhaust cams use 'retard'. - offset 1396 bit 25 */ + offset 1316 bit 25 */ bool invertVvtControlIntake : 1 {}; /** * If increased VVT duty cycle increases the indicated VVT angle, set this to 'advance'. If it decreases, set this to 'retard'. Most intake cams use 'advance', and most exhaust cams use 'retard'. - offset 1396 bit 26 */ + offset 1316 bit 26 */ bool invertVvtControlExhaust : 1 {}; /** - offset 1396 bit 27 */ + offset 1316 bit 27 */ bool useBiQuadOnAuxSpeedSensors : 1 {}; /** * 'Trigger' mode will write a high speed log of trigger events (warning: uses lots of space!). 'Normal' mode will write a standard MLG of sensors, engine function, etc. similar to the one captured in TunerStudio. - offset 1396 bit 28 */ + offset 1316 bit 28 */ bool sdTriggerLog : 1 {}; /** - offset 1396 bit 29 */ + offset 1316 bit 29 */ bool ALSActivateInverted : 1 {}; /** - offset 1396 bit 30 */ + offset 1316 bit 30 */ bool stepper_dc_use_two_wires : 1 {}; /** - offset 1396 bit 31 */ + offset 1316 bit 31 */ bool watchOutForLinearTime : 1 {}; /** * units: count - * offset 1400 + * offset 1320 */ uint32_t engineChartSize; /** * units: mult - * offset 1404 + * offset 1324 */ float turboSpeedSensorMultiplier; /** - * offset 1408 + * offset 1328 */ Gpio camInputsDebug[CAM_INPUTS_COUNT]; /** * Idle target speed when A/C is enabled. Some cars need the extra speed to keep the AC efficient while idling. * units: RPM - * offset 1416 + * offset 1336 */ int16_t acIdleRpmTarget; /** * set warningPeriod X * units: seconds - * offset 1418 + * offset 1338 */ int16_t warningPeriod; /** * units: angle - * offset 1420 + * offset 1340 */ float knockDetectionWindowStart; /** * units: angle - * offset 1424 + * offset 1344 */ float knockDetectionWindowEnd; /** * units: ms - * offset 1428 + * offset 1348 */ float idleStepperReactionTime; /** * units: count - * offset 1432 + * offset 1352 */ int idleStepperTotalSteps; /** * TODO: finish this #413 * units: sec - * offset 1436 + * offset 1356 */ float noAccelAfterHardLimitPeriodSecs; /** * At what trigger index should some MAP-related math be executed? This is a performance trick to reduce load on synchronization trigger callback. * units: index - * offset 1440 + * offset 1360 */ int mapAveragingSchedulingAtIndex; /** * Duration in ms or duty cycle depending on selected mode - * offset 1444 + * offset 1364 */ float tachPulseDuractionMs; /** * Length of time the deposited wall fuel takes to dissipate after the start of acceleration. * units: Seconds - * offset 1448 + * offset 1368 */ float wwaeTau; /** - * offset 1452 + * offset 1372 */ pid_s alternatorControl; /** - * offset 1472 + * offset 1392 */ pid_s etb; /** - * offset 1492 + * offset 1412 */ Gpio triggerInputDebugPins[TRIGGER_INPUT_PIN_COUNT]; /** * RPM range above upper limit for extra air taper * units: RPM - * offset 1496 + * offset 1416 */ int16_t airTaperRpmRange; /** - * offset 1498 + * offset 1418 */ brain_input_pin_e turboSpeedSensorInputPin; /** @@ -2692,7 +2640,7 @@ struct engine_configuration_s { * See also tps2_1AdcChannel * set tps2_min X * units: ADC - * offset 1500 + * offset 1420 */ int16_t tps2Min; /** @@ -2700,1120 +2648,1043 @@ struct engine_configuration_s { * See also tps1_1AdcChannel * set tps2_max X * units: ADC - * offset 1502 + * offset 1422 */ int16_t tps2Max; /** * See also startStopButtonPin - * offset 1504 + * offset 1424 */ output_pin_e starterControlPin; /** - * offset 1506 + * offset 1426 */ pin_input_mode_e startStopButtonMode; /** * need 4 byte alignment * units: units - * offset 1507 + * offset 1427 */ - uint8_t alignmentFill_at_1507[1]; + uint8_t alignmentFill_at_1427[1]; /** - * offset 1508 + * offset 1428 */ Gpio mc33816_flag0; /** * units: Pulse - * offset 1510 + * offset 1430 */ uint8_t tachPulsePerRev; /** * need 4 byte alignment * units: units - * offset 1511 + * offset 1431 */ - uint8_t alignmentFill_at_1511[1]; + uint8_t alignmentFill_at_1431[1]; /** * kPa value which is too low to be true * units: kPa - * offset 1512 + * offset 1432 */ float mapErrorDetectionTooLow; /** * kPa value which is too high to be true * units: kPa - * offset 1516 + * offset 1436 */ float mapErrorDetectionTooHigh; /** * How long to wait for the spark to fire before recharging the coil for another spark. * units: ms - * offset 1520 + * offset 1440 */ scaled_channel multisparkSparkDuration; /** * This sets the dwell time for subsequent sparks. The main spark's dwell is set by the dwell table. * units: ms - * offset 1522 + * offset 1442 */ scaled_channel multisparkDwell; /** * See cltIdleRpmBins - * offset 1524 + * offset 1444 */ pid_s idleRpmPid; /** * 0 = No fuel settling on port walls 1 = All the fuel settling on port walls setting this to 0 disables the wall wetting enrichment. * units: Fraction - * offset 1544 + * offset 1464 */ float wwaeBeta; /** * See also EFI_CONSOLE_RX_BRAIN_PIN - * offset 1548 + * offset 1468 */ Gpio binarySerialTxPin; /** - * offset 1550 + * offset 1470 */ Gpio binarySerialRxPin; /** - * offset 1552 + * offset 1472 */ Gpio auxValves[AUX_DIGITAL_VALVE_COUNT]; /** - * offset 1556 + * offset 1476 */ switch_input_pin_e tcuUpshiftButtonPin; /** - * offset 1558 + * offset 1478 */ switch_input_pin_e tcuDownshiftButtonPin; /** * units: voltage - * offset 1560 + * offset 1480 */ float throttlePedalUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1564 + * offset 1484 */ float throttlePedalWOTVoltage; /** * on IGN voltage detection turn fuel pump on to build fuel pressure * units: seconds - * offset 1568 + * offset 1488 */ int16_t startUpFuelPumpDuration; /** * If the RPM closer to target than this value, disable closed loop idle correction to prevent oscillation * units: RPM - * offset 1570 + * offset 1490 */ int16_t idlePidRpmDeadZone; /** * This is the target battery voltage the alternator PID control will attempt to maintain * units: Volts - * offset 1572 + * offset 1492 */ float targetVBatt; /** * See Over/Undervoltage Shutdown/Retry bit in documentation - offset 1576 bit 0 */ + offset 1496 bit 0 */ bool mc33810DisableRecoveryMode : 1 {}; /** - offset 1576 bit 1 */ + offset 1496 bit 1 */ bool mc33810Gpgd0Mode : 1 {}; /** - offset 1576 bit 2 */ + offset 1496 bit 2 */ bool mc33810Gpgd1Mode : 1 {}; /** - offset 1576 bit 3 */ + offset 1496 bit 3 */ bool mc33810Gpgd2Mode : 1 {}; /** - offset 1576 bit 4 */ + offset 1496 bit 4 */ bool mc33810Gpgd3Mode : 1 {}; /** - offset 1576 bit 5 */ + offset 1496 bit 5 */ bool enableExtendedCanBroadcast : 1 {}; /** - offset 1576 bit 6 */ + offset 1496 bit 6 */ bool luaCanRxWorkaround : 1 {}; /** - offset 1576 bit 7 */ + offset 1496 bit 7 */ bool flexSensorInverted : 1 {}; /** - offset 1576 bit 8 */ + offset 1496 bit 8 */ bool useHardSkipInTraction : 1 {}; /** - offset 1576 bit 9 */ + offset 1496 bit 9 */ bool fancySmartS : 1 {}; /** - offset 1576 bit 10 */ + offset 1496 bit 10 */ bool fancySmartL : 1 {}; /** - offset 1576 bit 11 */ + offset 1496 bit 11 */ bool useAuxSpeedForSlipRatio : 1 {}; /** * VSS and auxSpeed1 or auxSpeed1 with auxSpeed2? - offset 1576 bit 12 */ + offset 1496 bit 12 */ bool useVssAsSecondWheelSpeed : 1 {}; /** - offset 1576 bit 13 */ + offset 1496 bit 13 */ bool is_enabled_spi_5 : 1 {}; /** - offset 1576 bit 14 */ + offset 1496 bit 14 */ bool is_enabled_spi_6 : 1 {}; /** * AEM X-Series EGT gauge kit or rusEFI EGT sensor from Wideband controller - offset 1576 bit 15 */ + offset 1496 bit 15 */ bool enableAemXSeriesEgt : 1 {}; /** - offset 1576 bit 16 */ + offset 1496 bit 16 */ bool unusedBit_503_16 : 1 {}; /** - offset 1576 bit 17 */ + offset 1496 bit 17 */ bool unusedBit_503_17 : 1 {}; /** - offset 1576 bit 18 */ - bool unusedBit_511_18 : 1 {}; + offset 1496 bit 18 */ + bool unusedBit_502_18 : 1 {}; /** - offset 1576 bit 19 */ - bool unusedBit_511_19 : 1 {}; + offset 1496 bit 19 */ + bool unusedBit_502_19 : 1 {}; /** - offset 1576 bit 20 */ - bool unusedBit_511_20 : 1 {}; + offset 1496 bit 20 */ + bool unusedBit_502_20 : 1 {}; /** - offset 1576 bit 21 */ - bool unusedBit_511_21 : 1 {}; + offset 1496 bit 21 */ + bool unusedBit_502_21 : 1 {}; /** - offset 1576 bit 22 */ - bool unusedBit_511_22 : 1 {}; + offset 1496 bit 22 */ + bool unusedBit_502_22 : 1 {}; /** - offset 1576 bit 23 */ - bool unusedBit_511_23 : 1 {}; + offset 1496 bit 23 */ + bool unusedBit_502_23 : 1 {}; /** - offset 1576 bit 24 */ - bool unusedBit_511_24 : 1 {}; + offset 1496 bit 24 */ + bool unusedBit_502_24 : 1 {}; /** - offset 1576 bit 25 */ - bool unusedBit_511_25 : 1 {}; + offset 1496 bit 25 */ + bool unusedBit_502_25 : 1 {}; /** - offset 1576 bit 26 */ - bool unusedBit_511_26 : 1 {}; + offset 1496 bit 26 */ + bool unusedBit_502_26 : 1 {}; /** - offset 1576 bit 27 */ - bool unusedBit_511_27 : 1 {}; + offset 1496 bit 27 */ + bool unusedBit_502_27 : 1 {}; /** - offset 1576 bit 28 */ - bool unusedBit_511_28 : 1 {}; + offset 1496 bit 28 */ + bool unusedBit_502_28 : 1 {}; /** - offset 1576 bit 29 */ - bool unusedBit_511_29 : 1 {}; + offset 1496 bit 29 */ + bool unusedBit_502_29 : 1 {}; /** - offset 1576 bit 30 */ - bool unusedBit_511_30 : 1 {}; + offset 1496 bit 30 */ + bool unusedBit_502_30 : 1 {}; /** - offset 1576 bit 31 */ - bool unusedBit_511_31 : 1 {}; + offset 1496 bit 31 */ + bool unusedBit_502_31 : 1 {}; /** * This is the duration in cycles that the IAC will take to reach its normal idle position, it can be used to hold the idle higher for a few seconds after cranking to improve startup.\Should be 100 once tune is better * units: cycles - * offset 1580 + * offset 1500 */ int16_t afterCrankingIACtaperDuration; /** * IAC Value added when coasting and transitioning into idle. * units: percent - * offset 1582 + * offset 1502 */ int16_t iacByTpsTaper; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1584 + * offset 1504 */ Gpio auxSerialTxPin; /** * Auxiliary sensor serial, not to be confused with secondary calibration serial - * offset 1586 + * offset 1506 */ Gpio auxSerialRxPin; /** - * offset 1588 + * offset 1508 */ Gpio accelerometerCsPin; - /** - * How long to look back for TPS-based acceleration enrichment. Increasing this time will trigger enrichment for longer when a throttle position change occurs. - * units: sec - * offset 1590 - */ - scaled_channel tpsAccelLookback; /** * Below this speed, disable DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears. * units: kph - * offset 1591 + * offset 1510 */ uint8_t coastingFuelCutVssLow; /** * Above this speed, allow DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears. * units: kph - * offset 1592 + * offset 1511 */ uint8_t coastingFuelCutVssHigh; - /** - * Pause closed loop fueling after deceleration fuel cut occurs. Set this to a little longer than however long is required for normal fueling behavior to resume after fuel cut. - * units: sec - * offset 1593 - */ - scaled_channel noFuelTrimAfterDfcoTime; - /** - * need 4 byte alignment - * units: units - * offset 1594 - */ - uint8_t alignmentFill_at_1594[2]; /** * Maximum change delta of TPS percentage over the 'length'. Actual TPS change has to be above this value in order for TPS/TPS acceleration to kick in. * units: roc - * offset 1596 + * offset 1512 */ float tpsAccelEnrichmentThreshold; /** - * offset 1600 + * offset 1516 */ brain_input_pin_e auxSpeedSensorInputPin[AUX_SPEED_SENSOR_COUNT]; /** - * offset 1604 + * offset 1520 */ uint8_t totalGearsCount; /** * Sets what part of injection's is controlled by the injection phase table. - * offset 1605 + * offset 1521 */ InjectionTimingMode injectionTimingMode; /** * See http://rusefi.com/s/debugmode - * offset 1606 + * offset 1522 */ debug_mode_e debugMode; /** * Additional idle % when fan #1 is active * units: % - * offset 1607 + * offset 1523 */ uint8_t fan1ExtraIdle; /** * Band rate for primary TTL * units: BPs - * offset 1608 + * offset 1524 */ uint32_t uartConsoleSerialSpeed; /** * For decel we simply multiply delta of TPS and tFor decel we do not use table?! * units: roc - * offset 1612 + * offset 1528 */ float tpsDecelEnleanmentThreshold; /** * Magic multiplier, we multiply delta of TPS and get fuel squirt duration * units: coeff - * offset 1616 + * offset 1532 */ float tpsDecelEnleanmentMultiplier; /** * units: BPs - * offset 1620 + * offset 1536 */ uint32_t auxSerialSpeed; /** * units: voltage - * offset 1624 + * offset 1540 */ float throttlePedalSecondaryUpVoltage; /** * Pedal in the floor * units: voltage - * offset 1628 + * offset 1544 */ float throttlePedalSecondaryWOTVoltage; /** * set can_baudrate - * offset 1632 + * offset 1548 */ can_baudrate_e canBaudRate; /** * Override the Y axis (load) value used for the VE table. * Advanced users only: If you aren't sure you need this, you probably don't need this. - * offset 1633 + * offset 1549 */ ve_override_e veOverrideMode; /** - * offset 1634 + * offset 1550 */ can_baudrate_e can2BaudRate; /** * Override the Y axis (load) value used for the AFR table. * Advanced users only: If you aren't sure you need this, you probably don't need this. - * offset 1635 + * offset 1551 */ load_override_e afrOverrideMode; /** * units: A - * offset 1636 + * offset 1552 */ scaled_channel mc33_hpfp_i_peak; /** * units: A - * offset 1637 + * offset 1553 */ scaled_channel mc33_hpfp_i_hold; /** * How long to deactivate power when hold current is reached before applying power again * units: us - * offset 1638 + * offset 1554 */ uint8_t mc33_hpfp_i_hold_off; /** * Maximum amount of time the solenoid can be active before assuming a programming error * units: ms - * offset 1639 + * offset 1555 */ uint8_t mc33_hpfp_max_hold; /** * Enable if DC-motor driver (H-bridge) inverts the signals (eg. RZ7899 on Hellen boards) - offset 1640 bit 0 */ + offset 1556 bit 0 */ bool stepperDcInvertedPins : 1 {}; /** * Allow OpenBLT on Primary CAN - offset 1640 bit 1 */ + offset 1556 bit 1 */ bool canOpenBLT : 1 {}; /** * Allow OpenBLT on Secondary CAN - offset 1640 bit 2 */ + offset 1556 bit 2 */ bool can2OpenBLT : 1 {}; /** * Select whether to configure injector flow in volumetric flow (defualt, cc/min) or mass flow (g/s). - offset 1640 bit 3 */ + offset 1556 bit 3 */ bool injectorFlowAsMassFlow : 1 {}; /** - offset 1640 bit 4 */ + offset 1556 bit 4 */ bool boardUseCanTerminator : 1 {}; /** - offset 1640 bit 5 */ + offset 1556 bit 5 */ bool kLineDoHondaSend : 1 {}; /** * ListenMode is about acknowledging CAN traffic on the protocol level. Different from canWriteEnabled - offset 1640 bit 6 */ + offset 1556 bit 6 */ bool can1ListenMode : 1 {}; /** - offset 1640 bit 7 */ + offset 1556 bit 7 */ bool can2ListenMode : 1 {}; /** - offset 1640 bit 8 */ - bool unusedBit_563_8 : 1 {}; + offset 1556 bit 8 */ + bool unusedBit_551_8 : 1 {}; /** - offset 1640 bit 9 */ - bool unusedBit_563_9 : 1 {}; + offset 1556 bit 9 */ + bool unusedBit_551_9 : 1 {}; /** - offset 1640 bit 10 */ - bool unusedBit_563_10 : 1 {}; + offset 1556 bit 10 */ + bool unusedBit_551_10 : 1 {}; /** - offset 1640 bit 11 */ - bool unusedBit_563_11 : 1 {}; + offset 1556 bit 11 */ + bool unusedBit_551_11 : 1 {}; /** - offset 1640 bit 12 */ - bool unusedBit_563_12 : 1 {}; + offset 1556 bit 12 */ + bool unusedBit_551_12 : 1 {}; /** - offset 1640 bit 13 */ - bool unusedBit_563_13 : 1 {}; + offset 1556 bit 13 */ + bool unusedBit_551_13 : 1 {}; /** - offset 1640 bit 14 */ - bool unusedBit_563_14 : 1 {}; + offset 1556 bit 14 */ + bool unusedBit_551_14 : 1 {}; /** - offset 1640 bit 15 */ - bool unusedBit_563_15 : 1 {}; + offset 1556 bit 15 */ + bool unusedBit_551_15 : 1 {}; /** - offset 1640 bit 16 */ - bool unusedBit_563_16 : 1 {}; + offset 1556 bit 16 */ + bool unusedBit_551_16 : 1 {}; /** - offset 1640 bit 17 */ - bool unusedBit_563_17 : 1 {}; + offset 1556 bit 17 */ + bool unusedBit_551_17 : 1 {}; /** - offset 1640 bit 18 */ - bool unusedBit_563_18 : 1 {}; + offset 1556 bit 18 */ + bool unusedBit_551_18 : 1 {}; /** - offset 1640 bit 19 */ - bool unusedBit_563_19 : 1 {}; + offset 1556 bit 19 */ + bool unusedBit_551_19 : 1 {}; /** - offset 1640 bit 20 */ - bool unusedBit_563_20 : 1 {}; + offset 1556 bit 20 */ + bool unusedBit_551_20 : 1 {}; /** - offset 1640 bit 21 */ - bool unusedBit_563_21 : 1 {}; + offset 1556 bit 21 */ + bool unusedBit_551_21 : 1 {}; /** - offset 1640 bit 22 */ - bool unusedBit_563_22 : 1 {}; + offset 1556 bit 22 */ + bool unusedBit_551_22 : 1 {}; /** - offset 1640 bit 23 */ - bool unusedBit_563_23 : 1 {}; + offset 1556 bit 23 */ + bool unusedBit_551_23 : 1 {}; /** - offset 1640 bit 24 */ - bool unusedBit_563_24 : 1 {}; + offset 1556 bit 24 */ + bool unusedBit_551_24 : 1 {}; /** - offset 1640 bit 25 */ - bool unusedBit_563_25 : 1 {}; + offset 1556 bit 25 */ + bool unusedBit_551_25 : 1 {}; /** - offset 1640 bit 26 */ - bool unusedBit_563_26 : 1 {}; + offset 1556 bit 26 */ + bool unusedBit_551_26 : 1 {}; /** - offset 1640 bit 27 */ - bool unusedBit_563_27 : 1 {}; + offset 1556 bit 27 */ + bool unusedBit_551_27 : 1 {}; /** - offset 1640 bit 28 */ - bool unusedBit_563_28 : 1 {}; + offset 1556 bit 28 */ + bool unusedBit_551_28 : 1 {}; /** - offset 1640 bit 29 */ - bool unusedBit_563_29 : 1 {}; + offset 1556 bit 29 */ + bool unusedBit_551_29 : 1 {}; /** - offset 1640 bit 30 */ - bool unusedBit_563_30 : 1 {}; + offset 1556 bit 30 */ + bool unusedBit_551_30 : 1 {}; /** - offset 1640 bit 31 */ - bool unusedBit_563_31 : 1 {}; + offset 1556 bit 31 */ + bool unusedBit_551_31 : 1 {}; /** - * offset 1644 + * offset 1560 */ uint8_t camDecoder2jzPosition; /** - * offset 1645 + * offset 1561 */ mc33810maxDwellTimer_e mc33810maxDwellTimer; /** * Duration of each test pulse * units: ms - * offset 1646 + * offset 1562 */ scaled_channel benchTestOnTime; /** * units: % - * offset 1648 + * offset 1564 */ uint8_t lambdaProtectionRestoreTps; /** * units: % - * offset 1649 + * offset 1565 */ scaled_channel lambdaProtectionRestoreLoad; /** - * offset 1650 + * offset 1566 */ pin_input_mode_e launchActivatePinMode; /** * need 4 byte alignment * units: units - * offset 1651 + * offset 1567 */ - uint8_t alignmentFill_at_1651[1]; + uint8_t alignmentFill_at_1567[1]; /** * set_can2_tx_pin X - * offset 1652 + * offset 1568 */ Gpio can2TxPin; /** * set_can2_rx_pin X - * offset 1654 + * offset 1570 */ Gpio can2RxPin; /** - * offset 1656 + * offset 1572 */ pin_output_mode_e starterControlPinMode; /** - * offset 1657 + * offset 1573 */ adc_channel_e wastegatePositionSensor; /** * Override the Y axis (load) value used for the ignition table. * Advanced users only: If you aren't sure you need this, you probably don't need this. - * offset 1658 + * offset 1574 */ load_override_e ignOverrideMode; /** * Select which fuel pressure sensor measures the pressure of the fuel at your injectors. - * offset 1659 + * offset 1575 */ injector_pressure_type_e injectorPressureType; /** - * offset 1660 + * offset 1576 */ output_pin_e hpfpValvePin; /** - * offset 1662 + * offset 1578 */ pin_output_mode_e hpfpValvePinMode; /** * need 4 byte alignment * units: units - * offset 1663 + * offset 1579 */ - uint8_t alignmentFill_at_1663[1]; + uint8_t alignmentFill_at_1579[1]; /** * MAP value above which fuel is cut in case of overboost. * Set to 0 to disable overboost cut. * units: kPa (absolute) - * offset 1664 + * offset 1580 */ float boostCutPressure; /** * units: kg/h - * offset 1668 + * offset 1584 */ scaled_channel tchargeBins[16]; /** * units: ratio - * offset 1684 + * offset 1600 */ scaled_channel tchargeValues[16]; /** * Fixed timing, useful for TDC testing * units: deg - * offset 1700 + * offset 1616 */ float fixedTiming; /** * MAP voltage for low point * units: v - * offset 1704 + * offset 1620 */ float mapLowValueVoltage; /** * MAP voltage for low point * units: v - * offset 1708 + * offset 1624 */ float mapHighValueVoltage; /** * EGO value correction * units: value - * offset 1712 + * offset 1628 */ float egoValueShift; /** * VVT output solenoid pin for this cam - * offset 1716 + * offset 1632 */ output_pin_e vvtPins[CAM_INPUTS_COUNT]; - /** - * offset 1724 - */ - pin_output_mode_e sdCardCsPinMode; - /** - * need 4 byte alignment - * units: units - * offset 1725 - */ - uint8_t alignmentFill_at_1725[3]; /** * This is the IAC position during cranking, some engines start better if given more air during cranking to improve cylinder filling. * units: percent - * offset 1728 + * offset 1640 */ int crankingIACposition; /** - * offset 1732 + * offset 1644 */ float tChargeMinRpmMinTps; /** - * offset 1736 + * offset 1648 */ float tChargeMinRpmMaxTps; /** - * offset 1740 + * offset 1652 */ float tChargeMaxRpmMinTps; /** - * offset 1744 + * offset 1656 */ float tChargeMaxRpmMaxTps; /** - * offset 1748 + * offset 1660 */ pwm_freq_t vvtOutputFrequency; /** * Minimim timing advance allowed. No spark on any cylinder will ever fire after this angle BTDC. For example, setting -10 here means no spark ever fires later than 10 deg ATDC. Note that this only concerns the primary spark: any trailing sparks or multispark may violate this constraint. * units: deg BTDC - * offset 1750 + * offset 1662 */ int8_t minimumIgnitionTiming; /** * Maximum timing advance allowed. No spark on any cylinder will ever fire before this angle BTDC. For example, setting 45 here means no spark ever fires earlier than 45 deg BTDC * units: deg BTDC - * offset 1751 + * offset 1663 */ int8_t maximumIgnitionTiming; /** * units: Hz - * offset 1752 + * offset 1664 */ int alternatorPwmFrequency; /** * set vvt_mode X - * offset 1756 + * offset 1668 */ vvt_mode_e vvtMode[CAMS_PER_BANK]; /** * Additional idle % when fan #2 is active * units: % - * offset 1758 + * offset 1670 */ uint8_t fan2ExtraIdle; /** * Delay to allow fuel pressure to build before firing the priming pulse. * units: sec - * offset 1759 + * offset 1671 */ scaled_channel primingDelay; /** - * offset 1760 + * offset 1672 */ adc_channel_e auxAnalogInputs[LUA_ANALOG_INPUT_COUNT]; /** - * offset 1768 + * offset 1680 */ output_pin_e trailingCoilPins[MAX_CYLINDER_COUNT]; /** - * offset 1792 + * offset 1704 */ tle8888_mode_e tle8888mode; /** - * offset 1793 + * offset 1705 */ pin_output_mode_e accelerometerCsPinMode; /** * None = I have a MAP-referenced fuel pressure regulator * Fixed rail pressure = I have an atmosphere-referenced fuel pressure regulator (returnless, typically) * Sensed rail pressure = I have a fuel pressure sensor - * offset 1794 + * offset 1706 */ injector_compensation_mode_e injectorCompensationMode; /** - * offset 1795 + * offset 1707 */ pin_output_mode_e fan2PinMode; /** * This is the pressure at which your injector flow is known. * For example if your injectors flow 400cc/min at 3.5 bar, enter 350kpa here. * units: kPa - * offset 1796 + * offset 1708 */ float fuelReferencePressure; /** * units: mult - * offset 1800 + * offset 1712 */ float postCrankingFactor[CRANKING_ENRICH_COUNT][CRANKING_ENRICH_COUNT]; /** * units: count - * offset 1944 + * offset 1856 */ float postCrankingDurationBins[CRANKING_ENRICH_COUNT]; /** * units: C - * offset 1968 + * offset 1880 */ float postCrankingCLTBins[CRANKING_ENRICH_COUNT]; /** - * offset 1992 + * offset 1904 */ ThermistorConf auxTempSensor1; /** - * offset 2024 + * offset 1936 */ ThermistorConf auxTempSensor2; /** * units: Deg - * offset 2056 + * offset 1968 */ int16_t knockSamplingDuration; /** * units: Hz - * offset 2058 + * offset 1970 */ int16_t etbFreq; /** - * offset 2060 + * offset 1972 */ pid_s etbWastegatePid; /** * For micro-stepping, make sure that PWM frequency (etbFreq) is high enough - * offset 2080 + * offset 1992 */ stepper_num_micro_steps_e stepperNumMicroSteps; /** * Use to limit the current when the stepper motor is idle, not moving (100% = no limit) * units: % - * offset 2081 + * offset 1993 */ uint8_t stepperMinDutyCycle; /** * Use to limit the max.current through the stepper motor (100% = no limit) * units: % - * offset 2082 + * offset 1994 */ uint8_t stepperMaxDutyCycle; /** - * offset 2083 + * offset 1995 */ spi_device_e sdCardSpiDevice; /** * per-cylinder ignition and fueling timing correction for uneven engines * units: deg - * offset 2084 + * offset 1996 */ angle_t timing_offset_cylinder[MAX_CYLINDER_COUNT]; /** * units: seconds - * offset 2132 + * offset 2044 */ float idlePidActivationTime; /** - * offset 2136 + * offset 2048 */ pin_mode_e spi1SckMode; /** * Modes count be used for 3v<>5v integration using pull-ups/pull-downs etc. - * offset 2137 + * offset 2049 */ pin_mode_e spi1MosiMode; /** - * offset 2138 + * offset 2050 */ pin_mode_e spi1MisoMode; /** - * offset 2139 + * offset 2051 */ pin_mode_e spi2SckMode; /** - * offset 2140 + * offset 2052 */ pin_mode_e spi2MosiMode; /** - * offset 2141 + * offset 2053 */ pin_mode_e spi2MisoMode; /** - * offset 2142 + * offset 2054 */ pin_mode_e spi3SckMode; /** - * offset 2143 + * offset 2055 */ pin_mode_e spi3MosiMode; /** - * offset 2144 + * offset 2056 */ pin_mode_e spi3MisoMode; /** - * offset 2145 + * offset 2057 */ pin_output_mode_e stepperEnablePinMode; /** * ResetB - * offset 2146 + * offset 2058 */ Gpio mc33816_rstb; /** - * offset 2148 + * offset 2060 */ Gpio mc33816_driven; /** * Brake pedal switch - * offset 2150 + * offset 2062 */ switch_input_pin_e brakePedalPin; - /** - * offset 2152 - */ - pin_input_mode_e brakePedalPinMode; - /** - * need 4 byte alignment - * units: units - * offset 2153 - */ - uint8_t alignmentFill_at_2153[3]; /** * VVT output PID * TODO: rename to vvtPid - * offset 2156 + * offset 2064 */ pid_s auxPid[CAMS_PER_BANK]; /** - * offset 2196 + * offset 2104 */ float injectorCorrectionPolynomial[8]; /** * units: C - * offset 2228 + * offset 2136 */ int8_t primeBins[PRIME_CURVE_COUNT]; /** - * offset 2236 + * offset 2144 */ linear_sensor_s oilPressure; /** - * offset 2256 + * offset 2164 */ spi_device_e accelerometerSpiDevice; /** * need 4 byte alignment * units: units - * offset 2257 + * offset 2165 */ - uint8_t alignmentFill_at_2257[1]; + uint8_t alignmentFill_at_2165[1]; /** - * offset 2258 + * offset 2166 */ output_pin_e fan2Pin; /** * Cooling fan turn-on temperature threshold, in Celsius * units: deg C - * offset 2260 + * offset 2168 */ uint8_t fan2OnTemperature; /** * Cooling fan turn-off temperature threshold, in Celsius * units: deg C - * offset 2261 + * offset 2169 */ uint8_t fan2OffTemperature; /** - * offset 2262 + * offset 2170 */ Gpio stepperEnablePin; /** - * offset 2264 + * offset 2172 */ Gpio tle8888_cs; /** - * offset 2266 + * offset 2174 */ pin_output_mode_e tle8888_csPinMode; /** * need 4 byte alignment * units: units - * offset 2267 + * offset 2175 */ - uint8_t alignmentFill_at_2267[1]; + uint8_t alignmentFill_at_2175[1]; /** - * offset 2268 + * offset 2176 */ Gpio mc33816_cs; /** * need 4 byte alignment * units: units - * offset 2270 + * offset 2178 */ - uint8_t alignmentFill_at_2270[2]; + uint8_t alignmentFill_at_2178[2]; /** * units: hz - * offset 2272 + * offset 2180 */ float auxFrequencyFilter; /** - * units: RPM - * offset 2276 - */ - int16_t vvtControlMinRpm; - /** - * offset 2278 + * offset 2184 */ sent_input_pin_e sentInputPins[SENT_INPUT_COUNT]; - /** - * units: % - * offset 2280 - */ - int8_t launchFuelAdderPercent; - /** - * Time required to detect a stuck throttle. - * units: sec - * offset 2281 - */ - scaled_channel etbJamTimeout; - /** - * By the way ETB PID runs at 500hz, length in 1/500 of second here. - * offset 2282 - */ - uint16_t etbExpAverageLength; - /** - * offset 2284 - */ - float unused645646; /** * This sets the RPM above which fuel cut is active. * units: rpm - * offset 2288 + * offset 2186 */ int16_t coastingFuelCutRpmHigh; /** * This sets the RPM below which fuel cut is deactivated, this prevents jerking or issues transitioning to idle * units: rpm - * offset 2290 + * offset 2188 */ int16_t coastingFuelCutRpmLow; /** * Throttle position below which fuel cut is active. With an electronic throttle enabled, this checks against pedal position. * units: % - * offset 2292 + * offset 2190 */ int16_t coastingFuelCutTps; /** * Fuel cutoff is disabled when the engine is cold. * units: C - * offset 2294 + * offset 2192 */ int16_t coastingFuelCutClt; /** * Increases PID reaction for RPM stoichRatioPrimary; /** * iTerm max value - * offset 2710 + * offset 2594 */ int16_t idlerpmpid_iTermMax; /** * This sets the range of the idle control on the ETB. At 100% idle position, the value specified here sets the base ETB position. * units: % - * offset 2712 + * offset 2596 */ float etbIdleThrottleRange; /** * Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor - * offset 2716 + * offset 2600 */ uint8_t cylinderBankSelect[MAX_CYLINDER_COUNT]; /** * units: mg - * offset 2728 + * offset 2612 */ scaled_channel primeValues[PRIME_CURVE_COUNT]; /** * Trigger comparator center point voltage * units: V - * offset 2736 + * offset 2620 */ scaled_channel triggerCompCenterVolt; /** * Trigger comparator hysteresis voltage (Min) * units: V - * offset 2737 + * offset 2621 */ scaled_channel triggerCompHystMin; /** * Trigger comparator hysteresis voltage (Max) * units: V - * offset 2738 + * offset 2622 */ scaled_channel triggerCompHystMax; /** * VR-sensor saturation RPM * units: RPM - * offset 2739 + * offset 2623 */ scaled_channel triggerCompSensorSatRpm; /** * units: ratio - * offset 2740 + * offset 2624 */ scaled_channel tractionControlSlipBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: RPM - * offset 2752 + * offset 2636 */ uint8_t tractionControlSpeedBins[TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 2758 + * offset 2642 */ int8_t disableFan1AtSpeed; /** - * offset 2759 + * offset 2643 */ int8_t disableFan2AtSpeed; /** - * offset 2760 + * offset 2644 */ can_vss_nbc_e canVssNbcType; /** * need 4 byte alignment * units: units - * offset 2762 + * offset 2646 */ - uint8_t alignmentFill_at_2762[2]; + uint8_t alignmentFill_at_2646[2]; /** - * offset 2764 + * offset 2648 */ gppwm_channel gppwm[GPPWM_CHANNELS]; /** * Boost Current * units: mA - * offset 3196 + * offset 3080 */ uint16_t mc33_i_boost; /** * Peak Current * units: mA - * offset 3198 + * offset 3082 */ uint16_t mc33_i_peak; /** * Hold Current * units: mA - * offset 3200 + * offset 3084 */ uint16_t mc33_i_hold; /** * Maximum allowed boost phase time. If the injector current doesn't reach the threshold before this time elapses, it is assumed that the injector is missing or has failed open circuit. * units: us - * offset 3202 + * offset 3086 */ uint16_t mc33_t_max_boost; /** * units: us - * offset 3204 + * offset 3088 */ uint16_t mc33_t_peak_off; /** * Peak phase duration * units: us - * offset 3206 + * offset 3090 */ uint16_t mc33_t_peak_tot; /** * units: us - * offset 3208 + * offset 3092 */ uint16_t mc33_t_bypass; /** * units: us - * offset 3210 + * offset 3094 */ uint16_t mc33_t_hold_off; /** * Hold phase duration * units: us - * offset 3212 + * offset 3096 */ uint16_t mc33_t_hold_tot; /** - * offset 3214 + * offset 3098 */ pin_input_mode_e tcuUpshiftButtonPinMode; /** - * offset 3215 + * offset 3099 */ pin_input_mode_e tcuDownshiftButtonPinMode; /** - * offset 3216 + * offset 3100 */ pin_input_mode_e acSwitchMode; /** - * offset 3217 + * offset 3101 */ pin_output_mode_e tcu_solenoid_mode[TCU_SOLENOID_COUNT]; - /** - * Knock sensor output knock detection threshold depending on current RPM. - * units: dB - * offset 3223 - */ - scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 3239 + * offset 3107 */ - uint8_t alignmentFill_at_3239[1]; + uint8_t alignmentFill_at_3107[1]; /** * units: ratio - * offset 3240 + * offset 3108 */ float triggerGapOverrideFrom[GAP_TRACKING_LENGTH]; /** * units: ratio - * offset 3312 + * offset 3180 */ float triggerGapOverrideTo[GAP_TRACKING_LENGTH]; /** * Below this RPM, use camshaft information to synchronize the crank's position for full sequential operation. Use this if your cam sensor does weird things at high RPM. Set to 0 to disable, and always use cam to help sync crank. * units: rpm - * offset 3384 + * offset 3252 */ scaled_channel maxCamPhaseResolveRpm; /** * Delay before cutting fuel. Set to 0 to cut immediately with no delay. May cause rumbles and pops out of your exhaust... * units: sec - * offset 3385 + * offset 3253 */ scaled_channel dfcoDelay; /** * Delay before engaging the AC compressor. Set to 0 to engage immediately with no delay. Use this to prevent bogging at idle when AC engages. * units: sec - * offset 3386 + * offset 3254 */ scaled_channel acDelay; /** - * need 4 byte alignment - * units: units - * offset 3387 + * offset 3255 */ - uint8_t alignmentFill_at_3387[1]; + tChargeMode_e tChargeMode; /** * units: mg - * offset 3388 + * offset 3256 */ scaled_channel fordInjectorSmallPulseBreakPoint; - /** - * units: multiplier - * offset 3390 - */ - scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: % - * offset 3394 + * offset 3258 */ uint8_t etbJamIntegratorLimit; /** * units: lobes/cam - * offset 3395 + * offset 3259 */ uint8_t hpfpCamLobes; /** - * offset 3396 + * offset 3260 */ hpfp_cam_e hpfpCam; /** - * offset 3397 + * offset 3261 */ uint8_t auxiliarySetting1; /** * If the requested activation time is below this angle, don't bother running the pump * units: deg - * offset 3398 + * offset 3262 */ uint8_t hpfpMinAngle; /** * need 4 byte alignment * units: units - * offset 3399 + * offset 3263 */ - uint8_t alignmentFill_at_3399[1]; + uint8_t alignmentFill_at_3263[1]; /** * Size of the pump chamber in cc. Typical Bosch HDP5 has a 9.0mm diameter, typical BMW N* stroke is 4.4mm. * units: cc - * offset 3400 + * offset 3264 */ scaled_channel hpfpPumpVolume; /** * How long to keep the valve activated (in order to allow the pump to build pressure and keep the valve open on its own) * units: deg - * offset 3402 + * offset 3266 */ uint8_t hpfpActivationAngle; /** - * offset 3403 + * offset 3267 */ uint8_t issFilterReciprocal; /** * units: %/kPa - * offset 3404 + * offset 3268 */ scaled_channel hpfpPidP; /** * units: %/kPa/lobe - * offset 3406 + * offset 3270 */ scaled_channel hpfpPidI; /** * The fastest rate the target pressure can be reduced by. This is because HPFP have no way to bleed off pressure other than injecting fuel. * units: kPa/s - * offset 3408 + * offset 3272 */ uint16_t hpfpTargetDecay; /** - * units: % - * offset 3410 - */ - scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; - /** - * units: deg - * offset 3426 - */ - scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; - /** - * units: volts - * offset 3442 - */ - uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; - /** - * units: ms - * offset 3450 - */ - scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; - /** - * units: kPa - * offset 3466 - */ - uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; - /** - * units: load - * offset 3666 - */ - scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; - /** - * units: RPM - * offset 3686 - */ - scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; - /** - * units: % - * offset 3696 - */ - int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; - /** - * units: cc/lobe - * offset 3796 - */ - scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; - /** - * units: RPM - * offset 3816 - */ - scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; - /** - * offset 3826 + * offset 3274 */ output_pin_e stepper_raw_output[4]; /** * units: ratio - * offset 3834 + * offset 3282 */ scaled_channel gearRatio[TCU_GEAR_COUNT]; /** * We need to give engine time to build oil pressure without diverting it to VVT * units: ms - * offset 3854 + * offset 3302 */ uint16_t vvtActivationDelayMs; - /** - * units: deg C - * offset 3856 - */ - int8_t wwCltBins[WWAE_TABLE_SIZE]; - /** - * offset 3864 - */ - scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; - /** - * offset 3872 - */ - scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; - /** - * units: kPa - * offset 3880 - */ - int8_t wwMapBins[WWAE_TABLE_SIZE]; - /** - * offset 3888 - */ - scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; - /** - * offset 3896 - */ - scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; /** * units: Nm - * offset 3904 + * offset 3304 */ scaled_channel torqueTable[TORQUE_CURVE_SIZE][TORQUE_CURVE_SIZE]; /** * units: RPM - * offset 3940 + * offset 3340 */ uint16_t torqueRpmBins[TORQUE_CURVE_SIZE]; /** * units: Load - * offset 3952 + * offset 3352 */ uint16_t torqueLoadBins[TORQUE_CURVE_SIZE]; /** - * offset 3964 + * offset 3364 */ GearControllerMode gearControllerMode; /** - * offset 3965 + * offset 3365 */ TransmissionControllerMode transmissionControllerMode; /** * units: deg - * offset 3966 + * offset 3366 */ uint16_t acrDisablePhase; /** - * offset 3968 + * offset 3368 */ linear_sensor_s auxLinear1; /** - * offset 3988 + * offset 3388 */ linear_sensor_s auxLinear2; /** - * offset 4008 + * offset 3408 */ output_pin_e tcu_tcc_onoff_solenoid; /** - * offset 4010 + * offset 3410 */ pin_output_mode_e tcu_tcc_onoff_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4011 + * offset 3411 */ - uint8_t alignmentFill_at_4011[1]; + uint8_t alignmentFill_at_3411[1]; /** - * offset 4012 + * offset 3412 */ output_pin_e tcu_tcc_pwm_solenoid; /** - * offset 4014 + * offset 3414 */ pin_output_mode_e tcu_tcc_pwm_solenoid_mode; /** * need 4 byte alignment * units: units - * offset 4015 + * offset 3415 */ - uint8_t alignmentFill_at_4015[1]; + uint8_t alignmentFill_at_3415[1]; /** - * offset 4016 + * offset 3416 */ pwm_freq_t tcu_tcc_pwm_solenoid_freq; /** - * offset 4018 + * offset 3418 */ output_pin_e tcu_pc_solenoid_pin; /** - * offset 4020 + * offset 3420 */ pin_output_mode_e tcu_pc_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4021 + * offset 3421 */ - uint8_t alignmentFill_at_4021[1]; + uint8_t alignmentFill_at_3421[1]; /** - * offset 4022 + * offset 3422 */ pwm_freq_t tcu_pc_solenoid_freq; /** - * offset 4024 + * offset 3424 */ output_pin_e tcu_32_solenoid_pin; /** - * offset 4026 + * offset 3426 */ pin_output_mode_e tcu_32_solenoid_pin_mode; /** * need 4 byte alignment * units: units - * offset 4027 + * offset 3427 */ - uint8_t alignmentFill_at_4027[1]; + uint8_t alignmentFill_at_3427[1]; /** - * offset 4028 + * offset 3428 */ pwm_freq_t tcu_32_solenoid_freq; /** - * offset 4030 + * offset 3430 */ output_pin_e acrPin2; /** * units: % - * offset 4032 + * offset 3432 */ float etbMinimumPosition; /** - * offset 4036 + * offset 3436 */ uint16_t tuneHidingKey; /** - * offset 4038 + * offset 3438 */ vin_number_t vinNumber; /** * need 4 byte alignment * units: units - * offset 4055 + * offset 3455 */ - uint8_t alignmentFill_at_4055[1]; + uint8_t alignmentFill_at_3455[1]; /** - * offset 4056 + * offset 3456 */ uint16_t highSpeedOffsets[HIGH_SPEED_COUNT]; /** - * offset 4120 - */ - float unused3124141; - /** - * offset 4124 + * offset 3520 */ fuel_pressure_sensor_mode_e fuelPressureSensorMode; /** * need 4 byte alignment * units: units - * offset 4125 + * offset 3521 */ - uint8_t alignmentFill_at_4125[1]; + uint8_t alignmentFill_at_3521[1]; /** - * offset 4126 + * offset 3522 */ switch_input_pin_e luaDigitalInputPins[LUA_DIGITAL_INPUT_COUNT]; - /** - * units: RPM - * offset 4142 - */ - scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; /** * units: rpm - * offset 4146 + * offset 3538 */ int16_t ALSMinRPM; /** * units: rpm - * offset 4148 + * offset 3540 */ int16_t ALSMaxRPM; /** * units: sec - * offset 4150 + * offset 3542 */ int16_t ALSMaxDuration; /** * units: C - * offset 4152 + * offset 3544 */ int8_t ALSMinCLT; /** * units: C - * offset 4153 + * offset 3545 */ int8_t ALSMaxCLT; /** - * offset 4154 + * offset 3546 */ uint8_t alsMinTimeBetween; /** - * offset 4155 + * offset 3547 */ uint8_t alsEtbPosition; /** * units: % - * offset 4156 + * offset 3548 */ uint8_t acRelayAlternatorDutyAdder; /** - * offset 4157 + * offset 3549 */ SentEtbType sentEtbType; /** - * offset 4158 + * offset 3550 */ uint16_t customSentTpsMin; /** * units: % - * offset 4160 + * offset 3552 */ int ALSIdleAdd; /** * units: % - * offset 4164 + * offset 3556 */ int ALSEtbAdd; /** - * offset 4168 + * offset 3560 */ float ALSSkipRatio; /** * units: % - * offset 4172 + * offset 3564 */ uint8_t ALSMaxDriverThrottleIntent; /** - * offset 4173 + * offset 3565 */ pin_input_mode_e ALSActivatePinMode; /** * For Ford TPS, use 53%. For Toyota ETCS-i, use ~65% * units: % - * offset 4174 + * offset 3566 */ scaled_channel tpsSecondaryMaximum; /** * For Toyota ETCS-i, use ~69% * units: % - * offset 4175 + * offset 3567 */ scaled_channel ppsSecondaryMaximum; /** - * offset 4176 + * offset 3568 */ pin_input_mode_e luaDigitalInputPinModes[LUA_DIGITAL_INPUT_COUNT]; /** - * offset 4184 + * offset 3576 */ uint16_t customSentTpsMax; /** - * offset 4186 + * offset 3578 */ uint16_t kLineBaudRate; /** - * offset 4188 + * offset 3580 */ CanGpioType canGpioType; /** - * offset 4189 + * offset 3581 */ UiMode uiMode; /** * Crank angle ATDC of first lobe peak * units: deg - * offset 4190 + * offset 3582 */ int16_t hpfpPeakPos; /** * units: us - * offset 4192 + * offset 3584 */ int16_t kLinePeriodUs; /** * Window that the correction will be added throughout (example, if rpm limit is 7000, and rpmSoftLimitWindowSize is 200, the corrections activate at 6800RPM, creating a 200rpm window) * units: RPM - * offset 4194 + * offset 3586 */ scaled_channel rpmSoftLimitWindowSize; /** * Degrees of timing REMOVED from actual timing during soft RPM limit window * units: deg - * offset 4195 + * offset 3587 */ scaled_channel rpmSoftLimitTimingRetard; /** * % of fuel ADDED during window * units: % - * offset 4196 + * offset 3588 */ scaled_channel rpmSoftLimitFuelAdded; /** * Hysterisis: if the hard limit is 7200rpm and rpmHardLimitHyst is 200rpm, then when the ECU sees 7200rpm, fuel/ign will cut, and stay cut until 7000rpm (7200-200) is reached * units: RPM - * offset 4197 + * offset 3589 */ scaled_channel rpmHardLimitHyst; /** * Time between bench test pulses * units: ms - * offset 4198 + * offset 3590 */ scaled_channel benchTestOffTime; /** * Hysterisis: if hard cut is 240kpa, and boostCutPressureHyst is 20, when the ECU sees 240kpa, fuel/ign will cut, and stay cut until 240-20=220kpa is reached * units: kPa (absolute) - * offset 4200 + * offset 3592 */ scaled_channel boostCutPressureHyst; /** * Boost duty cycle modified by gear * units: % - * offset 4201 + * offset 3593 */ scaled_channel gearBasedOpenLoopBoostAdder[TCU_GEAR_COUNT]; /** * need 4 byte alignment * units: units - * offset 4211 + * offset 3603 */ - uint8_t alignmentFill_at_4211[1]; + uint8_t alignmentFill_at_3603[1]; /** * How many test bench pulses do you want - * offset 4212 + * offset 3604 */ uint32_t benchTestCount; /** * How long initial IAC adder is held before starting to decay. * units: seconds - * offset 4216 + * offset 3608 */ scaled_channel iacByTpsHoldTime; /** * How long it takes to remove initial IAC adder to return to normal idle. * units: seconds - * offset 4217 + * offset 3609 */ scaled_channel iacByTpsDecayTime; /** - * offset 4218 + * offset 3610 */ switch_input_pin_e tcu_rangeInput[RANGE_INPUT_COUNT]; /** - * offset 4230 + * offset 3622 */ pin_input_mode_e tcu_rangeInputMode[RANGE_INPUT_COUNT]; /** * Scale the reported vehicle speed value from CAN. Example: Parameter set to 1.1, CAN VSS reports 50kph, ECU will report 55kph instead. * units: ratio - * offset 4236 + * offset 3628 */ scaled_channel canVssScaling; /** * need 4 byte alignment * units: units - * offset 4238 + * offset 3630 */ - uint8_t alignmentFill_at_4238[2]; + uint8_t alignmentFill_at_3630[2]; /** - * offset 4240 + * offset 3632 */ ThermistorConf oilTempSensor; /** - * offset 4272 + * offset 3664 */ ThermistorConf fuelTempSensor; /** - * offset 4304 + * offset 3696 */ ThermistorConf ambientTempSensor; /** - * offset 4336 + * offset 3728 */ ThermistorConf compressorDischargeTemperature; /** * Place the sensor before the throttle, but after any turbocharger/supercharger and intercoolers if fitted. Uses the same calibration as the MAP sensor. - * offset 4368 + * offset 3760 */ adc_channel_e throttleInletPressureChannel; /** * Place the sensor after the turbocharger/supercharger, but before any intercoolers if fitted. Uses the same calibration as the MAP sensor. - * offset 4369 + * offset 3761 */ adc_channel_e compressorDischargePressureChannel; /** - * offset 4370 + * offset 3762 */ Gpio dacOutputPins[DAC_OUTPUT_COUNT]; /** - * offset 4374 + * offset 3766 */ output_pin_e speedometerOutputPin; /** * Number of speedometer pulses per kilometer travelled. - * offset 4376 + * offset 3768 */ uint16_t speedometerPulsePerKm; /** - * offset 4378 + * offset 3770 */ uint8_t simulatorCamPosition[CAM_INPUTS_COUNT]; /** - * offset 4382 + * offset 3774 */ adc_channel_e ignKeyAdcChannel; /** - * offset 4383 + * offset 3775 */ pin_mode_e spi6MisoMode; /** * units: ratio - * offset 4384 + * offset 3776 */ float triggerVVTGapOverrideFrom[VVT_TRACKING_LENGTH]; /** * units: ratio - * offset 4400 + * offset 3792 */ float triggerVVTGapOverrideTo[VVT_TRACKING_LENGTH]; /** * units: % - * offset 4416 + * offset 3808 */ int8_t tractionControlEtbDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * If injector duty cycle hits this value, instantly cut fuel. * units: % - * offset 4452 + * offset 3844 */ uint8_t maxInjectorDutyInstant; /** * If injector duty cycle hits this value for the specified delay time, cut fuel. * units: % - * offset 4453 + * offset 3845 */ uint8_t maxInjectorDutySustained; /** * Timeout period for duty cycle over the sustained limit to trigger duty cycle protection. * units: sec - * offset 4454 + * offset 3846 */ scaled_channel maxInjectorDutySustainedTimeout; /** * need 4 byte alignment * units: units - * offset 4455 + * offset 3847 */ - uint8_t alignmentFill_at_4455[1]; + uint8_t alignmentFill_at_3847[1]; /** - * offset 4456 + * offset 3848 */ output_pin_e injectionPinsStage2[MAX_CYLINDER_COUNT]; /** * units: Deg - * offset 4480 + * offset 3872 */ int8_t tractionControlTimingDrop[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** * units: % - * offset 4516 + * offset 3908 */ int8_t tractionControlIgnitionSkip[TRACTION_CONTROL_ETB_DROP_SIZE][TRACTION_CONTROL_ETB_DROP_SIZE]; /** - * offset 4552 + * offset 3944 */ float auxSpeed1Multiplier; /** - * offset 4556 + * offset 3948 */ float brakeMeanEffectivePressureDifferential; /** - * offset 4560 + * offset 3952 */ Gpio spi4mosiPin; /** - * offset 4562 + * offset 3954 */ Gpio spi4misoPin; /** - * offset 4564 + * offset 3956 */ Gpio spi4sckPin; /** - * offset 4566 + * offset 3958 */ Gpio spi5mosiPin; /** - * offset 4568 + * offset 3960 */ Gpio spi5misoPin; /** - * offset 4570 + * offset 3962 */ Gpio spi5sckPin; /** - * offset 4572 + * offset 3964 */ Gpio spi6mosiPin; /** - * offset 4574 + * offset 3966 */ Gpio spi6misoPin; /** - * offset 4576 + * offset 3968 */ Gpio spi6sckPin; /** - * offset 4578 + * offset 3970 */ pin_mode_e spi4SckMode; /** - * offset 4579 + * offset 3971 */ pin_mode_e spi4MosiMode; /** - * offset 4580 + * offset 3972 */ pin_mode_e spi4MisoMode; /** - * offset 4581 + * offset 3973 */ pin_mode_e spi5SckMode; /** - * offset 4582 + * offset 3974 */ pin_mode_e spi5MosiMode; /** - * offset 4583 + * offset 3975 */ pin_mode_e spi5MisoMode; /** - * offset 4584 + * offset 3976 */ pin_mode_e spi6SckMode; /** - * offset 4585 + * offset 3977 */ pin_mode_e spi6MosiMode; - /** - * units: units - * offset 4586 - */ - uint8_t unusedOftenChangesDuringFirmwareUpdate[120]; /** * need 4 byte alignment * units: units - * offset 4706 + * offset 3978 */ - uint8_t alignmentFill_at_4706[2]; + uint8_t alignmentFill_at_3978[2]; + /** + * Secondary TTL channel baud rate + * units: BPs + * offset 3980 + */ + uint32_t tunerStudioSerialSpeed; + /** + * units: units + * offset 3984 + */ + uint8_t unusedOftenChangesDuringFirmwareUpdate[236]; }; -static_assert(sizeof(engine_configuration_s) == 4708); +static_assert(sizeof(engine_configuration_s) == 4220); // start of cyl_trim_s struct cyl_trim_s { @@ -4785,308 +4564,308 @@ struct persistent_config_s { * target TPS value, 0 to 100% * TODO: use int8 data date once we template interpolation method * units: target TPS position - * offset 4708 + * offset 4220 */ float etbBiasBins[ETB_BIAS_CURVE_LENGTH]; /** * PWM bias, 0 to 100% * units: ETB duty cycle bias - * offset 4740 + * offset 4252 */ float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; /** * units: % - * offset 4772 + * offset 4284 */ scaled_channel iacPidMultTable[IAC_PID_MULT_SIZE][IAC_PID_MULT_SIZE]; /** * units: Load - * offset 4836 + * offset 4348 */ uint8_t iacPidMultLoadBins[IAC_PID_MULT_SIZE]; /** * units: RPM - * offset 4844 + * offset 4356 */ scaled_channel iacPidMultRpmBins[IAC_PID_MULT_SIZE]; /** * On Single Coil or Wasted Spark setups you have to lower dwell at high RPM * units: RPM - * offset 4852 + * offset 4364 */ uint16_t sparkDwellRpmBins[DWELL_CURVE_SIZE]; /** * units: ms - * offset 4868 + * offset 4380 */ scaled_channel sparkDwellValues[DWELL_CURVE_SIZE]; /** * CLT-based target RPM for automatic idle controller * units: C - * offset 4884 + * offset 4396 */ scaled_channel cltIdleRpmBins[CLT_CURVE_SIZE]; /** * See idleRpmPid * units: RPM - * offset 4900 + * offset 4412 */ scaled_channel cltIdleRpm[CLT_CURVE_SIZE]; /** * CLT-based timing correction * units: C - * offset 4916 + * offset 4428 */ float cltTimingBins[CLT_TIMING_CURVE_SIZE]; /** * units: degree - * offset 4948 + * offset 4460 */ float cltTimingExtra[CLT_TIMING_CURVE_SIZE]; /** * units: x - * offset 4980 + * offset 4492 */ float scriptCurve1Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5044 + * offset 4556 */ float scriptCurve1[SCRIPT_CURVE_16]; /** * units: x - * offset 5108 + * offset 4620 */ float scriptCurve2Bins[SCRIPT_CURVE_16]; /** * units: y - * offset 5172 + * offset 4684 */ float scriptCurve2[SCRIPT_CURVE_16]; /** * units: x - * offset 5236 + * offset 4748 */ float scriptCurve3Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5268 + * offset 4780 */ float scriptCurve3[SCRIPT_CURVE_8]; /** * units: x - * offset 5300 + * offset 4812 */ float scriptCurve4Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5332 + * offset 4844 */ float scriptCurve4[SCRIPT_CURVE_8]; /** * units: x - * offset 5364 + * offset 4876 */ float scriptCurve5Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5396 + * offset 4908 */ float scriptCurve5[SCRIPT_CURVE_8]; /** * units: x - * offset 5428 + * offset 4940 */ float scriptCurve6Bins[SCRIPT_CURVE_8]; /** * units: y - * offset 5460 + * offset 4972 */ float scriptCurve6[SCRIPT_CURVE_8]; /** * units: kPa - * offset 5492 + * offset 5004 */ float baroCorrPressureBins[BARO_CORR_SIZE]; /** * units: RPM - * offset 5508 + * offset 5020 */ float baroCorrRpmBins[BARO_CORR_SIZE]; /** * units: ratio - * offset 5524 + * offset 5036 */ float baroCorrTable[BARO_CORR_SIZE][BARO_CORR_SIZE]; /** * Cranking fuel correction coefficient based on TPS * units: Ratio - * offset 5588 + * offset 5100 */ float crankingTpsCoef[CRANKING_CURVE_SIZE]; /** * units: % - * offset 5620 + * offset 5132 */ float crankingTpsBins[CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: RPM - * offset 5652 + * offset 5164 */ uint16_t crankingAdvanceBins[CRANKING_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Cranking (see useSeparateAdvanceForCranking) * units: deg - * offset 5660 + * offset 5172 */ scaled_channel crankingAdvance[CRANKING_ADVANCE_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: RPM - * offset 5668 + * offset 5180 */ scaled_channel iacCoastingRpmBins[CLT_CURVE_SIZE]; /** * RPM-based idle position for coasting * units: % - * offset 5684 + * offset 5196 */ scaled_channel iacCoasting[CLT_CURVE_SIZE]; /** - * offset 5700 + * offset 5212 */ warning_message_t warning_message; /** - * offset 5820 + * offset 5332 */ - float unusedGapInCalibration[32]; + uint8_t fancyOptions[FANCY_OPTIONS_COUNT]; /** - * offset 5948 + * offset 5348 */ scaled_channel boostTableOpenLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: RPM - * offset 6012 + * offset 5412 */ scaled_channel boostRpmBins[BOOST_RPM_COUNT]; /** - * offset 6020 + * offset 5420 */ scaled_channel boostTableClosedLoop[BOOST_LOAD_COUNT][BOOST_RPM_COUNT]; /** * units: % - * offset 6084 + * offset 5484 */ uint8_t boostTpsBins[BOOST_LOAD_COUNT]; /** * units: % - * offset 6092 + * offset 5492 */ uint8_t pedalToTpsTable[PEDAL_TO_TPS_SIZE][PEDAL_TO_TPS_SIZE]; /** * units: % - * offset 6156 + * offset 5556 */ uint8_t pedalToTpsPedalBins[PEDAL_TO_TPS_SIZE]; /** * units: RPM - * offset 6164 + * offset 5564 */ scaled_channel pedalToTpsRpmBins[PEDAL_TO_TPS_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: C - * offset 6172 + * offset 5572 */ float cltCrankingCorrBins[CLT_CRANKING_CURVE_SIZE]; /** * CLT-based cranking position multiplier for simple manual idle controller * units: % - * offset 6204 + * offset 5604 */ float cltCrankingCorr[CLT_CRANKING_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: RPM - * offset 6236 + * offset 5636 */ scaled_channel idleAdvanceBins[IDLE_ADVANCE_CURVE_SIZE]; /** * Optional timing advance table for Idle (see useSeparateAdvanceForIdle) * units: deg - * offset 6244 + * offset 5644 */ float idleAdvance[IDLE_ADVANCE_CURVE_SIZE]; /** * units: RPM - * offset 6276 + * offset 5676 */ scaled_channel idleVeRpmBins[IDLE_VE_SIZE]; /** * units: load - * offset 6280 + * offset 5680 */ uint8_t idleVeLoadBins[IDLE_VE_SIZE]; /** * units: % - * offset 6284 + * offset 5684 */ scaled_channel idleVeTable[IDLE_VE_SIZE][IDLE_VE_SIZE]; /** - * offset 6316 + * offset 5716 */ lua_script_t luaScript; /** * units: C - * offset 14316 + * offset 13716 */ float cltFuelCorrBins[CLT_CURVE_SIZE]; /** * units: ratio - * offset 14380 + * offset 13780 */ float cltFuelCorr[CLT_CURVE_SIZE]; /** * units: C - * offset 14444 + * offset 13844 */ float iatFuelCorrBins[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14508 + * offset 13908 */ float iatFuelCorr[IAT_CURVE_SIZE]; /** * units: ratio - * offset 14572 + * offset 13972 */ float crankingFuelCoef[CRANKING_CURVE_SIZE]; /** * units: C - * offset 14604 + * offset 14004 */ float crankingFuelBins[CRANKING_CURVE_SIZE]; /** * units: ratio - * offset 14636 + * offset 14036 */ float crankingCycleCoef[CRANKING_CURVE_SIZE]; /** * units: counter - * offset 14668 + * offset 14068 */ float crankingCycleBins[CRANKING_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: C - * offset 14700 + * offset 14100 */ float cltIdleCorrBins[CLT_CURVE_SIZE]; /** * CLT-based idle position multiplier for simple manual idle controller * units: ratio - * offset 14764 + * offset 14164 */ float cltIdleCorr[CLT_CURVE_SIZE]; /** @@ -5094,527 +4873,654 @@ struct persistent_config_s { * kg/hour value. * By the way 2.081989116 kg/h = 1 ft3/m * units: kg/hour - * offset 14828 + * offset 14228 */ float mafDecoding[MAF_DECODING_COUNT]; /** * units: V - * offset 14956 + * offset 14356 */ float mafDecodingBins[MAF_DECODING_COUNT]; /** * units: deg - * offset 15084 + * offset 14484 */ scaled_channel ignitionIatCorrTable[8][8]; /** * units: C - * offset 15148 + * offset 14548 */ int8_t ignitionIatCorrTempBins[8]; /** * units: Load - * offset 15156 + * offset 14556 */ scaled_channel ignitionIatCorrLoadBins[8]; /** * units: deg - * offset 15164 + * offset 14564 */ int16_t injectionPhase[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: Load - * offset 15676 + * offset 15076 */ uint16_t injPhaseLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 15708 + * offset 15108 */ uint16_t injPhaseRpmBins[FUEL_RPM_COUNT]; /** * units: onoff - * offset 15740 + * offset 15140 */ uint8_t tcuSolenoidTable[TCU_SOLENOID_COUNT][TCU_GEAR_COUNT]; /** * units: kPa - * offset 15800 + * offset 15200 */ scaled_channel mapEstimateTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: % TPS - * offset 16312 + * offset 15712 */ scaled_channel mapEstimateTpsBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 16344 + * offset 15744 */ uint16_t mapEstimateRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 16376 + * offset 15776 */ int8_t vvtTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16440 + * offset 15840 */ uint16_t vvtTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16456 + * offset 15856 */ uint16_t vvtTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 16472 + * offset 15872 */ int8_t vvtTable2[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 16536 + * offset 15936 */ uint16_t vvtTable2LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 16552 + * offset 15952 */ uint16_t vvtTable2RpmBins[SCRIPT_TABLE_8]; /** * units: deg - * offset 16568 + * offset 15968 */ scaled_channel ignitionTable[IGN_LOAD_COUNT][IGN_RPM_COUNT]; /** * units: Load - * offset 17080 + * offset 16480 */ uint16_t ignitionLoadBins[IGN_LOAD_COUNT]; /** * units: RPM - * offset 17112 + * offset 16512 */ uint16_t ignitionRpmBins[IGN_RPM_COUNT]; /** * units: % - * offset 17144 + * offset 16544 */ scaled_channel veTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** * units: kPa - * offset 17656 + * offset 17056 */ uint16_t veLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 17688 + * offset 17088 */ uint16_t veRpmBins[FUEL_RPM_COUNT]; /** * units: lambda - * offset 17720 + * offset 17120 */ scaled_channel lambdaTable[FUEL_LOAD_COUNT][FUEL_RPM_COUNT]; /** - * offset 17976 + * offset 17376 */ uint16_t lambdaLoadBins[FUEL_LOAD_COUNT]; /** * units: RPM - * offset 18008 + * offset 17408 */ uint16_t lambdaRpmBins[FUEL_RPM_COUNT]; /** * units: value - * offset 18040 + * offset 17440 */ float tpsTpsAccelTable[TPS_TPS_ACCEL_TABLE][TPS_TPS_ACCEL_TABLE]; /** * units: from - * offset 18296 + * offset 17696 */ float tpsTpsAccelFromRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: to - * offset 18328 + * offset 17728 */ float tpsTpsAccelToRpmBins[TPS_TPS_ACCEL_TABLE]; /** * units: value - * offset 18360 + * offset 17760 */ float scriptTable1[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 18616 + * offset 18016 */ int16_t scriptTable1LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 18632 + * offset 18032 */ int16_t scriptTable1RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 18648 + * offset 18048 */ float scriptTable2[TABLE_2_LOAD_SIZE][TABLE_2_RPM_SIZE]; /** * units: L - * offset 18904 + * offset 18304 */ int16_t scriptTable2LoadBins[TABLE_2_LOAD_SIZE]; /** * units: RPM - * offset 18920 + * offset 18320 */ int16_t scriptTable2RpmBins[TABLE_2_RPM_SIZE]; /** * units: value - * offset 18936 + * offset 18336 */ uint8_t scriptTable3[SCRIPT_TABLE_8][SCRIPT_TABLE_8]; /** * units: L - * offset 19000 + * offset 18400 */ int16_t scriptTable3LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19016 + * offset 18416 */ int16_t scriptTable3RpmBins[SCRIPT_TABLE_8]; /** * units: value - * offset 19032 + * offset 18432 */ uint8_t scriptTable4[SCRIPT_TABLE_8][TABLE_4_RPM]; /** * units: L - * offset 19112 + * offset 18512 */ int16_t scriptTable4LoadBins[SCRIPT_TABLE_8]; /** * units: RPM - * offset 19128 + * offset 18528 */ int16_t scriptTable4RpmBins[TABLE_4_RPM]; /** - * offset 19148 + * offset 18548 */ uint16_t ignTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19156 + * offset 18556 */ uint16_t ignTrimRpmBins[TRIM_SIZE]; /** - * offset 19164 + * offset 18564 */ cyl_trim_s ignTrims[12]; /** - * offset 19356 + * offset 18756 */ uint16_t fuelTrimLoadBins[TRIM_SIZE]; /** * units: rpm - * offset 19364 + * offset 18764 */ uint16_t fuelTrimRpmBins[TRIM_SIZE]; /** - * offset 19372 + * offset 18772 */ cyl_trim_s fuelTrims[12]; /** * units: ratio - * offset 19564 + * offset 18964 */ scaled_channel crankingFuelCoefE100[CRANKING_CURVE_SIZE]; /** * units: Airmass - * offset 19580 + * offset 18980 */ scaled_channel tcu_pcAirmassBins[TCU_MAGIC_SIZE]; /** * units: % - * offset 19588 + * offset 18988 */ uint8_t tcu_pcValsR[TCU_MAGIC_SIZE]; /** * units: % - * offset 19596 + * offset 18996 */ uint8_t tcu_pcValsN[TCU_MAGIC_SIZE]; /** * units: % - * offset 19604 + * offset 19004 */ uint8_t tcu_pcVals1[TCU_MAGIC_SIZE]; /** * units: % - * offset 19612 + * offset 19012 */ uint8_t tcu_pcVals2[TCU_MAGIC_SIZE]; /** * units: % - * offset 19620 + * offset 19020 */ uint8_t tcu_pcVals3[TCU_MAGIC_SIZE]; /** * units: % - * offset 19628 + * offset 19028 */ uint8_t tcu_pcVals4[TCU_MAGIC_SIZE]; /** * units: % - * offset 19636 + * offset 19036 */ uint8_t tcu_pcVals12[TCU_MAGIC_SIZE]; /** * units: % - * offset 19644 + * offset 19044 */ uint8_t tcu_pcVals23[TCU_MAGIC_SIZE]; /** * units: % - * offset 19652 + * offset 19052 */ uint8_t tcu_pcVals34[TCU_MAGIC_SIZE]; /** * units: % - * offset 19660 + * offset 19060 */ uint8_t tcu_pcVals21[TCU_MAGIC_SIZE]; /** * units: % - * offset 19668 + * offset 19068 */ uint8_t tcu_pcVals32[TCU_MAGIC_SIZE]; /** * units: % - * offset 19676 + * offset 19076 */ uint8_t tcu_pcVals43[TCU_MAGIC_SIZE]; /** * units: TPS - * offset 19684 + * offset 19084 */ uint8_t tcu_tccTpsBins[8]; /** * units: MPH - * offset 19692 + * offset 19092 */ uint8_t tcu_tccLockSpeed[8]; /** * units: MPH - * offset 19700 + * offset 19100 */ uint8_t tcu_tccUnlockSpeed[8]; /** * units: KPH - * offset 19708 + * offset 19108 */ uint8_t tcu_32SpeedBins[8]; /** * units: % - * offset 19716 + * offset 19116 */ uint8_t tcu_32Vals[8]; /** * units: % - * offset 19724 + * offset 19124 */ scaled_channel throttle2TrimTable[ETB2_TRIM_SIZE][ETB2_TRIM_SIZE]; /** * units: % - * offset 19760 + * offset 19160 */ uint8_t throttle2TrimTpsBins[ETB2_TRIM_SIZE]; /** * units: RPM - * offset 19766 + * offset 19166 */ scaled_channel throttle2TrimRpmBins[ETB2_TRIM_SIZE]; /** * units: deg - * offset 19772 + * offset 19172 */ scaled_channel maxKnockRetardTable[6][6]; /** * units: % - * offset 19808 + * offset 19208 */ uint8_t maxKnockRetardLoadBins[6]; /** * units: RPM - * offset 19814 + * offset 19214 */ scaled_channel maxKnockRetardRpmBins[6]; /** * units: deg - * offset 19820 + * offset 19220 */ scaled_channel ALSTimingRetardTable[4][4]; /** * units: TPS - * offset 19852 + * offset 19252 */ uint16_t alsIgnRetardLoadBins[4]; /** * units: RPM - * offset 19860 + * offset 19260 */ uint16_t alsIgnRetardrpmBins[4]; /** * units: percent - * offset 19868 + * offset 19268 */ scaled_channel ALSFuelAdjustment[4][4]; /** * units: TPS - * offset 19900 + * offset 19300 */ uint16_t alsFuelAdjustmentLoadBins[4]; /** * units: RPM - * offset 19908 + * offset 19308 */ uint16_t alsFuelAdjustmentrpmBins[4]; /** * units: ratio - * offset 19916 + * offset 19316 */ scaled_channel ALSIgnSkipTable[4][4]; /** * units: TPS - * offset 19948 + * offset 19348 */ uint16_t alsIgnSkipLoadBins[4]; /** * units: RPM - * offset 19956 + * offset 19356 */ uint16_t alsIgnSkiprpmBins[4]; /** - * offset 19964 + * offset 19364 */ blend_table_s ignBlends[IGN_BLEND_COUNT]; /** - * offset 20716 + * offset 20116 */ blend_table_s veBlends[VE_BLEND_COUNT]; /** * units: % - * offset 21468 + * offset 20868 */ scaled_channel throttleEstimateEffectiveAreaBins[12]; /** * In units of g/s normalized to choked flow conditions * units: g/s - * offset 21492 + * offset 20892 */ scaled_channel throttleEstimateEffectiveAreaValues[12]; /** - * offset 21516 + * offset 20916 */ blend_table_s boostOpenLoopBlends[BOOST_BLEND_COUNT]; /** - * offset 21892 + * offset 21292 */ blend_table_s boostClosedLoopBlends[BOOST_BLEND_COUNT]; /** * units: level - * offset 22268 + * offset 21668 */ uint8_t tcu_rangeP[6]; /** * units: level - * offset 22274 + * offset 21674 */ uint8_t tcu_rangeR[6]; /** * units: level - * offset 22280 + * offset 21680 */ uint8_t tcu_rangeN[6]; /** * units: level - * offset 22286 + * offset 21686 */ uint8_t tcu_rangeD[6]; /** * units: level - * offset 22292 + * offset 21692 */ uint8_t tcu_rangeM[6]; /** * units: level - * offset 22298 + * offset 21698 */ uint8_t tcu_rangeM3[6]; /** * units: level - * offset 22304 + * offset 21704 */ uint8_t tcu_rangeM2[6]; /** * units: level - * offset 22310 + * offset 21710 */ uint8_t tcu_rangeM1[6]; /** * units: level - * offset 22316 + * offset 21716 */ uint8_t tcu_rangePlus[6]; /** * units: level - * offset 22322 + * offset 21722 */ uint8_t tcu_rangeMinus[6]; /** * units: level - * offset 22328 + * offset 21728 */ uint8_t tcu_rangeLow[6]; /** * units: lambda - * offset 22334 + * offset 21734 */ scaled_channel lambdaMaxDeviationTable[4][4]; /** - * offset 22350 + * offset 21750 */ uint16_t lambdaMaxDeviationLoadBins[4]; /** * units: RPM - * offset 22358 + * offset 21758 */ uint16_t lambdaMaxDeviationRpmBins[4]; /** * units: % - * offset 22366 + * offset 21766 */ uint8_t injectorStagingTable[INJ_STAGING_COUNT][INJ_STAGING_COUNT]; /** - * offset 22402 + * offset 21802 */ uint16_t injectorStagingLoadBins[INJ_STAGING_COUNT]; /** * units: RPM - * offset 22414 + * offset 21814 */ uint16_t injectorStagingRpmBins[INJ_STAGING_COUNT]; + /** + * units: deg C + * offset 21826 + */ + int8_t wwCltBins[WWAE_TABLE_SIZE]; + /** + * offset 21834 + */ + scaled_channel wwTauCltValues[WWAE_TABLE_SIZE]; + /** + * offset 21842 + */ + scaled_channel wwBetaCltValues[WWAE_TABLE_SIZE]; + /** + * units: kPa + * offset 21850 + */ + int8_t wwMapBins[WWAE_TABLE_SIZE]; + /** + * offset 21858 + */ + scaled_channel wwTauMapValues[WWAE_TABLE_SIZE]; + /** + * offset 21866 + */ + scaled_channel wwBetaMapValues[WWAE_TABLE_SIZE]; + /** + * units: % + * offset 21874 + */ + scaled_channel hpfpLobeProfileQuantityBins[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: deg + * offset 21890 + */ + scaled_channel hpfpLobeProfileAngle[HPFP_LOBE_PROFILE_SIZE]; + /** + * units: volts + * offset 21906 + */ + uint8_t hpfpDeadtimeVoltsBins[HPFP_DEADTIME_SIZE]; + /** + * units: ms + * offset 21914 + */ + scaled_channel hpfpDeadtimeMS[HPFP_DEADTIME_SIZE]; + /** + * units: kPa + * offset 21930 + */ + uint16_t hpfpTarget[HPFP_TARGET_SIZE][HPFP_TARGET_SIZE]; + /** + * units: load + * offset 22130 + */ + scaled_channel hpfpTargetLoadBins[HPFP_TARGET_SIZE]; + /** + * units: RPM + * offset 22150 + */ + scaled_channel hpfpTargetRpmBins[HPFP_TARGET_SIZE]; + /** + * units: % + * offset 22160 + */ + int8_t hpfpCompensation[HPFP_COMPENSATION_SIZE][HPFP_COMPENSATION_SIZE]; + /** + * units: cc/lobe + * offset 22260 + */ + scaled_channel hpfpCompensationLoadBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22280 + */ + scaled_channel hpfpCompensationRpmBins[HPFP_COMPENSATION_SIZE]; + /** + * units: RPM + * offset 22290 + */ + uint16_t knockNoiseRpmBins[ENGINE_NOISE_CURVE_SIZE]; + /** + * Knock sensor output knock detection threshold depending on current RPM. + * units: dB + * offset 22322 + */ + scaled_channel knockBaseNoise[ENGINE_NOISE_CURVE_SIZE]; + /** + * units: RPM + * offset 22338 + */ + scaled_channel tpsTspCorrValuesBins[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: multiplier + * offset 22342 + */ + scaled_channel tpsTspCorrValues[TPS_TPS_ACCEL_CLT_CORR_TABLE]; + /** + * units: C + * offset 22346 + */ + int8_t cltRevLimitRpmBins[CLT_LIMITER_CURVE_SIZE]; + /** + * units: RPM + * offset 22350 + */ + uint16_t cltRevLimitRpm[CLT_LIMITER_CURVE_SIZE]; + /** + * units: volt + * offset 22358 + */ + scaled_channel fuelLevelBins[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: % + * offset 22374 + */ + uint8_t fuelLevelValues[FUEL_LEVEL_TABLE_COUNT]; + /** + * units: volts + * offset 22382 + */ + scaled_channel dwellVoltageCorrVoltBins[DWELL_CURVE_SIZE]; + /** + * units: multiplier + * offset 22390 + */ + scaled_channel dwellVoltageCorrValues[DWELL_CURVE_SIZE]; /** * need 4 byte alignment * units: units - * offset 22426 + * offset 22398 */ - uint8_t alignmentFill_at_22426[2]; + uint8_t alignmentFill_at_22398[2]; }; -static_assert(sizeof(persistent_config_s) == 22428); +static_assert(sizeof(persistent_config_s) == 22400); // end -// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Mon Mar 18 17:16:09 UTC 2024 +// this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Fri Mar 22 17:15:17 UTC 2024 diff --git a/generated/controllers/generated/rusefi_generated_XXX.h b/generated/controllers/generated/rusefi_generated_XXX.h index 2fc4721..af91c95 100644 --- a/generated/controllers/generated/rusefi_generated_XXX.h +++ b/generated/controllers/generated/rusefi_generated_XXX.h @@ -307,7 +307,7 @@ #define ego_sensor_e_ES_Innovate_MTX_L 1 #define ego_sensor_e_ES_PLX 4 #define EGT_CHANNEL_COUNT 8 -#define engine_configuration_s_size 4708 +#define engine_configuration_s_size 4220 #define engine_load_mode_e_auto_enum 0="LM_SPEED_DENSITY",2="LM_ALPHA_N",3="LM_LUA",100="LM_MOCK",1="LM_REAL_MAF" #define engine_load_mode_e_enum "Speed Density", "MAF Air Charge", "Alpha-N", "Lua" #define engine_load_mode_e_LM_ALPHA_N 2 @@ -440,7 +440,8 @@ #define ETB_BIAS_CURVE_LENGTH 8 #define ETB_COUNT 2 #define ETB_HW_MAX_FREQUENCY 3000 -#define FLASH_DATA_VERSION 20014 +#define FANCY_OPTIONS_COUNT 16 +#define FLASH_DATA_VERSION 20015 #define FUEL_LEVEL_TABLE_COUNT 8 #define FUEL_LOAD_COUNT 16 #define fuel_pressure_sensor_mode_e_auto_enum 0="FPM_Absolute",2="FPM_Differential",1="FPM_Gauge" @@ -1105,7 +1106,7 @@ #define PACK_PERCENT_BYTE_MULT 100.0 #define PEDAL_TO_TPS_SIZE 8 #define PERCENT_TRIM_BYTE_PACKING_DIV 0.02 -#define persistent_config_s_size 22428 +#define persistent_config_s_size 22400 #define pid_s_size 20 #define pin_input_mode_e_auto_enum 0="PI_DEFAULT",2="PI_PULLDOWN",1="PI_PULLUP" #define pin_input_mode_e_enum "DEFAULT", "PULLUP", "PULLDOWN" @@ -1185,7 +1186,7 @@ #define show_microRusEFI_presets false #define show_Proteus_presets false #define show_test_presets false -#define SIGNATURE_HASH 4275859823 +#define SIGNATURE_HASH 4019883890 #define SIMULATOR_TUNE_BIN_FILE_NAME "generated/simulator_tune_image.bin" #define SIMULATOR_TUNE_BIN_FILE_NAME_PREFIX "generated/simulator_tune_image" #define SIMULATOR_TUNE_BIN_FILE_NAME_SUFFIX ".bin" @@ -1241,7 +1242,7 @@ #define TOOTH_PACKET_SIZE 2 #define TOP_DEAD_CENTER_MESSAGE "r" #define TORQUE_CURVE_SIZE 6 -#define TOTAL_CONFIG_SIZE 22428 +#define TOTAL_CONFIG_SIZE 22400 #define TPS_2_BYTE_PACKING_MULT 100 #define TPS_TPS_ACCEL_CLT_CORR_TABLE 4 #define TPS_TPS_ACCEL_TABLE 8 @@ -1426,7 +1427,7 @@ #define TS_CRC_CHECK_COMMAND_char k #define TS_EXECUTE 'E' #define TS_EXECUTE_char E -#define TS_FILE_VERSION 20230721 +#define TS_FILE_VERSION 20240101 #define TS_FILE_VERSION_OFFSET 124 #define TS_GET_COMPOSITE_BUFFER_DONE_DIFFERENTLY '8' #define TS_GET_COMPOSITE_BUFFER_DONE_DIFFERENTLY_char 8 @@ -1501,6 +1502,7 @@ #define ts_show_etb true #define ts_show_etb_pins false #define ts_show_fancy_hardware false +#define ts_show_fancy_options true #define ts_show_firing_order true #define ts_show_forced_induction true #define ts_show_fuel_pump true @@ -1554,7 +1556,7 @@ #define ts_show_vr_threshold_all false #define ts_show_vr_threshold_pins true #define ts_show_vvt_output true -#define TS_SIGNATURE "rusEFI default.2024.03.19.XXX.4275859823" +#define TS_SIGNATURE "rusEFI default.2024.03.22.XXX.4019883890" #define TS_SIMULATE_CAN '>' #define TS_SIMULATE_CAN_char > #define TS_SINGLE_WRITE_COMMAND 'W' diff --git a/generated/controllers/generated/signature_XXX.h b/generated/controllers/generated/signature_XXX.h index f1d706a..33dc44e 100644 --- a/generated/controllers/generated/signature_XXX.h +++ b/generated/controllers/generated/signature_XXX.h @@ -2,5 +2,5 @@ // was generated automatically by rusEFI tool config_definition-all.jar based on gen_config.sh by SignatureConsumer // -#define SIGNATURE_HASH 4275859823 -#define TS_SIGNATURE "rusEFI default.2024.03.19.XXX.4275859823" +#define SIGNATURE_HASH 4019883890 +#define TS_SIGNATURE "rusEFI default.2024.03.22.XXX.4019883890" diff --git a/generated/tunerstudio/generated/rusefi_XXX.ini b/generated/tunerstudio/generated/rusefi_XXX.ini index e029463..d17f557 100644 --- a/generated/tunerstudio/generated/rusefi_XXX.ini +++ b/generated/tunerstudio/generated/rusefi_XXX.ini @@ -38,12 +38,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI default.2024.03.19.XXX.4275859823" + signature = "rusEFI default.2024.03.22.XXX.4019883890" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmware version for title bar. - signature= "rusEFI default.2024.03.19.XXX.4275859823" ; signature is expected to be 7 or more characters. + signature= "rusEFI default.2024.03.22.XXX.4019883890" ; signature is expected to be 7 or more characters. ; TS will try to use legacy temp units in some cases, showing "deg F" on a CLT gauge that's actually deg C useLegacyFTempUnits = false @@ -100,9 +100,9 @@ enable2ndByteCanID = false #define adc_channel_e_list="Disabled", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5" ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Tue Mar 19 17:16:03 UTC 2024 +; this section was generated automatically by rusEFI tool config_definition-all.jar based on (unknown script) integration/rusefi_config.txt Fri Mar 22 17:15:17 UTC 2024 -pageSize = 22428 +pageSize = 22400 page = 1 engineType = bits, U16, 0, [0:6], 0="DEFAULT_FRANKENSO",22="BMW_M52",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",35="ET_UNUSED_35",55="ET_UNUSED_55",56="ET_UNUSED_56",105="FERRARI_F136",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",59="FRANKENSO_TEST_33810",15="FUEL_BENCH",98="GM_SBC",8="GY6_139QMB",6="HARLEY",84="HELLEN_121_NISSAN_4_CYL",72="HELLEN_121_NISSAN_6_CYL",85="HELLEN_121_NISSAN_8_CYL",87="HELLEN_121_NISSAN_ALMERA_N16",71="HELLEN_121_VAG_4_CYL",77="HELLEN_121_VAG_5_CYL",81="HELLEN_121_VAG_8_CYL",78="HELLEN_121_VAG_V6_CYL",79="HELLEN_121_VAG_VR6_CYL",36="HELLEN_128_MERCEDES_4_CYL",88="HELLEN_128_MERCEDES_6_CYL",89="HELLEN_128_MERCEDES_8_CYL",82="HELLEN_154_HYUNDAI_COUPE_BK1",95="HELLEN_154_HYUNDAI_COUPE_BK2",76="HELLEN_154_VAG",75="HELLEN_2CHAN_STIM_QC",74="HELLEN_4CHAN_STIM_QC",57="HELLEN_HONDA_BCM",43="HONDA_600",90="HONDA_K",66="HONDA_OBD1",91="HONDA_OBD2A",104="HYUNDAI_PB",60="L9779_BENCH_ENGINE",54="MAVERICK_X3",34="MAZDA_MIATA_NA6",80="MAZDA_MIATA_NA94",10="MAZDA_MIATA_NA96",83="MAZDA_MIATA_NB1",69="MAZDA_MIATA_NB2",86="MAZDA_MIATA_NB2_36",20="MAZDA_MIATA_NC",33="ME17_9_MISC",68="MERCEDES_M111",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",9="POLARIS_RZR",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",27="PROTEUS_GM_LS_4",25="PROTEUS_LUA_DEMO",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",73="PROTEUS_STIM_QC",39="PROTEUS_VW_B6",29="SACHS",92="SIMULATOR_CONFIG",70="SUBARU_EG33",100="TEST_100",101="TEST_101",18="TEST_33816",28="TEST_CRANK_ENGINE",48="TEST_DC_WASTEGATE_DISCOVERY",26="TEST_ENGINE",45="TEST_ENGINE_VVT",52="TEST_ISSUE_366_BOTH",53="TEST_ISSUE_366_RISE",19="TEST_ROTARY",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",102="UNUSED102",17="UNUSED17",24="UNUSED24",47="UNUSED47",67="UNUSED67",93="UNUSED93",94="UNUSED94",21="UNUSED_21",65="UNUSED_65",97="UNUSED_97",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST" startButtonSuppressOnStartUpMs = scalar, U16, 2, "", 1, 0, 0, 32000, 0 @@ -114,9 +114,25 @@ multisparkMaxRpm = scalar, U08, 12, "rpm", 50.0, 0, 0, 3000, 0 maxAcRpm = scalar, U08, 13, "rpm", 50.0, 0, 0, 10000, 0 maxAcTps = scalar, U08, 14, "%", 1, 0, 0, 100, 0 maxAcClt = scalar, U08, 15, "deg C", 1, 0, 0, 150, 0 -knockNoiseRpmBins = array, U16, 16, [16], "RPM", 1, 0, 0, 30000, 0 +compressionRatio = scalar, F32, 16, "CR", 1, 0, 0, 300, 1 +wastegatePositionMin = scalar, U16, 20, "mv", 1, 0, 0, 5000, 0 +wastegatePositionMax = scalar, U16, 22, "mv", 1, 0, 0, 5000, 0 +idlePositionMin = scalar, U16, 24, "mv", 1, 0, 0, 5000, 0 +idlePositionMax = scalar, U16, 26, "mv", 1, 0, 0, 5000, 0 +mainRelayPin = bits, U16, 28, [0:8], $output_pin_e_list +sdCardCsPin = bits, U16, 30, [0:7], $gpio_list +canTxPin = bits, U16, 32, [0:7], $gpio_list +canRxPin = bits, U16, 34, [0:7], $gpio_list +etbExpAverageLength = scalar, U16, 36, "", 1, 0, 0, 32000, 0 +launchFuelAdderPercent = scalar, S08, 38, "%", 1, 0, 0, 100, 0 +etbJamTimeout = scalar, U08, 39, "sec", 0.02, 0, 0, 5, 2 +tachOutputPin = bits, U16, 40, [0:8], $output_pin_e_list +tachOutputPinMode = bits, U08, 42, [0:1], "default", "default inverted", "open collector", "open collector inverted" +acIdleExtraOffset = scalar, U08, 43, "%", 1, 0, 0, 100, 0 +manIdlePosition = scalar, F32, 44, "%", 1, 0, 0, 100, 0 multisparkMaxSparkingAngle = scalar, U08, 48, "deg", 1, 0, 0, 60, 0 multisparkMaxExtraSparkCount = scalar, U08, 49, "count", 1, 0, 1, 5, 0 +vvtControlMinRpm = scalar, S16, 50, "RPM", 1, 0, 0, 3000, 0 injector_flow = scalar, F32, 52, "cm3/min", 1, 0, 0, 99999, 2 injector_battLagCorrBins = array, F32, 56, [8], "volts", 1, 0, 0, 20, 2 injector_battLagCorr = array, F32, 88, [8], "ms", 1, 0, 0, 50, 2 @@ -195,6 +211,7 @@ displacement = scalar, U16, 432, "L", 0.001, 0, 0, 65, 3 triggerSimulatorRpm = scalar, U16, 434, "RPM", 1, 0, 0, 30000, 0 cylindersCount = scalar, U32, 436, "", 1, 0, 1, 12, 0 firingOrder = bits, U08, 440, [0:6], "One Cylinder", "1-3-4-2", "1-2-4-3", "1-3-2-4", "1-5-3-6-2-4", "1-8-4-3-6-5-7-2", "1-2-4-5-3", "1-4-2-5-3-6", "1-2", "1-2-3-4-5-6", "1-2-3", "1-8-7-2-6-5-4-3", "1-5-4-2-6-3-7-8", "1-6-3-2-5-4", "1-10-9-4-3-6-5-8-7_2", "1-7-5-11-3-9-6-12-2-8-4-10", "1-7-4-10-2-8-6-12-3-9-5-11", "1-4-3-2", "1-12-5-8-3-10-6-7-2-11-4-9", "1-2-7-8-4-5-6-3", "1-3-7-2-6-5-4-8", "1-2-3-4-5-6-7-8-9", "INVALID", "1-2-3-4-5-6-7-8-9-10-11-12", "1-3-2", "1-2-3-4-5-6-7-8", "1-5-4-8-6-3-7-2", "1-4-3-6-2-5", "1-8-7-3-6-5-4-2", "1-6-2-4-3-5", "1-6-5-4-3-2", "1-4-5-2-3-6", "1-5-4-8-3-7-2-6", "fo33", "fo34", "fo35", "fo36", "fo37", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +justATempTest = scalar, U08, 441, "", 1, 0, 0, 100, 0 communityCommsLedPid = bits, U16, 442, [0:7], $gpio_list cylinderBore = scalar, F32, 444, "mm", 1, 0, 0, 20000, 2 fuelAlgorithm = bits, U08, 448, [0:2], "Speed Density", "MAF Air Charge", "Alpha-N", "Lua", "INVALID", "INVALID", "INVALID", "INVALID" @@ -208,8 +225,10 @@ crankingTimingAngle = scalar, F32, 456, "deg", 1, 0, -30, 30, 0 ignitionMode = bits, U08, 460, [0:1], "Single Coil", "Individual Coils", "Wasted Spark", "Two Distributors" gapTrackingLengthOverride = scalar, S08, 461, "count", 1, 0, 1, 18, 0 maxIdleVss = scalar, U08, 462, "kph", 1, 0, 0, 100, 0 +camDecoder2jzPrecision = scalar, U08, 463, "", 1, 0, 0, 100, 0 minOilPressureAfterStart = scalar, U16, 464, "kPa", 1, 0, 0, 1000, 0 timingMode = bits, U08, 466, [0:0], "dynamic", "fixed" +canNbcType = bits, U08, 467, [0:4], "None", "FIAT", "VAG", "MAZDA RX8", "BMW E46", "W202", "BMW E90", "Haltech", "VAG MQB", "Nissan VQ35", "Genesis Coupe", "Honda K", "AiM", "MS Simplified Broadcast", "type 14", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" fixedModeTiming = scalar, F32, 468, "RPM", 1, 0, 0, 3000, 0 globalTriggerAngleOffset = scalar, F32, 472, "deg btdc", 1, 0, -720, 720, 0 analogInputDividerCoefficient = scalar, F32, 476, "coef", 1, 0, 0.01, 10, 2 @@ -218,1433 +237,1425 @@ fanOnTemperature = scalar, F32, 484, "deg C", 1, 0, 0, 150, 0 fanOffTemperature = scalar, F32, 488, "deg C", 1, 0, 0, 150, 0 acrPin = bits, U16, 492, [0:8], $output_pin_e_list driveWheelRevPerKm = scalar, F32, 496, "revs/km", 1, 0, 100, 1000, 1 -canNbcType = bits, U08, 500, [0:4], "None", "FIAT", "VAG", "MAZDA RX8", "BMW E46", "W202", "BMW E90", "Haltech", "VAG MQB", "Nissan VQ35", "Genesis Coupe", "Honda K", "AiM", "MS Simplified Broadcast", "type 14", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -canSleepPeriodMs = scalar, S32, 504, "ms", 1, 0, 0, 1000, 2 -camDecoder2jzPrecision = scalar, U08, 508, "", 1, 0, 0, 100, 0 -justATempTest = scalar, U08, 509, "", 1, 0, 0, 100, 0 -unusedHere333 = scalar, U08, 510, "", 1, 0, 0, 100, 0 -unusedHere334 = scalar, U08, 511, "", 1, 0, 0, 100, 0 -byFirmwareVersion = scalar, S32, 512, "index", 1, 0, 0, 300, 0 -tps1_1AdcChannel = bits, U08, 516, [0:5], $adc_channel_e_list -vbattAdcChannel = bits, U08, 517, [0:5], $adc_channel_e_list -fuelLevelSensor = bits, U08, 518, [0:5], $adc_channel_e_list -tps2_1AdcChannel = bits, U08, 519, [0:5], $adc_channel_e_list -idle_derivativeFilterLoss = scalar, F32, 520, "x", 1, 0, -1000000, 1000000, 4 -trailingSparkAngle = scalar, S32, 524, "angle", 1, 0, 0, 720, 0 -trigger_type = bits, U32, 528, [0:6], "custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "INVALID", "GM_7X", "Daihatsu 3 cylinder", "Mazda SOHC 4", "60-2", "36-1", "Mercedes Two Segment", "Single Tooth", "EZ30", "INVALID", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "INVALID", "Half Moon", "Dodge Ram 1+16", "60-2 VW", "Benelli Tre", "Dodge Stratus", "36_2_2_2", "Nissan Primera", "dev 2JZ 3/34 simulator", "Rover K", "GM 24x 5 degree", "Honda CBR 600 Cam", "Mitsubishi 4G92/93/94 Cam 29", "Honda CBR 600 custom", "3-1 skipped", "Dodge Neon 2003 crank", "Miata NB", "Mitsubishi 4G63 Cam 34", "INVALID", "Subaru 7+6", "Jeep 18-2-2-2", "12crank/24cam", "Dodge Neon 1995 crank only", "Jeep XJ 4 cyl", "FiatIAQ_P8", "Mazda Z5", "INVALID", "Renix 44-2-2", "Renix 66-2-2-2", "Honda K 12+1", "INVALID", "36-2", "Subaru SVX", "1+16", "Subaru 7 without 6", "INVALID", "TriTach", "GM 60-2-2-2", "Skoda Favorit", "Barra 3+1 Cam", "Kawa KX450F", "Nissan VQ35", "INVALID", "Nissan VQ30", "Nissan QR25", "INVALID", "Subaru SVX Crank 1", "Subaru SVX Cam VVT", "Ford PIP", "Suzuki G13B", "Honda K 4+1", "Nissan MR18 Crank", "32-2", "36-2-1", "36-2-1-1", "3-0", "INVALID", "GM 24x 3 degree", "60-2-2 F3R", "Mitsu 4G63 Crank", "x2 30 Deg camshaft BTDC", "INVALID", "Mitsu 6G72 Cam", "6-0", "Daihatsu 4 cylinder", "trg82", "trg83", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -trigger_customTotalToothCount = scalar, S32, 532, "number", 1, 0, 1, 300, 0 -trigger_customSkippedToothCount = scalar, S32, 536, "number", 1, 0, 0, 300, 0 -airByRpmTaper = scalar, F32, 540, "%", 1, 0, 0, 50, 1 -hip9011SpiDevice = bits, U08, 544, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -boostControlSafeDutyCycle = scalar, U08, 545, "%", 1, 0, 0, 100, 0 -mafAdcChannel = bits, U08, 546, [0:5], $adc_channel_e_list -acrRevolutions = scalar, U08, 547, "", 1, 0, 0, 100, 0 -calibrationBirthday = scalar, S32, 548, "", 1, 0, 0, 100, 0 -adcVcc = scalar, F32, 552, "volts", 1, 0, 0, 6, 3 -mapCamDetectionAnglePosition = scalar, F32, 556, "Deg", 1, 0, 0, 360, 0 -camInputs1 = bits, U16, 560, [0:7], $brain_input_pin_e_list -camInputs2 = bits, U16, 562, [0:7], $brain_input_pin_e_list -camInputs3 = bits, U16, 564, [0:7], $brain_input_pin_e_list -camInputs4 = bits, U16, 566, [0:7], $brain_input_pin_e_list -afr_hwChannel = bits, U08, 568, [0:5], $adc_channel_e_list -afr_hwChannel2 = bits, U08, 569, [0:5], $adc_channel_e_list -afr_v1 = scalar, F32, 572, "volts", 1, 0, 0, 10, 2 -afr_value1 = scalar, F32, 576, "AFR", 1, 0, 0, 1000, 2 -afr_v2 = scalar, F32, 580, "volts", 1, 0, 0, 10, 2 -afr_value2 = scalar, F32, 584, "AFR", 1, 0, 0, 1000, 2 -throttlePedalPositionAdcChannel = bits, U08, 588, [0:5], $adc_channel_e_list -etbSplit = scalar, U08, 589, "%", 0.1, 0, 0, 20, 1 -tle6240_cs = bits, U16, 590, [0:7], $gpio_list -tle6240_csPinMode = bits, U08, 592, [0:1], "default", "default inverted", "open collector", "open collector inverted" -mc33810_csPinMode = bits, U08, 593, [0:1], "default", "default inverted", "open collector", "open collector inverted" -throttlePedalUpPin = bits, U16, 594, [0:7], $switch_input_pin_e_list -baroSensor_lowValue = scalar, F32, 596, "kpa", 1, 0, -400, 800, 2 -baroSensor_highValue = scalar, F32, 600, "kpa", 1, 0, -400, 800, 2 -baroSensor_type = bits, U08, 604, [0:4], "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "GM 3 Bar", "MPX4100", "Toyota 89420-02010", "MPX4250A", "Bosch 2.5", "Mazda1Bar", "GM 2 Bar", "GM 1 Bar", "MPXH6400", "MPXH6300", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -baroSensor_hwChannel = bits, U08, 605, [0:5], $adc_channel_e_list -idle_solenoidFrequency = scalar, S32, 608, "Hz", 1, 0, 0, 3000, 0 -idle_solenoidPin = bits, U16, 612, [0:8], $output_pin_e_list -idle_stepperDirectionPin = bits, U16, 614, [0:7], $gpio_list -idle_stepperStepPin = bits, U16, 616, [0:7], $gpio_list -idle_solenoidPinMode = bits, U08, 618, [0:1], "default", "default inverted", "open collector", "open collector inverted" -manIdlePosition = scalar, F32, 620, "%", 1, 0, 0, 100, 0 -knockRetardAggression = scalar, U08, 624, "%", 0.1, 0, 0, 20, 1 -knockRetardReapplyRate = scalar, U08, 625, "deg/s", 0.1, 0, 0, 10, 1 -engineSyncCam = bits, S08, 626, [0:1], "Intake First Bank", "Exhaust First Bank", "Intake Second Bank", "Exhaust Second Bank" -vssFilterReciprocal = scalar, U08, 627, "", 1, 0, 3, 200 0 -vssGearRatio = scalar, U16, 628, "ratio", 0.001, 0, 0, 60, 3 -vssToothCount = scalar, U08, 630, "count", 1, 0, 1, 100, 0 -idleVeOverrideMode = bits, U08, 631, [0:1], "None", "MAP", "TPS", "INVALID" -l9779_cs = bits, U16, 632, [0:7], $gpio_list -injectionPins1 = bits, U16, 634, [0:8], $output_pin_e_list -injectionPins2 = bits, U16, 636, [0:8], $output_pin_e_list -injectionPins3 = bits, U16, 638, [0:8], $output_pin_e_list -injectionPins4 = bits, U16, 640, [0:8], $output_pin_e_list -injectionPins5 = bits, U16, 642, [0:8], $output_pin_e_list -injectionPins6 = bits, U16, 644, [0:8], $output_pin_e_list -injectionPins7 = bits, U16, 646, [0:8], $output_pin_e_list -injectionPins8 = bits, U16, 648, [0:8], $output_pin_e_list -injectionPins9 = bits, U16, 650, [0:8], $output_pin_e_list -injectionPins10 = bits, U16, 652, [0:8], $output_pin_e_list -injectionPins11 = bits, U16, 654, [0:8], $output_pin_e_list -injectionPins12 = bits, U16, 656, [0:8], $output_pin_e_list -ignitionPins1 = bits, U16, 658, [0:8], $output_pin_e_list -ignitionPins2 = bits, U16, 660, [0:8], $output_pin_e_list -ignitionPins3 = bits, U16, 662, [0:8], $output_pin_e_list -ignitionPins4 = bits, U16, 664, [0:8], $output_pin_e_list -ignitionPins5 = bits, U16, 666, [0:8], $output_pin_e_list -ignitionPins6 = bits, U16, 668, [0:8], $output_pin_e_list -ignitionPins7 = bits, U16, 670, [0:8], $output_pin_e_list -ignitionPins8 = bits, U16, 672, [0:8], $output_pin_e_list -ignitionPins9 = bits, U16, 674, [0:8], $output_pin_e_list -ignitionPins10 = bits, U16, 676, [0:8], $output_pin_e_list -ignitionPins11 = bits, U16, 678, [0:8], $output_pin_e_list -ignitionPins12 = bits, U16, 680, [0:8], $output_pin_e_list -injectionPinMode = bits, U08, 682, [0:1], "default", "default inverted", "open collector", "open collector inverted" -ignitionPinMode = bits, U08, 683, [0:1], "default", "default inverted", "open collector", "open collector inverted" -fuelPumpPin = bits, U16, 684, [0:8], $output_pin_e_list -fuelPumpPinMode = bits, U08, 686, [0:1], "default", "default inverted", "open collector", "open collector inverted" -gapVvtTrackingLengthOverride = scalar, S08, 687, "count", 1, 0, 1, 4, 0 -malfunctionIndicatorPin = bits, U16, 688, [0:8], $output_pin_e_list -malfunctionIndicatorPinMode = bits, U08, 690, [0:1], "default", "default inverted", "open collector", "open collector inverted" -fanPinMode = bits, U08, 691, [0:1], "default", "default inverted", "open collector", "open collector inverted" -fanPin = bits, U16, 692, [0:8], $output_pin_e_list -clutchDownPin = bits, U16, 694, [0:7], $switch_input_pin_e_list -alternatorControlPin = bits, U16, 696, [0:8], $output_pin_e_list -alternatorControlPinMode = bits, U08, 698, [0:1], "default", "default inverted", "open collector", "open collector inverted" -clutchDownPinMode = bits, U08, 699, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -digitalPotentiometerChipSelect1 = bits, U16, 700, [0:7], $gpio_list -digitalPotentiometerChipSelect2 = bits, U16, 702, [0:7], $gpio_list -digitalPotentiometerChipSelect3 = bits, U16, 704, [0:7], $gpio_list -digitalPotentiometerChipSelect4 = bits, U16, 706, [0:7], $gpio_list -electronicThrottlePin1Mode = bits, U08, 708, [0:1], "default", "default inverted", "open collector", "open collector inverted" -max31855spiDevice = bits, U08, 709, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -debugTriggerSync = bits, U16, 710, [0:7], $gpio_list -digitalPotentiometerSpiDevice = bits, U08, 712, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -mc33972_cs = bits, U16, 714, [0:7], $gpio_list -mc33972_csPinMode = bits, U08, 716, [0:1], "default", "default inverted", "open collector", "open collector inverted" -auxFastSensor1_adcChannel = bits, U08, 717, [0:5], $adc_channel_e_list -tps1_2AdcChannel = bits, U08, 718, [0:5], $adc_channel_e_list -tps2_2AdcChannel = bits, U08, 719, [0:5], $adc_channel_e_list -throttlePedalPositionSecondAdcChannel = bits, U08, 720, [0:5], $adc_channel_e_list -fuelLevelValues = array, U08, 721, [8], "%", 1, 0, 0, 100, 0 -afr_type = bits, S08, 729, [0:2], "BPSX", "Innovate", "14Point7", "INVALID", "PLX", "Custom", "AEM", "INVALID" -mc33810_cs1 = bits, U16, 730, [0:7], $gpio_list -idle_antiwindupFreq = scalar, F32, 732, "x", 1, 0, -1000000, 1000000, 4 -triggerInputPins1 = bits, U16, 736, [0:7], $brain_input_pin_e_list -triggerInputPins2 = bits, U16, 738, [0:7], $brain_input_pin_e_list -mc33_t_min_boost = scalar, U16, 740, "us", 1, 0, 0, 10000, 0 -hip9011CsPinMode = bits, U08, 742, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tachOutputPin = bits, U16, 744, [0:8], $output_pin_e_list -tachOutputPinMode = bits, U08, 746, [0:1], "default", "default inverted", "open collector", "open collector inverted" -mainRelayPin = bits, U16, 748, [0:8], $output_pin_e_list -sdCardCsPin = bits, U16, 750, [0:7], $gpio_list -canTxPin = bits, U16, 752, [0:7], $gpio_list -canRxPin = bits, U16, 754, [0:7], $gpio_list -throttlePedalUpPinMode = bits, U08, 756, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -acIdleExtraOffset = scalar, U08, 757, "%", 1, 0, 0, 100, 0 -finalGearRatio = scalar, U16, 758, "ratio", 0.01, 0, 0, 10, 2 -tcuInputSpeedSensorPin = bits, U16, 760, [0:7], $brain_input_pin_e_list -tcuInputSpeedSensorTeeth = scalar, U08, 762, "", 1, 0, 0, 100, 0 -wastegatePositionMin = scalar, U16, 764, "mv", 1, 0, 0, 5000, 0 -wastegatePositionMax = scalar, U16, 766, "mv", 1, 0, 0, 5000, 0 -idlePositionMin = scalar, U16, 768, "mv", 1, 0, 0, 5000, 0 -idlePositionMax = scalar, U16, 770, "mv", 1, 0, 0, 5000, 0 -tunerStudioSerialSpeed = scalar, U32, 772, "BPs", 1, 0, 0, 1000000, 0 -compressionRatio = scalar, F32, 776, "CR", 1, 0, 0, 300, 1 -triggerSimulatorPins1 = bits, U16, 780, [0:7], $gpio_list -triggerSimulatorPins2 = bits, U16, 782, [0:7], $gpio_list -fordInjectorSmallPulseSlope = scalar, U16, 784, "g/s", 0.001, 0, 0, 65, 3 -triggerSimulatorPinModes1 = bits, U08, 786, [0:1], "default", "default inverted", "open collector", "open collector inverted" -triggerSimulatorPinModes2 = bits, U08, 787, [0:1], "default", "default inverted", "open collector", "open collector inverted" -maf2AdcChannel = bits, U08, 788, [0:5], $adc_channel_e_list -o2heaterPin = bits, U16, 790, [0:8], $output_pin_e_list -o2heaterPinModeTodO = bits, U08, 792, [0:1], "default", "default inverted", "open collector", "open collector inverted" -lambdaProtectionMinRpm = scalar, U08, 793, "RPM", 100.0, 0, 0, 25000, 0 -lambdaProtectionMinLoad = scalar, U08, 794, "%", 10.0, 0, 0, 1000, 0 -is_enabled_spi_1 = bits, U32, 796, [0:0], "false", "true" -is_enabled_spi_2 = bits, U32, 796, [1:1], "false", "true" -is_enabled_spi_3 = bits, U32, 796, [2:2], "false", "true" -isSdCardEnabled = bits, U32, 796, [3:3], "false", "true" -rusefiVerbose29b = bits, U32, 796, [4:4], "11 bit", "29 bit" -rethrowHardFault = bits, U32, 796, [5:5], "false", "true" -isHip9011Enabled = bits, U32, 796, [6:6], "false", "true" -requireFootOnBrakeToCrank = bits, U32, 796, [7:7], "false", "true" -verboseQuad = bits, U32, 796, [8:8], "false", "true" -useStepperIdle = bits, U32, 796, [9:9], "false", "true" -enabledStep1Limiter = bits, U32, 796, [10:10], "false", "true" -useTpicAdvancedMode = bits, U32, 796, [11:11], "false", "true" -lambdaProtectionEnable = bits, U32, 796, [12:12], "false", "true" -verboseTLE8888 = bits, U32, 796, [13:13], "false", "true" -enableVerboseCanTx = bits, U32, 796, [14:14], "false", "true" -etb1configured = bits, U32, 796, [15:15], "false", "true" -etb2configured = bits, U32, 796, [16:16], "false", "true" -measureMapOnlyInOneCylinder = bits, U32, 796, [17:17], "false", "true" -stepperForceParkingEveryRestart = bits, U32, 796, [18:18], "false", "true" -isFasterEngineSpinUpEnabled = bits, U32, 796, [19:19], "false", "true" -coastingFuelCutEnabled = bits, U32, 796, [20:20], "false", "true" -useIacTableForCoasting = bits, U32, 796, [21:21], "false", "true" -useNoiselessTriggerDecoder = bits, U32, 796, [22:22], "false", "true" -useIdleTimingPidControl = bits, U32, 796, [23:23], "false", "true" -disableEtbWhenEngineStopped = bits, U32, 796, [24:24], "false", "true" -is_enabled_spi_4 = bits, U32, 796, [25:25], "false", "true" -pauseEtbControl = bits, U32, 796, [26:26], "false", "true" -alignEngineSnifferAtTDC = bits, U32, 796, [27:27], "false", "true" -verboseKLine = bits, U32, 796, [28:28], "false", "true" -idleIncrementalPidCic = bits, U32, 796, [29:29], "false", "true" -enableAemXSeries = bits, U32, 796, [30:30], "false", "true" -logicAnalyzerPins1 = bits, U16, 800, [0:7], $brain_input_pin_e_list -logicAnalyzerPins2 = bits, U16, 802, [0:7], $brain_input_pin_e_list -logicAnalyzerPins3 = bits, U16, 804, [0:7], $brain_input_pin_e_list -logicAnalyzerPins4 = bits, U16, 806, [0:7], $brain_input_pin_e_list -mainRelayPinMode = bits, U08, 808, [0:1], "default", "default inverted", "open collector", "open collector inverted" -hip9011CsPin = bits, U16, 810, [0:7], $gpio_list -hip9011IntHoldPin = bits, U16, 812, [0:7], $gpio_list -hip9011IntHoldPinMode = bits, U08, 814, [0:1], "default", "default inverted", "open collector", "open collector inverted" -verboseCanBaseAddress = scalar, U32, 816, "", 1, 0, 0, 536870911, 0 -mc33_hvolt = scalar, U08, 820, "v", 1, 0, 40, 70, 0 -minimumBoostClosedLoopMap = scalar, U08, 821, "kPa", 1, 0, 0, 255, 0 -acFanPin = bits, U16, 822, [0:8], $output_pin_e_list -acFanPinMode = bits, U08, 824, [0:1], "default", "default inverted", "open collector", "open collector inverted" -l9779spiDevice = bits, U08, 825, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -dwellVoltageCorrVoltBins = array, U08, 826, [8], "volts", 0.1, 0, 0, 20, 1 -imuType = bits, U08, 834, [0:4], "None", "VAG", "MM5.10", "type 3", "type 4", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -dwellVoltageCorrValues = array, U08, 835, [8], "multiplier", 0.02, 0, 0, 5, 2 -vehicleWeight = scalar, U16, 844, "kg", 1, 0, 0, 10000, 0 -idlePidRpmUpperLimit = scalar, S16, 846, "RPM", 1, 0, 0, 500, 0 -applyNonlinearBelowPulse = scalar, U16, 848, "ms", 0.001, 0, 0, 30, 3 -lps25BaroSensorScl = bits, U16, 850, [0:7], $gpio_list -lps25BaroSensorSda = bits, U16, 852, [0:7], $gpio_list -vehicleSpeedSensorInputPin = bits, U16, 854, [0:7], $brain_input_pin_e_list -clutchUpPin = bits, U16, 856, [0:7], $switch_input_pin_e_list -injectorNonlinearMode = bits, U08, 858, [0:1], "None", "Polynomial", "Ford (dual slope)", "INVALID" -clutchUpPinMode = bits, U08, 859, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -max31855_cs1 = bits, U16, 860, [0:7], $gpio_list -max31855_cs2 = bits, U16, 862, [0:7], $gpio_list -max31855_cs3 = bits, U16, 864, [0:7], $gpio_list -max31855_cs4 = bits, U16, 866, [0:7], $gpio_list -max31855_cs5 = bits, U16, 868, [0:7], $gpio_list -max31855_cs6 = bits, U16, 870, [0:7], $gpio_list -max31855_cs7 = bits, U16, 872, [0:7], $gpio_list -max31855_cs8 = bits, U16, 874, [0:7], $gpio_list -flexSensorPin = bits, U16, 876, [0:7], $brain_input_pin_e_list -test557pin = bits, U16, 878, [0:7], $gpio_list -stepperDirectionPinMode = bits, U08, 880, [0:1], "default", "default inverted", "open collector", "open collector inverted" -mc33972spiDevice = bits, U08, 881, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -stoichRatioSecondary = scalar, U08, 882, ":1", 0.1, 0, 5, 25, 1 -etbMaximumPosition = scalar, U08, 883, "%", 1, 0, 70, 100, 0 -sdCardLogFrequency = scalar, U16, 884, "hz", 1, 0, 1, 250, 0 -idlePositionChannel = bits, U08, 886, [0:5], $adc_channel_e_list -debugMapAveraging = bits, U16, 888, [0:7], $gpio_list -starterRelayDisablePin = bits, U16, 890, [0:8], $output_pin_e_list -starterRelayDisablePinMode = bits, U08, 892, [0:1], "default", "default inverted", "open collector", "open collector inverted" -secondSolenoidPin = bits, U16, 894, [0:8], $output_pin_e_list -startStopButtonPin = bits, U16, 896, [0:7], $switch_input_pin_e_list -mapMinBufferLength = scalar, S32, 900, "count", 1, 0, 1, 24, 0 -idlePidDeactivationTpsThreshold = scalar, S16, 904, "%", 1, 0, 0, 50, 0 -stepperParkingExtraSteps = scalar, S16, 906, "%", 1, 0, 0, 3000, 0 -tps1SecondaryMin = scalar, U16, 908, "ADC", 1, 0, 0, 1000, 0 -tps1SecondaryMax = scalar, U16, 910, "ADC", 1, 0, 0, 1000, 0 -antiLagRpmTreshold = scalar, S16, 912, "rpm", 1, 0, 0, 20000, 0 -startCrankingDuration = scalar, U16, 914, "Seconds", 1, 0, 0, 30, 0 -triggerErrorPin = bits, U16, 916, [0:7], $gpio_list -triggerErrorPinMode = bits, U08, 918, [0:1], "default", "default inverted", "open collector", "open collector inverted" -acRelayPin = bits, U16, 920, [0:8], $output_pin_e_list -lambdaProtectionMinTps = scalar, U08, 922, "%", 1, 0, 0, 100, 0 -lambdaProtectionTimeout = scalar, U08, 923, "s", 0.1, 0, 0, 10, 1 -lambdaProtectionRestoreRpm = scalar, U08, 924, "RPM", 100.0, 0, 0, 25000, 0 -acRelayPinMode = bits, U08, 925, [0:1], "default", "default inverted", "open collector", "open collector inverted" -scriptSetting1 = scalar, F32, 928, "", 1, 0, 0, 18000, 2 -scriptSetting2 = scalar, F32, 932, "", 1, 0, 0, 18000, 2 -scriptSetting3 = scalar, F32, 936, "", 1, 0, 0, 18000, 2 -scriptSetting4 = scalar, F32, 940, "", 1, 0, 0, 18000, 2 -scriptSetting5 = scalar, F32, 944, "", 1, 0, 0, 18000, 2 -scriptSetting6 = scalar, F32, 948, "", 1, 0, 0, 18000, 2 -scriptSetting7 = scalar, F32, 952, "", 1, 0, 0, 18000, 2 -scriptSetting8 = scalar, F32, 956, "", 1, 0, 0, 18000, 2 -spi1mosiPin = bits, U16, 960, [0:7], $gpio_list -spi1misoPin = bits, U16, 962, [0:7], $gpio_list -spi1sckPin = bits, U16, 964, [0:7], $gpio_list -spi2mosiPin = bits, U16, 966, [0:7], $gpio_list -spi2misoPin = bits, U16, 968, [0:7], $gpio_list -spi2sckPin = bits, U16, 970, [0:7], $gpio_list -spi3mosiPin = bits, U16, 972, [0:7], $gpio_list -spi3misoPin = bits, U16, 974, [0:7], $gpio_list -spi3sckPin = bits, U16, 976, [0:7], $gpio_list -cdmInputPin = bits, U16, 978, [0:7], $gpio_list -consoleUartDevice = bits, U08, 980, [0:1], "Off", "UART1", "UART2", "UART3" -sensorChartMode = bits, S08, 981, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" -mafSensorType = bits, S08, 982, [0:1], "v0", "v1", "v2", "v3" -clutchUpPinInverted = bits, U32, 984, [0:0], "false", "true" -clutchDownPinInverted = bits, U32, 984, [1:1], "false", "true" -useHbridgesToDriveIdleStepper = bits, U32, 984, [2:2], "false", "true" -multisparkEnable = bits, U32, 984, [3:3], "false", "true" -enableLaunchRetard = bits, U32, 984, [4:4], "false", "true" -canInputBCM = bits, U32, 984, [5:5], "false", "true" -consumeObdSensors = bits, U32, 984, [6:6], "false", "true" -enableCanVss = bits, U32, 984, [7:7], "false", "true" -enableInnovateLC2 = bits, U32, 984, [8:8], "false", "true" -showHumanReadableWarning = bits, U32, 984, [9:9], "false", "true" -stftIgnoreErrorMagnitude = bits, U32, 984, [10:10], "false", "true" -vvtBooleanForVerySpecialCases = bits, U32, 984, [11:11], "false", "true" -enableSoftwareKnock = bits, U32, 984, [12:12], "false", "true" -verboseVVTDecoding = bits, U32, 984, [13:13], "false", "true" -invertCamVVTSignal = bits, U32, 984, [14:14], "Rising", "Falling" -alphaNUseIat = bits, U32, 984, [15:15], "false", "true" -knockBankCyl1 = bits, U32, 984, [16:16], "Channel 1", "Channel 2" -knockBankCyl2 = bits, U32, 984, [17:17], "Channel 1", "Channel 2" -knockBankCyl3 = bits, U32, 984, [18:18], "Channel 1", "Channel 2" -knockBankCyl4 = bits, U32, 984, [19:19], "Channel 1", "Channel 2" -knockBankCyl5 = bits, U32, 984, [20:20], "Channel 1", "Channel 2" -knockBankCyl6 = bits, U32, 984, [21:21], "Channel 1", "Channel 2" -knockBankCyl7 = bits, U32, 984, [22:22], "Channel 1", "Channel 2" -knockBankCyl8 = bits, U32, 984, [23:23], "Channel 1", "Channel 2" -knockBankCyl9 = bits, U32, 984, [24:24], "Channel 1", "Channel 2" -knockBankCyl10 = bits, U32, 984, [25:25], "Channel 1", "Channel 2" -knockBankCyl11 = bits, U32, 984, [26:26], "Channel 1", "Channel 2" -knockBankCyl12 = bits, U32, 984, [27:27], "Channel 1", "Channel 2" -tcuEnabled = bits, U32, 984, [28:28], "false", "true" -canBroadcastUseChannelTwo = bits, U32, 984, [29:29], "first", "second" -useRawOutputToDriveIdleStepper = bits, U32, 984, [30:30], "false", "true" -verboseCan2 = bits, U32, 984, [31:31], "Do not print", "Print all" -etbIo1_directionPin1 = bits, U16, 988, [0:7], $gpio_list -etbIo1_directionPin2 = bits, U16, 990, [0:7], $gpio_list -etbIo1_controlPin = bits, U16, 992, [0:7], $gpio_list -etbIo1_disablePin = bits, U16, 994, [0:7], $gpio_list -etbIo2_directionPin1 = bits, U16, 996, [0:7], $gpio_list -etbIo2_directionPin2 = bits, U16, 998, [0:7], $gpio_list -etbIo2_controlPin = bits, U16, 1000, [0:7], $gpio_list -etbIo2_disablePin = bits, U16, 1002, [0:7], $gpio_list -boostControlPin = bits, U16, 1004, [0:8], $output_pin_e_list -boostControlPinMode = bits, U08, 1006, [0:1], "default", "default inverted", "open collector", "open collector inverted" -ALSActivatePin = bits, U16, 1008, [0:7], $switch_input_pin_e_list -launchActivatePin = bits, U16, 1010, [0:7], $switch_input_pin_e_list -boostPid_pFactor = scalar, F32, 1012, "", 1, 0, -10000, 10000, 4 -boostPid_iFactor = scalar, F32, 1016, "", 1, 0, -10000, 10000, 4 -boostPid_dFactor = scalar, F32, 1020, "", 1, 0, -10000, 10000, 4 -boostPid_offset = scalar, S16, 1024, "", 1, 0, -1000, 1000, 0 -boostPid_periodMs = scalar, S16, 1026, "ms", 1, 0, 0, 3000, 0 -boostPid_minValue = scalar, S16, 1028, "", 1, 0, -30000, 30000, 0 -boostPid_maxValue = scalar, S16, 1030, "", 1, 0, -30000, 30000, 0 -boostType = bits, U08, 1032, [0:0], "Open Loop", "Open + Closed Loop" -ignitionKeyDigitalPinMode = bits, U08, 1033, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -ignitionKeyDigitalPin = bits, U16, 1034, [0:7], $gpio_list -boostPwmFrequency = scalar, S32, 1036, "Hz", 1, 0, 0, 3000, 0 -launchActivationMode = bits, S08, 1040, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" -antiLagActivationMode = bits, S08, 1041, [0:0], "Switch Input", "Always Active" -launchSpeedThreshold = scalar, S32, 1044, "Kph", 1, 0, 0, 300, 0 -launchRpmWindow = scalar, S32, 1048, "RPM", 1, 0, 0, 8000, 0 -launchSparkSkipPercent = scalar, S32, 1052, "%", 1, 0, 0, 100, 0 -launchBoostDuty = scalar, S32, 1056, "%", 1, 0, 0, 100, 0 -magicNumberAvailableForDevTricks = scalar, F32, 1060, "", 1, 0, 0, 100, 0 -turbochargerFilter = scalar, F32, 1064, "", 1, 0, 0, 100, 0 -launchTpsThreshold = scalar, S32, 1068, "", 1, 0, 0, 20000, 0 -launchActivateDelay = scalar, F32, 1072, "", 1, 0, 0, 20000, 0 -stft_maxIdleRegionRpm = scalar, U08, 1076, "RPM", 50.0, 0, 0, 12000, 0 -stft_maxOverrunLoad = scalar, U08, 1077, "load", 1, 0, 0, 250, 0 -stft_minPowerLoad = scalar, U08, 1078, "load", 1, 0, 0, 250, 0 -stft_deadband = scalar, U08, 1079, "%", 0.1, 0, 0, 3, 1 -stft_minClt = scalar, S08, 1080, "C", 1, 0, -20, 100, 0 -stft_minAfr = scalar, U08, 1081, "afr", 0.1, 0, 10, 20, 1 -stft_maxAfr = scalar, U08, 1082, "afr", 0.1, 0, 10, 20, 1 -stft_startupDelay = scalar, U08, 1083, "seconds", 1, 0, 0, 250, 0 -stft_cellCfgs1_maxAdd = scalar, S08, 1084, "%", 1, 0, 0, 25, 0 -stft_cellCfgs1_maxRemove = scalar, S08, 1085, "%", 1, 0, -25, 0, 0 -stft_cellCfgs1_timeConstant = scalar, U16, 1086, "sec", 0.1, 0, 0.1, 100, 2 -stft_cellCfgs2_maxAdd = scalar, S08, 1088, "%", 1, 0, 0, 25, 0 -stft_cellCfgs2_maxRemove = scalar, S08, 1089, "%", 1, 0, -25, 0, 0 -stft_cellCfgs2_timeConstant = scalar, U16, 1090, "sec", 0.1, 0, 0.1, 100, 2 -stft_cellCfgs3_maxAdd = scalar, S08, 1092, "%", 1, 0, 0, 25, 0 -stft_cellCfgs3_maxRemove = scalar, S08, 1093, "%", 1, 0, -25, 0, 0 -stft_cellCfgs3_timeConstant = scalar, U16, 1094, "sec", 0.1, 0, 0.1, 100, 2 -stft_cellCfgs4_maxAdd = scalar, S08, 1096, "%", 1, 0, 0, 25, 0 -stft_cellCfgs4_maxRemove = scalar, S08, 1097, "%", 1, 0, -25, 0, 0 -stft_cellCfgs4_timeConstant = scalar, U16, 1098, "sec", 0.1, 0, 0.1, 100, 2 -stepperDcIo1_directionPin1 = bits, U16, 1100, [0:7], $gpio_list -stepperDcIo1_directionPin2 = bits, U16, 1102, [0:7], $gpio_list -stepperDcIo1_controlPin = bits, U16, 1104, [0:7], $gpio_list -stepperDcIo1_disablePin = bits, U16, 1106, [0:7], $gpio_list -stepperDcIo2_directionPin1 = bits, U16, 1108, [0:7], $gpio_list -stepperDcIo2_directionPin2 = bits, U16, 1110, [0:7], $gpio_list -stepperDcIo2_controlPin = bits, U16, 1112, [0:7], $gpio_list -stepperDcIo2_disablePin = bits, U16, 1114, [0:7], $gpio_list -engineMake = string, ASCII, 1116, 32 -engineCode = string, ASCII, 1148, 32 -vehicleName = string, ASCII, 1180, 32 -tcu_solenoid1 = bits, U16, 1212, [0:8], $output_pin_e_list -tcu_solenoid2 = bits, U16, 1214, [0:8], $output_pin_e_list -tcu_solenoid3 = bits, U16, 1216, [0:8], $output_pin_e_list -tcu_solenoid4 = bits, U16, 1218, [0:8], $output_pin_e_list -tcu_solenoid5 = bits, U16, 1220, [0:8], $output_pin_e_list -tcu_solenoid6 = bits, U16, 1222, [0:8], $output_pin_e_list -etbFunctions1 = bits, U08, 1224, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" -etbFunctions2 = bits, U08, 1225, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" -drv8860spiDevice = bits, U08, 1226, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -drv8860_cs = bits, U16, 1228, [0:7], $gpio_list -drv8860_csPinMode = bits, U08, 1230, [0:1], "default", "default inverted", "open collector", "open collector inverted" -drv8860_miso = bits, U16, 1232, [0:7], $gpio_list -fuelLevelBins = array, U16, 1234, [8], "volt", 0.001, 0, 0, 5, 3 -luaOutputPins1 = bits, U16, 1250, [0:8], $output_pin_e_list -luaOutputPins2 = bits, U16, 1252, [0:8], $output_pin_e_list -luaOutputPins3 = bits, U16, 1254, [0:8], $output_pin_e_list -luaOutputPins4 = bits, U16, 1256, [0:8], $output_pin_e_list -luaOutputPins5 = bits, U16, 1258, [0:8], $output_pin_e_list -luaOutputPins6 = bits, U16, 1260, [0:8], $output_pin_e_list -luaOutputPins7 = bits, U16, 1262, [0:8], $output_pin_e_list -luaOutputPins8 = bits, U16, 1264, [0:8], $output_pin_e_list -vvtOffsets1 = scalar, F32, 1268, "value", 1, 0, -720, 1000, 1 -vvtOffsets2 = scalar, F32, 1272, "value", 1, 0, -720, 1000, 1 -vvtOffsets3 = scalar, F32, 1276, "value", 1, 0, -720, 1000, 1 -vvtOffsets4 = scalar, F32, 1280, "value", 1, 0, -720, 1000, 1 -vrThreshold1_rpmBins = array, U08, 1284, [6], "rpm", 50.0, 0, 0, 12000, 0 -vrThreshold1_values = array, U08, 1290, [6], "volts", 0.01, 0, 0, 2.5, 2 -vrThreshold1_pin = bits, U16, 1296, [0:7], $gpio_list -vrThreshold2_rpmBins = array, U08, 1300, [6], "rpm", 50.0, 0, 0, 12000, 0 -vrThreshold2_values = array, U08, 1306, [6], "volts", 0.01, 0, 0, 2.5, 2 -vrThreshold2_pin = bits, U16, 1312, [0:7], $gpio_list -gpPwmNote1 = string, ASCII, 1316, 16 -gpPwmNote2 = string, ASCII, 1332, 16 -gpPwmNote3 = string, ASCII, 1348, 16 -gpPwmNote4 = string, ASCII, 1364, 16 -tps2SecondaryMin = scalar, U16, 1380, "ADC", 1, 0, 0, 1000, 0 -tps2SecondaryMax = scalar, U16, 1382, "ADC", 1, 0, 0, 1000, 0 -widebandOnSecondBus = bits, U32, 1384, [0:0], "1", "2" -fuelClosedLoopCorrectionEnabled = bits, U32, 1384, [1:1], "false", "true" -oddFireEngine = bits, U32, 1384, [2:2], "false", "true" -boardUseTachPullUp = bits, U32, 1384, [3:3], "5v", "12v" -boardUseTempPullUp = bits, U32, 1384, [4:4], "Piggyback Mode", "With Pull Ups" -yesUnderstandLocking = bits, U32, 1384, [5:5], "no", "yes" -silentTriggerError = bits, U32, 1384, [6:6], "false", "true" -useLinearCltSensor = bits, U32, 1384, [7:7], "false", "true" -canReadEnabled = bits, U32, 1384, [8:8], "false", "true" -canWriteEnabled = bits, U32, 1384, [9:9], "false", "true" -useLinearIatSensor = bits, U32, 1384, [10:10], "false", "true" -boardUse2stepPullDown = bits, U32, 1384, [11:11], "With Pull Up", "With Pull Down" -tachPulseDurationAsDutyCycle = bits, U32, 1384, [12:12], "Constant time", "Duty cycle" -isAlternatorControlEnabled = bits, U32, 1384, [13:13], "false", "true" -invertPrimaryTriggerSignal = bits, U32, 1384, [14:14], "Rising", "Falling" -invertSecondaryTriggerSignal = bits, U32, 1384, [15:15], "Rising", "Falling" -cutFuelOnHardLimit = bits, U32, 1384, [16:16], "no", "yes" -cutSparkOnHardLimit = bits, U32, 1384, [17:17], "no", "yes" -launchFuelCutEnable = bits, U32, 1384, [18:18], "false", "true" -launchSparkCutEnable = bits, U32, 1384, [19:19], "false", "true" -boardUseCrankPullUp = bits, U32, 1384, [20:20], "VR", "Hall" -boardUseCamPullDown = bits, U32, 1384, [21:21], "With Pull Up", "With Pull Down" -boardUseCamVrPullUp = bits, U32, 1384, [22:22], "VR", "Hall" -boardUseD2PullDown = bits, U32, 1384, [23:23], "With Pull Up", "With Pull Down" -boardUseD3PullDown = bits, U32, 1384, [24:24], "With Pull Up", "With Pull Down" -boardUseD4PullDown = bits, U32, 1384, [25:25], "With Pull Up", "With Pull Down" -boardUseD5PullDown = bits, U32, 1384, [26:26], "With Pull Up", "With Pull Down" -verboseIsoTp = bits, U32, 1384, [27:27], "false", "true" -engineSnifferFocusOnInputs = bits, U32, 1384, [28:28], "false", "true" -launchActivateInverted = bits, U32, 1384, [29:29], "false", "true" -twoStroke = bits, U32, 1384, [30:30], "Four Stroke", "Two Stroke" -skippedWheelOnCam = bits, U32, 1384, [31:31], "On crankshaft", "On camshaft" -hipOutputChannel = bits, U08, 1388, [0:5], $adc_channel_e_list -acSwitch = bits, U16, 1390, [0:7], $switch_input_pin_e_list -vRefAdcChannel = bits, U08, 1392, [0:5], $adc_channel_e_list -etbNeutralPosition = scalar, U08, 1393, "%", 1, 0, 0, 100, 0 -idleMode = bits, U08, 1394, [0:0], "Open Loop + Closed Loop", "Open Loop" -isInjectionEnabled = bits, U32, 1396, [0:0], "false", "true" -isIgnitionEnabled = bits, U32, 1396, [1:1], "false", "true" -isCylinderCleanupEnabled = bits, U32, 1396, [2:2], "false", "true" -complexWallModel = bits, U32, 1396, [3:3], "Basic (constants)", "Advanced (tables)" -alwaysInstantRpm = bits, U32, 1396, [4:4], "false", "true" -isMapAveragingEnabled = bits, U32, 1396, [5:5], "false", "true" -overrideCrankingIacSetting = bits, U32, 1396, [6:6], "false", "true" -useSeparateAdvanceForIdle = bits, U32, 1396, [7:7], "false", "true" -isWaveAnalyzerEnabled = bits, U32, 1396, [8:8], "false", "true" -useSeparateVeForIdle = bits, U32, 1396, [9:9], "false", "true" -verboseTriggerSynchDetails = bits, U32, 1396, [10:10], "false", "true" -isManualSpinningMode = bits, U32, 1396, [11:11], "false", "true" -cutFuelInAcr = bits, U32, 1396, [12:12], "false", "true" -hondaK = bits, U32, 1396, [13:13], "false", "true" -twoWireBatchIgnition = bits, U32, 1396, [14:14], "false", "true" -useFixedBaroCorrFromMap = bits, U32, 1396, [15:15], "false", "true" -useSeparateAdvanceForCranking = bits, U32, 1396, [16:16], "Fixed (auto taper)", "Table" -useAdvanceCorrectionsForCranking = bits, U32, 1396, [17:17], "false", "true" -flexCranking = bits, U32, 1396, [18:18], "false", "true" -useIacPidMultTable = bits, U32, 1396, [19:19], "false", "true" -isBoostControlEnabled = bits, U32, 1396, [20:20], "false", "true" -launchSmoothRetard = bits, U32, 1396, [21:21], "false", "true" -isPhaseSyncRequiredForIgnition = bits, U32, 1396, [22:22], "false", "true" -useCltBasedRpmLimit = bits, U32, 1396, [23:23], "no", "yes" -forceO2Heating = bits, U32, 1396, [24:24], "no", "yes" -invertVvtControlIntake = bits, U32, 1396, [25:25], "advance", "retard" -invertVvtControlExhaust = bits, U32, 1396, [26:26], "advance", "retard" -useBiQuadOnAuxSpeedSensors = bits, U32, 1396, [27:27], "false", "true" -sdTriggerLog = bits, U32, 1396, [28:28], "normal", "trigger" -ALSActivateInverted = bits, U32, 1396, [29:29], "false", "true" -stepper_dc_use_two_wires = bits, U32, 1396, [30:30], "false", "true" -watchOutForLinearTime = bits, U32, 1396, [31:31], "false", "true" -engineChartSize = scalar, U32, 1400, "count", 1, 0, 0, 300, 0 -turboSpeedSensorMultiplier = scalar, F32, 1404, "mult", 1, 0, 0, 7000, 3 -camInputsDebug1 = bits, U16, 1408, [0:7], $gpio_list -camInputsDebug2 = bits, U16, 1410, [0:7], $gpio_list -camInputsDebug3 = bits, U16, 1412, [0:7], $gpio_list -camInputsDebug4 = bits, U16, 1414, [0:7], $gpio_list -acIdleRpmTarget = scalar, S16, 1416, "RPM", 1, 0, 0, 2000, 0 -warningPeriod = scalar, S16, 1418, "seconds", 1, 0, 0, 60, 0 -knockDetectionWindowStart = scalar, F32, 1420, "angle", 1, 0, -1000, 1000, 2 -knockDetectionWindowEnd = scalar, F32, 1424, "angle", 1, 0, -1000, 1000, 2 -idleStepperReactionTime = scalar, F32, 1428, "ms", 1, 0, 1, 300, 0 -idleStepperTotalSteps = scalar, S32, 1432, "count", 1, 0, 5, 3000, 0 -noAccelAfterHardLimitPeriodSecs = scalar, F32, 1436, "sec", 1, 0, 0, 60, 0 -mapAveragingSchedulingAtIndex = scalar, S32, 1440, "index", 1, 0, 0, 7000, 0 -tachPulseDuractionMs = scalar, F32, 1444, "", 1, 0, 0, 100, 2 -wwaeTau = scalar, F32, 1448, "Seconds", 1, 0, 0, 3, 2 -alternatorControl_pFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 -alternatorControl_iFactor = scalar, F32, 1456, "", 1, 0, -10000, 10000, 4 -alternatorControl_dFactor = scalar, F32, 1460, "", 1, 0, -10000, 10000, 4 -alternatorControl_offset = scalar, S16, 1464, "", 1, 0, -1000, 1000, 0 -alternatorControl_periodMs = scalar, S16, 1466, "ms", 1, 0, 0, 3000, 0 -alternatorControl_minValue = scalar, S16, 1468, "", 1, 0, -30000, 30000, 0 -alternatorControl_maxValue = scalar, S16, 1470, "", 1, 0, -30000, 30000, 0 -etb_pFactor = scalar, F32, 1472, "", 1, 0, -10000, 10000, 4 -etb_iFactor = scalar, F32, 1476, "", 1, 0, -10000, 10000, 4 -etb_dFactor = scalar, F32, 1480, "", 1, 0, -10000, 10000, 4 -etb_offset = scalar, S16, 1484, "", 1, 0, -1000, 1000, 0 -etb_periodMs = scalar, S16, 1486, "ms", 1, 0, 0, 3000, 0 -etb_minValue = scalar, S16, 1488, "", 1, 0, -30000, 30000, 0 -etb_maxValue = scalar, S16, 1490, "", 1, 0, -30000, 30000, 0 -triggerInputDebugPins1 = bits, U16, 1492, [0:7], $gpio_list -triggerInputDebugPins2 = bits, U16, 1494, [0:7], $gpio_list -airTaperRpmRange = scalar, S16, 1496, "RPM", 1, 0, 0, 1500, 0 -turboSpeedSensorInputPin = bits, U16, 1498, [0:7], $brain_input_pin_e_list -tps2Min = scalar, S16, 1500, "ADC", 1, 0, 0, 1023, 0 -tps2Max = scalar, S16, 1502, "ADC", 1, 0, 0, 1023, 0 -starterControlPin = bits, U16, 1504, [0:8], $output_pin_e_list -startStopButtonMode = bits, U08, 1506, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -mc33816_flag0 = bits, U16, 1508, [0:7], $gpio_list -tachPulsePerRev = scalar, U08, 1510, "Pulse", 1, 0, 1, 255, 0 -mapErrorDetectionTooLow = scalar, F32, 1512, "kPa", 1, 0, -100, 100, 2 -mapErrorDetectionTooHigh = scalar, F32, 1516, "kPa", 1, 0, -100, 800, 2 -multisparkSparkDuration = scalar, U16, 1520, "ms", 0.001, 0, 0, 3, 2 -multisparkDwell = scalar, U16, 1522, "ms", 0.001, 0, 0, 3, 2 -idleRpmPid_pFactor = scalar, F32, 1524, "", 1, 0, -10000, 10000, 4 -idleRpmPid_iFactor = scalar, F32, 1528, "", 1, 0, -10000, 10000, 4 -idleRpmPid_dFactor = scalar, F32, 1532, "", 1, 0, -10000, 10000, 4 -idleRpmPid_offset = scalar, S16, 1536, "", 1, 0, -1000, 1000, 0 -idleRpmPid_periodMs = scalar, S16, 1538, "ms", 1, 0, 0, 3000, 0 -idleRpmPid_minValue = scalar, S16, 1540, "", 1, 0, -30000, 30000, 0 -idleRpmPid_maxValue = scalar, S16, 1542, "", 1, 0, -30000, 30000, 0 -wwaeBeta = scalar, F32, 1544, "Fraction", 1, 0, 0, 1, 2 -binarySerialTxPin = bits, U16, 1548, [0:7], $gpio_list -binarySerialRxPin = bits, U16, 1550, [0:7], $gpio_list -auxValves1 = bits, U16, 1552, [0:7], $gpio_list -auxValves2 = bits, U16, 1554, [0:7], $gpio_list -tcuUpshiftButtonPin = bits, U16, 1556, [0:7], $switch_input_pin_e_list -tcuDownshiftButtonPin = bits, U16, 1558, [0:7], $switch_input_pin_e_list -throttlePedalUpVoltage = scalar, F32, 1560, "voltage", 1, 0, -6, 6, 2 -throttlePedalWOTVoltage = scalar, F32, 1564, "voltage", 1, 0, -6, 6, 2 -startUpFuelPumpDuration = scalar, S16, 1568, "seconds", 1, 0, 0, 6000, 0 -idlePidRpmDeadZone = scalar, S16, 1570, "RPM", 1, 0, 0, 800, 0 -targetVBatt = scalar, F32, 1572, "Volts", 1, 0, 0, 30, 1 -mc33810DisableRecoveryMode = bits, U32, 1576, [0:0], "false", "true" -mc33810Gpgd0Mode = bits, U32, 1576, [1:1], "false", "true" -mc33810Gpgd1Mode = bits, U32, 1576, [2:2], "false", "true" -mc33810Gpgd2Mode = bits, U32, 1576, [3:3], "false", "true" -mc33810Gpgd3Mode = bits, U32, 1576, [4:4], "false", "true" -enableExtendedCanBroadcast = bits, U32, 1576, [5:5], "false", "true" -luaCanRxWorkaround = bits, U32, 1576, [6:6], "false", "true" -flexSensorInverted = bits, U32, 1576, [7:7], "false", "true" -useHardSkipInTraction = bits, U32, 1576, [8:8], "false", "true" -fancySmartS = bits, U32, 1576, [9:9], "false", "true" -fancySmartL = bits, U32, 1576, [10:10], "false", "true" -useAuxSpeedForSlipRatio = bits, U32, 1576, [11:11], "false", "true" -useVssAsSecondWheelSpeed = bits, U32, 1576, [12:12], "false", "true" -is_enabled_spi_5 = bits, U32, 1576, [13:13], "false", "true" -is_enabled_spi_6 = bits, U32, 1576, [14:14], "false", "true" -enableAemXSeriesEgt = bits, U32, 1576, [15:15], "false", "true" -afterCrankingIACtaperDuration = scalar, S16, 1580, "cycles", 1, 0, 0, 5000, 0 -iacByTpsTaper = scalar, S16, 1582, "percent", 1, 0, 0, 500, 0 -auxSerialTxPin = bits, U16, 1584, [0:7], $gpio_list -auxSerialRxPin = bits, U16, 1586, [0:7], $gpio_list -accelerometerCsPin = bits, U16, 1588, [0:7], $gpio_list -tpsAccelLookback = scalar, U08, 1590, "sec", 0.05, 0, 0, 5, 2 -coastingFuelCutVssLow = scalar, U08, 1591, "kph", 1, 0, 0, 255, 0 -coastingFuelCutVssHigh = scalar, U08, 1592, "kph", 1, 0, 0, 255, 0 -noFuelTrimAfterDfcoTime = scalar, U08, 1593, "sec", 0.1, 0, 0, 10, 1 -tpsAccelEnrichmentThreshold = scalar, F32, 1596, "roc", 1, 0, 0, 200, 1 -auxSpeedSensorInputPin1 = bits, U16, 1600, [0:7], $brain_input_pin_e_list -auxSpeedSensorInputPin2 = bits, U16, 1602, [0:7], $brain_input_pin_e_list -totalGearsCount = scalar, U08, 1604, "", 1, 0, 1, 10, 0 -injectionTimingMode = bits, U08, 1605, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" -debugMode = bits, U08, 1606, [0:5], "INVALID", "TPS acceleration enrichment", "INVALID", "Stepper Idle Control", "Engine Load accl enrich", "Trigger Counters", "Soft Spark Cut", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "SD card", "sr5", "Knock", "INVALID", "Electronic Throttle", "Executor", "Bench Test / TS commands", "INVALID", "Analog inputs #1", "INSTANT_RPM", "INVALID", "Status", "INVALID", "INVALID", "MAP", "Metrics", "INVALID", "Ion Sense", "TLE8888", "Analog inputs #2", "Dwell Metric", "INVALID", "INVALID", "Boost Control", "INVALID", "INVALID", "ETB Autotune", "Composite Log", "INVALID", "INVALID", "INVALID", "Dyno_View", "Logic_Analyzer", "INVALID", "TCU", "Lua", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -fan1ExtraIdle = scalar, U08, 1607, "%", 1, 0, 0, 100, 0 -uartConsoleSerialSpeed = scalar, U32, 1608, "BPs", 1, 0, 0, 1000000, 0 -tpsDecelEnleanmentThreshold = scalar, F32, 1612, "roc", 1, 0, 0, 200, 1 -tpsDecelEnleanmentMultiplier = scalar, F32, 1616, "coeff", 1, 0, 0, 200, 2 -auxSerialSpeed = scalar, U32, 1620, "BPs", 1, 0, 0, 1000000, 0 -throttlePedalSecondaryUpVoltage = scalar, F32, 1624, "voltage", 1, 0, -6, 6, 2 -throttlePedalSecondaryWOTVoltage = scalar, F32, 1628, "voltage", 1, 0, -6, 6, 2 -canBaudRate = bits, U08, 1632, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" -veOverrideMode = bits, U08, 1633, [0:1], "None", "MAP", "TPS", "INVALID" -can2BaudRate = bits, U08, 1634, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" -afrOverrideMode = bits, U08, 1635, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" -mc33_hpfp_i_peak = scalar, U08, 1636, "A", 0.1, 0, 0, 25, 1 -mc33_hpfp_i_hold = scalar, U08, 1637, "A", 0.1, 0, 0, 25, 1 -mc33_hpfp_i_hold_off = scalar, U08, 1638, "us", 1, 0, 0, 255, 0 -mc33_hpfp_max_hold = scalar, U08, 1639, "ms", 1, 0, 0, 255, 0 -stepperDcInvertedPins = bits, U32, 1640, [0:0], "false", "true" -canOpenBLT = bits, U32, 1640, [1:1], "false", "true" -can2OpenBLT = bits, U32, 1640, [2:2], "false", "true" -injectorFlowAsMassFlow = bits, U32, 1640, [3:3], "volumetric flow", "mass flow" -boardUseCanTerminator = bits, U32, 1640, [4:4], "false", "true" -kLineDoHondaSend = bits, U32, 1640, [5:5], "false", "true" -can1ListenMode = bits, U32, 1640, [6:6], "false", "true" -can2ListenMode = bits, U32, 1640, [7:7], "false", "true" -camDecoder2jzPosition = scalar, U08, 1644, "", 1, 0, 0, 100, 0 -mc33810maxDwellTimer = bits, U08, 1645, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" -benchTestOnTime = scalar, U16, 1646, "ms", 0.01, 0, 0, 500, 2 -lambdaProtectionRestoreTps = scalar, U08, 1648, "%", 1, 0, 0, 100, 0 -lambdaProtectionRestoreLoad = scalar, U08, 1649, "%", 10.0, 0, 0, 1000, 0 -launchActivatePinMode = bits, U08, 1650, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -can2TxPin = bits, U16, 1652, [0:7], $gpio_list -can2RxPin = bits, U16, 1654, [0:7], $gpio_list -starterControlPinMode = bits, U08, 1656, [0:1], "default", "default inverted", "open collector", "open collector inverted" -wastegatePositionSensor = bits, U08, 1657, [0:5], $adc_channel_e_list -ignOverrideMode = bits, U08, 1658, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" -injectorPressureType = bits, U08, 1659, [0:0], "Low", "High" -hpfpValvePin = bits, U16, 1660, [0:8], $output_pin_e_list -hpfpValvePinMode = bits, U08, 1662, [0:1], "default", "default inverted", "open collector", "open collector inverted" -boostCutPressure = scalar, F32, 1664, "kPa (absolute)", 1, 0, 0, 1000, 0 -tchargeBins = array, U08, 1668, [16], "kg/h", 5.0, 0, 0, 1200, 0 -tchargeValues = array, U08, 1684, [16], "ratio", 0.01, 0, 0, 1, 2 -fixedTiming = scalar, F32, 1700, "deg", 1, 0, -720, 720, 2 -mapLowValueVoltage = scalar, F32, 1704, "v", 1, 0, 0, 10, 2 -mapHighValueVoltage = scalar, F32, 1708, "v", 1, 0, 0, 10, 2 -egoValueShift = scalar, F32, 1712, "value", 1, 0, -10, 10, 2 -vvtPins1 = bits, U16, 1716, [0:8], $output_pin_e_list -vvtPins2 = bits, U16, 1718, [0:8], $output_pin_e_list -vvtPins3 = bits, U16, 1720, [0:8], $output_pin_e_list -vvtPins4 = bits, U16, 1722, [0:8], $output_pin_e_list -sdCardCsPinMode = bits, U08, 1724, [0:1], "default", "default inverted", "open collector", "open collector inverted" -crankingIACposition = scalar, S32, 1728, "percent", 1, 0, -100, 100, 0 -tChargeMinRpmMinTps = scalar, F32, 1732, "", 1, 0, 0, 3, 4 -tChargeMinRpmMaxTps = scalar, F32, 1736, "", 1, 0, 0, 3, 4 -tChargeMaxRpmMinTps = scalar, F32, 1740, "", 1, 0, 0, 3, 4 -tChargeMaxRpmMaxTps = scalar, F32, 1744, "", 1, 0, 0, 3, 4 -vvtOutputFrequency = scalar, U16, 1748, "Hz", 1, 0, 0, 3000, 0 -minimumIgnitionTiming = scalar, S08, 1750, "deg BTDC", 1, 0, -90, 90, 0 -maximumIgnitionTiming = scalar, S08, 1751, "deg BTDC", 1, 0, -90, 90, 0 -alternatorPwmFrequency = scalar, S32, 1752, "Hz", 1, 0, 0, 3000, 0 -vvtMode1 = bits, U08, 1756, [0:5], "Inactive", "Single Tooth", "Toyota 3 Tooth", "Miata NB2", "Mitsu 4G69", "Bosch Quick Start", "4/1", "ST 170", "Ford Barra 3+1", "Nissan VQ", "Honda K Intake", "Nissan MR18", "Mitsu 3A92", "VTwin by MAP", "Mitsu 6G75", "Mazda Skyactiv", "Honda K Exhaust", "Mitsubishi 4G92/93/94", "Mitsubishi 4G63", "Ford Coyote", "Mitsu 6G72", "Honda 600", "vvt22", "vvt23", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -vvtMode2 = bits, U08, 1757, [0:5], "Inactive", "Single Tooth", "Toyota 3 Tooth", "Miata NB2", "Mitsu 4G69", "Bosch Quick Start", "4/1", "ST 170", "Ford Barra 3+1", "Nissan VQ", "Honda K Intake", "Nissan MR18", "Mitsu 3A92", "VTwin by MAP", "Mitsu 6G75", "Mazda Skyactiv", "Honda K Exhaust", "Mitsubishi 4G92/93/94", "Mitsubishi 4G63", "Ford Coyote", "Mitsu 6G72", "Honda 600", "vvt22", "vvt23", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -fan2ExtraIdle = scalar, U08, 1758, "%", 1, 0, 0, 100, 0 -primingDelay = scalar, U08, 1759, "sec", 0.01, 0, 0, 1, 2 -auxAnalogInputs1 = bits, U08, 1760, [0:5], $adc_channel_e_list -auxAnalogInputs2 = bits, U08, 1761, [0:5], $adc_channel_e_list -auxAnalogInputs3 = bits, U08, 1762, [0:5], $adc_channel_e_list -auxAnalogInputs4 = bits, U08, 1763, [0:5], $adc_channel_e_list -auxAnalogInputs5 = bits, U08, 1764, [0:5], $adc_channel_e_list -auxAnalogInputs6 = bits, U08, 1765, [0:5], $adc_channel_e_list -auxAnalogInputs7 = bits, U08, 1766, [0:5], $adc_channel_e_list -auxAnalogInputs8 = bits, U08, 1767, [0:5], $adc_channel_e_list -trailingCoilPins1 = bits, U16, 1768, [0:8], $output_pin_e_list -trailingCoilPins2 = bits, U16, 1770, [0:8], $output_pin_e_list -trailingCoilPins3 = bits, U16, 1772, [0:8], $output_pin_e_list -trailingCoilPins4 = bits, U16, 1774, [0:8], $output_pin_e_list -trailingCoilPins5 = bits, U16, 1776, [0:8], $output_pin_e_list -trailingCoilPins6 = bits, U16, 1778, [0:8], $output_pin_e_list -trailingCoilPins7 = bits, U16, 1780, [0:8], $output_pin_e_list -trailingCoilPins8 = bits, U16, 1782, [0:8], $output_pin_e_list -trailingCoilPins9 = bits, U16, 1784, [0:8], $output_pin_e_list -trailingCoilPins10 = bits, U16, 1786, [0:8], $output_pin_e_list -trailingCoilPins11 = bits, U16, 1788, [0:8], $output_pin_e_list -trailingCoilPins12 = bits, U16, 1790, [0:8], $output_pin_e_list -tle8888mode = bits, U08, 1792, [0:1], "Auto", "SemiAuto", "Manual", "Hall" -accelerometerCsPinMode = bits, U08, 1793, [0:1], "default", "default inverted", "open collector", "open collector inverted" -injectorCompensationMode = bits, U08, 1794, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" -fan2PinMode = bits, U08, 1795, [0:1], "default", "default inverted", "open collector", "open collector inverted" -fuelReferencePressure = scalar, F32, 1796, "kPa", 1, 0, 50, 700000, 0 -postCrankingFactor = array, F32, 1800, [6x6], "mult", 1, 0, 1, 3, 2 -postCrankingDurationBins = array, F32, 1944, [6], "count", 1, 0, 0, 1000, 0 -postCrankingCLTBins = array, F32, 1968, [6], "C", 1, 0, -100, 100, 0 -auxTempSensor1_tempC_1 = scalar, F32, 1992, "*C", 1, 0, -55, 200, 1 -auxTempSensor1_tempC_2 = scalar, F32, 1996, "*C", 1, 0, -55, 200, 1 -auxTempSensor1_tempC_3 = scalar, F32, 2000, "*C", 1, 0, -55, 200, 1 -auxTempSensor1_resistance_1 = scalar, F32, 2004, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor1_resistance_2 = scalar, F32, 2008, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor1_resistance_3 = scalar, F32, 2012, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor1_bias_resistor = scalar, F32, 2016, "Ohm", 1, 0, 0, 200000, 1 -auxTempSensor1_adcChannel = bits, U08, 2020, [0:5], $adc_channel_e_list -auxTempSensor2_tempC_1 = scalar, F32, 2024, "*C", 1, 0, -55, 200, 1 -auxTempSensor2_tempC_2 = scalar, F32, 2028, "*C", 1, 0, -55, 200, 1 -auxTempSensor2_tempC_3 = scalar, F32, 2032, "*C", 1, 0, -55, 200, 1 -auxTempSensor2_resistance_1 = scalar, F32, 2036, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor2_resistance_2 = scalar, F32, 2040, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor2_resistance_3 = scalar, F32, 2044, "Ohm", 1, 0, 0, 1000000, 1 -auxTempSensor2_bias_resistor = scalar, F32, 2048, "Ohm", 1, 0, 0, 200000, 1 -auxTempSensor2_adcChannel = bits, U08, 2052, [0:5], $adc_channel_e_list -knockSamplingDuration = scalar, S16, 2056, "Deg", 1, 0, 0, 720, 0 -etbFreq = scalar, S16, 2058, "Hz", 1, 0, 0, 3000, 0 -etbWastegatePid_pFactor = scalar, F32, 2060, "", 1, 0, -10000, 10000, 4 -etbWastegatePid_iFactor = scalar, F32, 2064, "", 1, 0, -10000, 10000, 4 -etbWastegatePid_dFactor = scalar, F32, 2068, "", 1, 0, -10000, 10000, 4 -etbWastegatePid_offset = scalar, S16, 2072, "", 1, 0, -1000, 1000, 0 -etbWastegatePid_periodMs = scalar, S16, 2074, "ms", 1, 0, 0, 3000, 0 -etbWastegatePid_minValue = scalar, S16, 2076, "", 1, 0, -30000, 30000, 0 -etbWastegatePid_maxValue = scalar, S16, 2078, "", 1, 0, -30000, 30000, 0 -stepperNumMicroSteps = bits, U08, 2080, [0:3], "Full-Step (Default)", "INVALID", "Half-Step", "INVALID", "1/4 Micro-Step", "INVALID", "INVALID", "INVALID", "1/8 Micro-Step", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -stepperMinDutyCycle = scalar, U08, 2081, "%", 1, 0, 0, 100, 0 -stepperMaxDutyCycle = scalar, U08, 2082, "%", 1, 0, 0, 100, 0 -sdCardSpiDevice = bits, U08, 2083, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -timing_offset_cylinder1 = scalar, F32, 2084, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder2 = scalar, F32, 2088, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder3 = scalar, F32, 2092, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder4 = scalar, F32, 2096, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder5 = scalar, F32, 2100, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder6 = scalar, F32, 2104, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder7 = scalar, F32, 2108, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder8 = scalar, F32, 2112, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder9 = scalar, F32, 2116, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder10 = scalar, F32, 2120, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder11 = scalar, F32, 2124, "deg", 1, 0, -720, 720, 1 -timing_offset_cylinder12 = scalar, F32, 2128, "deg", 1, 0, -720, 720, 1 -idlePidActivationTime = scalar, F32, 2132, "seconds", 1, 0, 0, 60, 1 -spi1SckMode = bits, U08, 2136, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -spi1MosiMode = bits, U08, 2137, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -spi1MisoMode = bits, U08, 2138, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -spi2SckMode = bits, U08, 2139, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -spi2MosiMode = bits, U08, 2140, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -spi2MisoMode = bits, U08, 2141, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -spi3SckMode = bits, U08, 2142, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -spi3MosiMode = bits, U08, 2143, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -spi3MisoMode = bits, U08, 2144, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -stepperEnablePinMode = bits, U08, 2145, [0:1], "default", "default inverted", "open collector", "open collector inverted" -mc33816_rstb = bits, U16, 2146, [0:7], $gpio_list -mc33816_driven = bits, U16, 2148, [0:7], $gpio_list -brakePedalPin = bits, U16, 2150, [0:7], $switch_input_pin_e_list -brakePedalPinMode = bits, U08, 2152, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -auxPid1_pFactor = scalar, F32, 2156, "", 1, 0, -10000, 10000, 4 -auxPid1_iFactor = scalar, F32, 2160, "", 1, 0, -10000, 10000, 4 -auxPid1_dFactor = scalar, F32, 2164, "", 1, 0, -10000, 10000, 4 -auxPid1_offset = scalar, S16, 2168, "", 1, 0, -1000, 1000, 0 -auxPid1_periodMs = scalar, S16, 2170, "ms", 1, 0, 0, 3000, 0 -auxPid1_minValue = scalar, S16, 2172, "", 1, 0, -30000, 30000, 0 -auxPid1_maxValue = scalar, S16, 2174, "", 1, 0, -30000, 30000, 0 -auxPid2_pFactor = scalar, F32, 2176, "", 1, 0, -10000, 10000, 4 -auxPid2_iFactor = scalar, F32, 2180, "", 1, 0, -10000, 10000, 4 -auxPid2_dFactor = scalar, F32, 2184, "", 1, 0, -10000, 10000, 4 -auxPid2_offset = scalar, S16, 2188, "", 1, 0, -1000, 1000, 0 -auxPid2_periodMs = scalar, S16, 2190, "ms", 1, 0, 0, 3000, 0 -auxPid2_minValue = scalar, S16, 2192, "", 1, 0, -30000, 30000, 0 -auxPid2_maxValue = scalar, S16, 2194, "", 1, 0, -30000, 30000, 0 -injectorCorrectionPolynomial1 = scalar, F32, 2196, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial2 = scalar, F32, 2200, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial3 = scalar, F32, 2204, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial4 = scalar, F32, 2208, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial5 = scalar, F32, 2212, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial6 = scalar, F32, 2216, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial7 = scalar, F32, 2220, "", 1, 0, -1000, 1000, 4 -injectorCorrectionPolynomial8 = scalar, F32, 2224, "", 1, 0, -1000, 1000, 4 -primeBins = array, S08, 2228, [8], "C", 1, 0, -40, 120, 0 -oilPressure_hwChannel = bits, U08, 2236, [0:5], $adc_channel_e_list -oilPressure_v1 = scalar, F32, 2240, "volts", 1, 0, 0, 10, 2 -oilPressure_value1 = scalar, F32, 2244, "", 1, 0, 0, 1000000, 2 -oilPressure_v2 = scalar, F32, 2248, "volts", 1, 0, 0, 10, 2 -oilPressure_value2 = scalar, F32, 2252, "", 1, 0, 0, 1000000, 2 -accelerometerSpiDevice = bits, U08, 2256, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -fan2Pin = bits, U16, 2258, [0:8], $output_pin_e_list -fan2OnTemperature = scalar, U08, 2260, "deg C", 1, 0, 0, 150, 0 -fan2OffTemperature = scalar, U08, 2261, "deg C", 1, 0, 0, 150, 0 -stepperEnablePin = bits, U16, 2262, [0:7], $gpio_list -tle8888_cs = bits, U16, 2264, [0:7], $gpio_list -tle8888_csPinMode = bits, U08, 2266, [0:1], "default", "default inverted", "open collector", "open collector inverted" -mc33816_cs = bits, U16, 2268, [0:7], $gpio_list -auxFrequencyFilter = scalar, F32, 2272, "hz", 1, 0, 0, 100, 1 -vvtControlMinRpm = scalar, S16, 2276, "RPM", 1, 0, 0, 3000, 0 -sentInputPins1 = bits, U16, 2278, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -launchFuelAdderPercent = scalar, S08, 2280, "%", 1, 0, 0, 100, 0 -etbJamTimeout = scalar, U08, 2281, "sec", 0.02, 0, 0, 5, 2 -etbExpAverageLength = scalar, U16, 2282, "", 1, 0, 0, 32000, 0 -unused645646 = scalar, F32, 2284, "", 1, 0, 0, 100, 0 -coastingFuelCutRpmHigh = scalar, S16, 2288, "rpm", 1, 0, 0, 5000, 0 -coastingFuelCutRpmLow = scalar, S16, 2290, "rpm", 1, 0, 0, 5000, 0 -coastingFuelCutTps = scalar, S16, 2292, "%", 1, 0, 0, 20, 0 -coastingFuelCutClt = scalar, S16, 2294, "C", 1, 0, -100, 100, 0 -pidExtraForLowRpm = scalar, S16, 2296, "%", 1, 0, 0, 100, 0 -coastingFuelCutMap = scalar, S16, 2298, "kPa", 1, 0, 0, 250, 0 -highPressureFuel_hwChannel = bits, U08, 2300, [0:5], $adc_channel_e_list -highPressureFuel_v1 = scalar, F32, 2304, "volts", 1, 0, 0, 10, 2 -highPressureFuel_value1 = scalar, F32, 2308, "", 1, 0, 0, 1000000, 2 -highPressureFuel_v2 = scalar, F32, 2312, "volts", 1, 0, 0, 10, 2 -highPressureFuel_value2 = scalar, F32, 2316, "", 1, 0, 0, 1000000, 2 -lowPressureFuel_hwChannel = bits, U08, 2320, [0:5], $adc_channel_e_list -lowPressureFuel_v1 = scalar, F32, 2324, "volts", 1, 0, 0, 10, 2 -lowPressureFuel_value1 = scalar, F32, 2328, "", 1, 0, 0, 1000000, 2 -lowPressureFuel_v2 = scalar, F32, 2332, "volts", 1, 0, 0, 10, 2 -lowPressureFuel_value2 = scalar, F32, 2336, "", 1, 0, 0, 1000000, 2 -cltRevLimitRpmBins = array, S08, 2340, [4], "C", 1, 0, -40, 120, 0 -cltRevLimitRpm = array, U16, 2344, [4], "RPM", 1, 0, 0, 20000, 0 -scriptCurveName1 = string, ASCII, 2352, 16 -scriptCurveName2 = string, ASCII, 2368, 16 -scriptCurveName3 = string, ASCII, 2384, 16 -scriptCurveName4 = string, ASCII, 2400, 16 -scriptCurveName5 = string, ASCII, 2416, 16 -scriptCurveName6 = string, ASCII, 2432, 16 -scriptTableName1 = string, ASCII, 2448, 16 -scriptTableName2 = string, ASCII, 2464, 16 -scriptTableName3 = string, ASCII, 2480, 16 -scriptTableName4 = string, ASCII, 2496, 16 -scriptSettingName1 = string, ASCII, 2512, 16 -scriptSettingName2 = string, ASCII, 2528, 16 -scriptSettingName3 = string, ASCII, 2544, 16 -scriptSettingName4 = string, ASCII, 2560, 16 -scriptSettingName5 = string, ASCII, 2576, 16 -scriptSettingName6 = string, ASCII, 2592, 16 -scriptSettingName7 = string, ASCII, 2608, 16 -scriptSettingName8 = string, ASCII, 2624, 16 -tChargeAirCoefMin = scalar, F32, 2640, "", 1, 0, 0, 1, 3 -tChargeAirCoefMax = scalar, F32, 2644, "", 1, 0, 0, 1, 3 -tChargeAirFlowMax = scalar, F32, 2648, "kg/h", 1, 0, 0, 1000, 1 -tChargeAirIncrLimit = scalar, F32, 2652, "deg/sec", 1, 0, 0, 100, 1 -tChargeAirDecrLimit = scalar, F32, 2656, "deg/sec", 1, 0, 0, 100, 1 -tChargeMode = bits, U08, 2660, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" -hip9011Gain = scalar, F32, 2664, "", 1, 0, 0, 100, 2 -etb_iTermMin = scalar, S16, 2668, "", 1, 0, -30000, 30000, 0 -etb_iTermMax = scalar, S16, 2670, "", 1, 0, -30000, 30000, 0 -idleTimingPid_pFactor = scalar, F32, 2672, "", 1, 0, -10000, 10000, 4 -idleTimingPid_iFactor = scalar, F32, 2676, "", 1, 0, -10000, 10000, 4 -idleTimingPid_dFactor = scalar, F32, 2680, "", 1, 0, -10000, 10000, 4 -idleTimingPid_offset = scalar, S16, 2684, "", 1, 0, -1000, 1000, 0 -idleTimingPid_periodMs = scalar, S16, 2686, "ms", 1, 0, 0, 3000, 0 -idleTimingPid_minValue = scalar, S16, 2688, "", 1, 0, -30000, 30000, 0 -idleTimingPid_maxValue = scalar, S16, 2690, "", 1, 0, -30000, 30000, 0 -idleTimingSoftEntryTime = scalar, F32, 2692, "", 1, 0, 0, 100, 1 -etbRocExpAverageLength = scalar, S16, 2696, "", 1, 0, 0, 32000, 0 -tpsAccelFractionPeriod = scalar, S16, 2698, "cycles", 1, 0, 0, 500, 0 -tpsAccelFractionDivisor = scalar, F32, 2700, "coef", 1, 0, 1, 100, 2 -tle8888spiDevice = bits, U08, 2704, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -mc33816spiDevice = bits, U08, 2705, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -idlerpmpid_iTermMin = scalar, S16, 2706, "", 1, 0, -30000, 30000, 0 -tle6240spiDevice = bits, U08, 2708, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" -stoichRatioPrimary = scalar, U08, 2709, ":1", 0.1, 0, 5, 25, 1 -idlerpmpid_iTermMax = scalar, S16, 2710, "", 1, 0, -30000, 30000, 0 -etbIdleThrottleRange = scalar, F32, 2712, "%", 1, 0, 0, 15, 0 -cylinderBankSelect1 = scalar, U08, 2716, "", 1, 1, 1, 2, 0 -cylinderBankSelect2 = scalar, U08, 2717, "", 1, 1, 1, 2, 0 -cylinderBankSelect3 = scalar, U08, 2718, "", 1, 1, 1, 2, 0 -cylinderBankSelect4 = scalar, U08, 2719, "", 1, 1, 1, 2, 0 -cylinderBankSelect5 = scalar, U08, 2720, "", 1, 1, 1, 2, 0 -cylinderBankSelect6 = scalar, U08, 2721, "", 1, 1, 1, 2, 0 -cylinderBankSelect7 = scalar, U08, 2722, "", 1, 1, 1, 2, 0 -cylinderBankSelect8 = scalar, U08, 2723, "", 1, 1, 1, 2, 0 -cylinderBankSelect9 = scalar, U08, 2724, "", 1, 1, 1, 2, 0 -cylinderBankSelect10 = scalar, U08, 2725, "", 1, 1, 1, 2, 0 -cylinderBankSelect11 = scalar, U08, 2726, "", 1, 1, 1, 2, 0 -cylinderBankSelect12 = scalar, U08, 2727, "", 1, 1, 1, 2, 0 -primeValues = array, U08, 2728, [8], "mg", 5.0, 0, 0, 1250, 0 -triggerCompCenterVolt = scalar, U08, 2736, "V", 0.02, 0, 0, 5.1, 2 -triggerCompHystMin = scalar, U08, 2737, "V", 0.02, 0, 0, 5.1, 2 -triggerCompHystMax = scalar, U08, 2738, "V", 0.02, 0, 0, 5.1, 2 -triggerCompSensorSatRpm = scalar, U08, 2739, "RPM", 50.0, 0, 0, 12000, 0 -tractionControlSlipBins = array, U16, 2740, [6], "ratio", 0.01, 0, 0, 999, 2 -tractionControlSpeedBins = array, U08, 2752, [6], "RPM", 1, 0, 0, 250, 0 -disableFan1AtSpeed = scalar, S08, 2758, "", 1, 0, 0, 100, 0 -disableFan2AtSpeed = scalar, S08, 2759, "", 1, 0, 0, 100, 0 -canVssNbcType = bits, U08, 2760, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" -gppwm1_pin = bits, U16, 2764, [0:8], $output_pin_e_list -gppwm1_dutyIfError = scalar, U08, 2766, "%", 1, 0, 0, 100, 0 -gppwm1_pwmFrequency = scalar, U16, 2768, "hz", 1, 0, 0, 500, 0 -gppwm1_onAboveDuty = scalar, U08, 2770, "%", 1, 0, 0, 100, 0 -gppwm1_offBelowDuty = scalar, U08, 2771, "%", 1, 0, 0, 100, 0 -gppwm1_loadAxis = bits, U08, 2772, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -gppwm1_rpmAxis = bits, U08, 2773, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -gppwm1_loadBins = array, S16, 2774, [8], "load", 0.5, 0, -1000, 10000, 1 -gppwm1_rpmBins = array, S16, 2790, [8], "RPM", 1, 0, -30000, 30000, 0 -gppwm1_table = array, U08, 2806, [8x8], "duty", 0.5, 0, 0, 100, 1 -gppwm2_pin = bits, U16, 2872, [0:8], $output_pin_e_list -gppwm2_dutyIfError = scalar, U08, 2874, "%", 1, 0, 0, 100, 0 -gppwm2_pwmFrequency = scalar, U16, 2876, "hz", 1, 0, 0, 500, 0 -gppwm2_onAboveDuty = scalar, U08, 2878, "%", 1, 0, 0, 100, 0 -gppwm2_offBelowDuty = scalar, U08, 2879, "%", 1, 0, 0, 100, 0 -gppwm2_loadAxis = bits, U08, 2880, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -gppwm2_rpmAxis = bits, U08, 2881, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -gppwm2_loadBins = array, S16, 2882, [8], "load", 0.5, 0, -1000, 10000, 1 -gppwm2_rpmBins = array, S16, 2898, [8], "RPM", 1, 0, -30000, 30000, 0 -gppwm2_table = array, U08, 2914, [8x8], "duty", 0.5, 0, 0, 100, 1 -gppwm3_pin = bits, U16, 2980, [0:8], $output_pin_e_list -gppwm3_dutyIfError = scalar, U08, 2982, "%", 1, 0, 0, 100, 0 -gppwm3_pwmFrequency = scalar, U16, 2984, "hz", 1, 0, 0, 500, 0 -gppwm3_onAboveDuty = scalar, U08, 2986, "%", 1, 0, 0, 100, 0 -gppwm3_offBelowDuty = scalar, U08, 2987, "%", 1, 0, 0, 100, 0 -gppwm3_loadAxis = bits, U08, 2988, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -gppwm3_rpmAxis = bits, U08, 2989, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -gppwm3_loadBins = array, S16, 2990, [8], "load", 0.5, 0, -1000, 10000, 1 -gppwm3_rpmBins = array, S16, 3006, [8], "RPM", 1, 0, -30000, 30000, 0 -gppwm3_table = array, U08, 3022, [8x8], "duty", 0.5, 0, 0, 100, 1 -gppwm4_pin = bits, U16, 3088, [0:8], $output_pin_e_list -gppwm4_dutyIfError = scalar, U08, 3090, "%", 1, 0, 0, 100, 0 -gppwm4_pwmFrequency = scalar, U16, 3092, "hz", 1, 0, 0, 500, 0 -gppwm4_onAboveDuty = scalar, U08, 3094, "%", 1, 0, 0, 100, 0 -gppwm4_offBelowDuty = scalar, U08, 3095, "%", 1, 0, 0, 100, 0 -gppwm4_loadAxis = bits, U08, 3096, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -gppwm4_rpmAxis = bits, U08, 3097, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -gppwm4_loadBins = array, S16, 3098, [8], "load", 0.5, 0, -1000, 10000, 1 -gppwm4_rpmBins = array, S16, 3114, [8], "RPM", 1, 0, -30000, 30000, 0 -gppwm4_table = array, U08, 3130, [8x8], "duty", 0.5, 0, 0, 100, 1 -mc33_i_boost = scalar, U16, 3196, "mA", 1, 0, 1000, 25000, 0 -mc33_i_peak = scalar, U16, 3198, "mA", 1, 0, 1000, 20000, 0 -mc33_i_hold = scalar, U16, 3200, "mA", 1, 0, 1000, 20000, 0 -mc33_t_max_boost = scalar, U16, 3202, "us", 1, 0, 0, 10000, 0 -mc33_t_peak_off = scalar, U16, 3204, "us", 1, 0, 0, 10000, 0 -mc33_t_peak_tot = scalar, U16, 3206, "us", 1, 0, 0, 10000, 0 -mc33_t_bypass = scalar, U16, 3208, "us", 1, 0, 0, 10000, 0 -mc33_t_hold_off = scalar, U16, 3210, "us", 1, 0, 0, 10000, 0 -mc33_t_hold_tot = scalar, U16, 3212, "us", 1, 0, 0, 10000, 0 -tcuUpshiftButtonPinMode = bits, U08, 3214, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcuDownshiftButtonPinMode = bits, U08, 3215, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -acSwitchMode = bits, U08, 3216, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_solenoid_mode1 = bits, U08, 3217, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode2 = bits, U08, 3218, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode3 = bits, U08, 3219, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode4 = bits, U08, 3220, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode5 = bits, U08, 3221, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_solenoid_mode6 = bits, U08, 3222, [0:1], "default", "default inverted", "open collector", "open collector inverted" -knockBaseNoise = array, S08, 3223, [16], "dB", 0.5, 0, -50, 10, 1 -triggerGapOverrideFrom1 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom2 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom3 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom4 = scalar, F32, 3252, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom5 = scalar, F32, 3256, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom6 = scalar, F32, 3260, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom7 = scalar, F32, 3264, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom8 = scalar, F32, 3268, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom9 = scalar, F32, 3272, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom10 = scalar, F32, 3276, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom11 = scalar, F32, 3280, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom12 = scalar, F32, 3284, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom13 = scalar, F32, 3288, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom14 = scalar, F32, 3292, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom15 = scalar, F32, 3296, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom16 = scalar, F32, 3300, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom17 = scalar, F32, 3304, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideFrom18 = scalar, F32, 3308, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo1 = scalar, F32, 3312, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo2 = scalar, F32, 3316, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo3 = scalar, F32, 3320, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo4 = scalar, F32, 3324, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo5 = scalar, F32, 3328, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo6 = scalar, F32, 3332, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo7 = scalar, F32, 3336, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo8 = scalar, F32, 3340, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo9 = scalar, F32, 3344, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo10 = scalar, F32, 3348, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo11 = scalar, F32, 3352, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo12 = scalar, F32, 3356, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo13 = scalar, F32, 3360, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo14 = scalar, F32, 3364, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo15 = scalar, F32, 3368, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo16 = scalar, F32, 3372, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo17 = scalar, F32, 3376, "ratio", 1, 0, 0, 20, 3 -triggerGapOverrideTo18 = scalar, F32, 3380, "ratio", 1, 0, 0, 20, 3 -maxCamPhaseResolveRpm = scalar, U08, 3384, "rpm", 50.0, 0, 0, 12500, 0 -dfcoDelay = scalar, U08, 3385, "sec", 0.1, 0, 0, 10, 1 -acDelay = scalar, U08, 3386, "sec", 0.1, 0, 0, 10, 1 -fordInjectorSmallPulseBreakPoint = scalar, U16, 3388, "mg", 0.001, 0, 0, 65, 3 -tpsTspCorrValues = array, U08, 3390, [4], "multiplier", 0.02, 0, 0, 5, 2 -etbJamIntegratorLimit = scalar, U08, 3394, "%", 1, 0, 0, 50, 0 -hpfpCamLobes = scalar, U08, 3395, "lobes/cam", 1, 0, 0, 255, 0 -hpfpCam = bits, U08, 3396, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" -auxiliarySetting1 = scalar, U08, 3397, "", 1, 0, 0, 100, 0 -hpfpMinAngle = scalar, U08, 3398, "deg", 1, 0, 0, 255, 0 -hpfpPumpVolume = scalar, U16, 3400, "cc", 0.001, 0, 0, 65, 3 -hpfpActivationAngle = scalar, U08, 3402, "deg", 1, 0, 0, 255, 0 -issFilterReciprocal = scalar, U08, 3403, "", 1, 0, 0, 255, 0 -hpfpPidP = scalar, U16, 3404, "%/kPa", 0.001, 0, 0, 65, 3 -hpfpPidI = scalar, U16, 3406, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 -hpfpTargetDecay = scalar, U16, 3408, "kPa/s", 1, 0, 0, 65000, 0 -hpfpLobeProfileQuantityBins = array, U08, 3410, [16], "%", 0.5, 0, 0, 100, 1 -hpfpLobeProfileAngle = array, U08, 3426, [16], "deg", 0.5, 0, 0, 125, 1 -hpfpDeadtimeVoltsBins = array, U08, 3442, [8], "volts", 1, 0, 0, 255, 0 -hpfpDeadtimeMS = array, U16, 3450, [8], "ms", 0.001, 0, 0, 65, 3 -hpfpTarget = array, U16, 3466, [10x10], "kPa", 1, 0, 0, 65000, 0 -hpfpTargetLoadBins = array, U16, 3666, [10], "load", 0.1, 0, 0, 6500, 1 -hpfpTargetRpmBins = array, U08, 3686, [10], "RPM", 50.0, 0, 0, 12500, 0 -hpfpCompensation = array, S08, 3696, [10x10], "%", 1, 0, -100, 100, 0 -hpfpCompensationLoadBins = array, U16, 3796, [10], "cc/lobe", 0.001, 0, 0, 65, 3 -hpfpCompensationRpmBins = array, U08, 3816, [10], "RPM", 50.0, 0, 0, 12500, 0 -stepper_raw_output1 = bits, U16, 3826, [0:8], $output_pin_e_list -stepper_raw_output2 = bits, U16, 3828, [0:8], $output_pin_e_list -stepper_raw_output3 = bits, U16, 3830, [0:8], $output_pin_e_list -stepper_raw_output4 = bits, U16, 3832, [0:8], $output_pin_e_list -gearRatio1 = scalar, U16, 3834, "ratio", 0.01, 0, 0, 30, 2 -gearRatio2 = scalar, U16, 3836, "ratio", 0.01, 0, 0, 30, 2 -gearRatio3 = scalar, U16, 3838, "ratio", 0.01, 0, 0, 30, 2 -gearRatio4 = scalar, U16, 3840, "ratio", 0.01, 0, 0, 30, 2 -gearRatio5 = scalar, U16, 3842, "ratio", 0.01, 0, 0, 30, 2 -gearRatio6 = scalar, U16, 3844, "ratio", 0.01, 0, 0, 30, 2 -gearRatio7 = scalar, U16, 3846, "ratio", 0.01, 0, 0, 30, 2 -gearRatio8 = scalar, U16, 3848, "ratio", 0.01, 0, 0, 30, 2 -gearRatio9 = scalar, U16, 3850, "ratio", 0.01, 0, 0, 30, 2 -gearRatio10 = scalar, U16, 3852, "ratio", 0.01, 0, 0, 30, 2 -vvtActivationDelayMs = scalar, U16, 3854, "ms", 1, 0, 0, 65000, 0 -wwCltBins = array, S08, 3856, [8], "deg C", 1, 0, -40, 120, 0 -wwTauCltValues = array, U08, 3864, [8], "", 0.01, 0, 0, 2.5, 2 -wwBetaCltValues = array, U08, 3872, [8], "", 0.01, 0, 0, 1, 2 -wwMapBins = array, S08, 3880, [8], "kPa", 1, 0, 0, 250, 0 -wwTauMapValues = array, U08, 3888, [8], "", 0.01, 0, 0, 2.5, 2 -wwBetaMapValues = array, U08, 3896, [8], "", 0.01, 0, 0, 2.5, 2 -torqueTable = array, U08, 3904, [6x6], "Nm", 10.0, 0, 0, 255, 0 -torqueRpmBins = array, U16, 3940, [6], "RPM", 1, 0, 0, 65000, 0 -torqueLoadBins = array, U16, 3952, [6], "Load", 1, 0, 0, 65000, 0 -gearControllerMode = bits, U08, 3964, [0:1], "None", "Button Shift", "INVALID", "INVALID" -transmissionControllerMode = bits, U08, 3965, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" -acrDisablePhase = scalar, U16, 3966, "deg", 1, 0, 0, 720, 0 -auxLinear1_hwChannel = bits, U08, 3968, [0:5], $adc_channel_e_list -auxLinear1_v1 = scalar, F32, 3972, "volts", 1, 0, 0, 10, 2 -auxLinear1_value1 = scalar, F32, 3976, "", 1, 0, 0, 1000000, 2 -auxLinear1_v2 = scalar, F32, 3980, "volts", 1, 0, 0, 10, 2 -auxLinear1_value2 = scalar, F32, 3984, "", 1, 0, 0, 1000000, 2 -auxLinear2_hwChannel = bits, U08, 3988, [0:5], $adc_channel_e_list -auxLinear2_v1 = scalar, F32, 3992, "volts", 1, 0, 0, 10, 2 -auxLinear2_value1 = scalar, F32, 3996, "", 1, 0, 0, 1000000, 2 -auxLinear2_v2 = scalar, F32, 4000, "volts", 1, 0, 0, 10, 2 -auxLinear2_value2 = scalar, F32, 4004, "", 1, 0, 0, 1000000, 2 -tcu_tcc_onoff_solenoid = bits, U16, 4008, [0:8], $output_pin_e_list -tcu_tcc_onoff_solenoid_mode = bits, U08, 4010, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_tcc_pwm_solenoid = bits, U16, 4012, [0:8], $output_pin_e_list -tcu_tcc_pwm_solenoid_mode = bits, U08, 4014, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_tcc_pwm_solenoid_freq = scalar, U16, 4016, "Hz", 1, 0, 0, 3000, 0 -tcu_pc_solenoid_pin = bits, U16, 4018, [0:8], $output_pin_e_list -tcu_pc_solenoid_pin_mode = bits, U08, 4020, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_pc_solenoid_freq = scalar, U16, 4022, "Hz", 1, 0, 0, 3000, 0 -tcu_32_solenoid_pin = bits, U16, 4024, [0:8], $output_pin_e_list -tcu_32_solenoid_pin_mode = bits, U08, 4026, [0:1], "default", "default inverted", "open collector", "open collector inverted" -tcu_32_solenoid_freq = scalar, U16, 4028, "Hz", 1, 0, 0, 3000, 0 -acrPin2 = bits, U16, 4030, [0:8], $output_pin_e_list -etbMinimumPosition = scalar, F32, 4032, "%", 1, 0, 0.01, 100, 2 -tuneHidingKey = scalar, U16, 4036, "", 1, 0, 0, 20000, 0 -vinNumber = string, ASCII, 4038, 17 -highSpeedOffsets = array, U16, 4056, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave -unused3124141 = scalar, F32, 4120, "", 1, 0, 0, 100, 0 -fuelPressureSensorMode = bits, U08, 4124, [0:1], "Absolute", "Gauge", "Differential", "INVALID" -luaDigitalInputPins1 = bits, U16, 4126, [0:7], $switch_input_pin_e_list -luaDigitalInputPins2 = bits, U16, 4128, [0:7], $switch_input_pin_e_list -luaDigitalInputPins3 = bits, U16, 4130, [0:7], $switch_input_pin_e_list -luaDigitalInputPins4 = bits, U16, 4132, [0:7], $switch_input_pin_e_list -luaDigitalInputPins5 = bits, U16, 4134, [0:7], $switch_input_pin_e_list -luaDigitalInputPins6 = bits, U16, 4136, [0:7], $switch_input_pin_e_list -luaDigitalInputPins7 = bits, U16, 4138, [0:7], $switch_input_pin_e_list -luaDigitalInputPins8 = bits, U16, 4140, [0:7], $switch_input_pin_e_list -tpsTspCorrValuesBins = array, U08, 4142, [4], "RPM", 50.0, 0, 0, 17500, 0 -ALSMinRPM = scalar, S16, 4146, "rpm", 1, 0, 0, 20000, 0 -ALSMaxRPM = scalar, S16, 4148, "rpm", 1, 0, 0, 20000, 0 -ALSMaxDuration = scalar, S16, 4150, "sec", 1, 0, 0, 10, 0 -ALSMinCLT = scalar, S08, 4152, "C", 1, 0, 0, 90, 0 -ALSMaxCLT = scalar, S08, 4153, "C", 1, 0, 0, 105, 0 -alsMinTimeBetween = scalar, U08, 4154, "", 1, 0, 0, 20000, 0 -alsEtbPosition = scalar, U08, 4155, "", 1, 0, 0, 20000, 0 -acRelayAlternatorDutyAdder = scalar, U08, 4156, "%", 1, 0, 0, 100, 0 -sentEtbType = bits, S08, 4157, [0:1], "None", "GM type 1", "Ford type 1", "Custom" -customSentTpsMin = scalar, U16, 4158, "", 1, 0, 0, 32000, 0 -ALSIdleAdd = scalar, S32, 4160, "%", 1, 0, 0, 100, 2 -ALSEtbAdd = scalar, S32, 4164, "%", 1, 0, 0, 100, 2 -ALSSkipRatio = scalar, F32, 4168, "", 1, 0, 0, 1, 1 -ALSMaxDriverThrottleIntent = scalar, U08, 4172, "%", 1, 0, 0, 10, 0 -ALSActivatePinMode = bits, U08, 4173, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tpsSecondaryMaximum = scalar, U08, 4174, "%", 0.5, 0, 0, 100, 1 -ppsSecondaryMaximum = scalar, U08, 4175, "%", 0.5, 0, 0, 100, 1 -luaDigitalInputPinModes1 = bits, U08, 4176, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes2 = bits, U08, 4177, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes3 = bits, U08, 4178, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes4 = bits, U08, 4179, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes5 = bits, U08, 4180, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes6 = bits, U08, 4181, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes7 = bits, U08, 4182, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -luaDigitalInputPinModes8 = bits, U08, 4183, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -customSentTpsMax = scalar, U16, 4184, "", 1, 0, 0, 32000, 0 -kLineBaudRate = scalar, U16, 4186, "", 1, 0, 0, 32000, 0 -canGpioType = bits, S08, 4188, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" -uiMode = bits, S08, 4189, [0:1], "Full", "Installation", "Tuning", "INVALID" -hpfpPeakPos = scalar, S16, 4190, "deg", 1, 0, -719, 719, 0 -kLinePeriodUs = scalar, S16, 4192, "us", 1, 0, 0, 30000, 0 -rpmSoftLimitWindowSize = scalar, U08, 4194, "RPM", 10.0, 0, 0, 2500, 0 -rpmSoftLimitTimingRetard = scalar, U08, 4195, "deg", 0.2, 0, 0, 50, 1 -rpmSoftLimitFuelAdded = scalar, U08, 4196, "%", 0.2, 0, 0, 50, 1 -rpmHardLimitHyst = scalar, U08, 4197, "RPM", 10.0, 0, 0, 2500, 0 -benchTestOffTime = scalar, U16, 4198, "ms", 0.1, 0, 0, 2000, 1 -boostCutPressureHyst = scalar, U08, 4200, "kPa (absolute)", 0.5, 0, 0, 125, 1 -gearBasedOpenLoopBoostAdder = array, S08, 4201, [10], "%", 0.5, 0, -63, 63, 1 -benchTestCount = scalar, U32, 4212, "", 1, 0, 0, 10000000, 0 -iacByTpsHoldTime = scalar, U08, 4216, "seconds", 0.1, 0, 0, 25, 1 -iacByTpsDecayTime = scalar, U08, 4217, "seconds", 0.1, 0, 0, 25, 1 -tcu_rangeInput1 = bits, U16, 4218, [0:7], $switch_input_pin_e_list -tcu_rangeInput2 = bits, U16, 4220, [0:7], $switch_input_pin_e_list -tcu_rangeInput3 = bits, U16, 4222, [0:7], $switch_input_pin_e_list -tcu_rangeInput4 = bits, U16, 4224, [0:7], $switch_input_pin_e_list -tcu_rangeInput5 = bits, U16, 4226, [0:7], $switch_input_pin_e_list -tcu_rangeInput6 = bits, U16, 4228, [0:7], $switch_input_pin_e_list -tcu_rangeInputMode1 = bits, U08, 4230, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode2 = bits, U08, 4231, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode3 = bits, U08, 4232, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode4 = bits, U08, 4233, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode5 = bits, U08, 4234, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -tcu_rangeInputMode6 = bits, U08, 4235, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" -canVssScaling = scalar, U16, 4236, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 -oilTempSensor_tempC_1 = scalar, F32, 4240, "*C", 1, 0, -55, 200, 1 -oilTempSensor_tempC_2 = scalar, F32, 4244, "*C", 1, 0, -55, 200, 1 -oilTempSensor_tempC_3 = scalar, F32, 4248, "*C", 1, 0, -55, 200, 1 -oilTempSensor_resistance_1 = scalar, F32, 4252, "Ohm", 1, 0, 0, 1000000, 1 -oilTempSensor_resistance_2 = scalar, F32, 4256, "Ohm", 1, 0, 0, 1000000, 1 -oilTempSensor_resistance_3 = scalar, F32, 4260, "Ohm", 1, 0, 0, 1000000, 1 -oilTempSensor_bias_resistor = scalar, F32, 4264, "Ohm", 1, 0, 0, 200000, 1 -oilTempSensor_adcChannel = bits, U08, 4268, [0:5], $adc_channel_e_list -fuelTempSensor_tempC_1 = scalar, F32, 4272, "*C", 1, 0, -55, 200, 1 -fuelTempSensor_tempC_2 = scalar, F32, 4276, "*C", 1, 0, -55, 200, 1 -fuelTempSensor_tempC_3 = scalar, F32, 4280, "*C", 1, 0, -55, 200, 1 -fuelTempSensor_resistance_1 = scalar, F32, 4284, "Ohm", 1, 0, 0, 1000000, 1 -fuelTempSensor_resistance_2 = scalar, F32, 4288, "Ohm", 1, 0, 0, 1000000, 1 -fuelTempSensor_resistance_3 = scalar, F32, 4292, "Ohm", 1, 0, 0, 1000000, 1 -fuelTempSensor_bias_resistor = scalar, F32, 4296, "Ohm", 1, 0, 0, 200000, 1 -fuelTempSensor_adcChannel = bits, U08, 4300, [0:5], $adc_channel_e_list -ambientTempSensor_tempC_1 = scalar, F32, 4304, "*C", 1, 0, -55, 200, 1 -ambientTempSensor_tempC_2 = scalar, F32, 4308, "*C", 1, 0, -55, 200, 1 -ambientTempSensor_tempC_3 = scalar, F32, 4312, "*C", 1, 0, -55, 200, 1 -ambientTempSensor_resistance_1 = scalar, F32, 4316, "Ohm", 1, 0, 0, 1000000, 1 -ambientTempSensor_resistance_2 = scalar, F32, 4320, "Ohm", 1, 0, 0, 1000000, 1 -ambientTempSensor_resistance_3 = scalar, F32, 4324, "Ohm", 1, 0, 0, 1000000, 1 -ambientTempSensor_bias_resistor = scalar, F32, 4328, "Ohm", 1, 0, 0, 200000, 1 -ambientTempSensor_adcChannel = bits, U08, 4332, [0:5], $adc_channel_e_list -compressorDischargeTemperature_tempC_1 = scalar, F32, 4336, "*C", 1, 0, -55, 200, 1 -compressorDischargeTemperature_tempC_2 = scalar, F32, 4340, "*C", 1, 0, -55, 200, 1 -compressorDischargeTemperature_tempC_3 = scalar, F32, 4344, "*C", 1, 0, -55, 200, 1 -compressorDischargeTemperature_resistance_1 = scalar, F32, 4348, "Ohm", 1, 0, 0, 1000000, 1 -compressorDischargeTemperature_resistance_2 = scalar, F32, 4352, "Ohm", 1, 0, 0, 1000000, 1 -compressorDischargeTemperature_resistance_3 = scalar, F32, 4356, "Ohm", 1, 0, 0, 1000000, 1 -compressorDischargeTemperature_bias_resistor = scalar, F32, 4360, "Ohm", 1, 0, 0, 200000, 1 -compressorDischargeTemperature_adcChannel = bits, U08, 4364, [0:5], $adc_channel_e_list -throttleInletPressureChannel = bits, U08, 4368, [0:5], $adc_channel_e_list -compressorDischargePressureChannel = bits, U08, 4369, [0:5], $adc_channel_e_list -dacOutputPins1 = bits, U16, 4370, [0:7], $gpio_list -dacOutputPins2 = bits, U16, 4372, [0:7], $gpio_list -speedometerOutputPin = bits, U16, 4374, [0:8], $output_pin_e_list -speedometerPulsePerKm = scalar, U16, 4376, "", 1, 0, 0, 65000, 0 -simulatorCamPosition1 = scalar, U08, 4378, "", 1, 0, 0, 100, 0 -simulatorCamPosition2 = scalar, U08, 4379, "", 1, 0, 0, 100, 0 -simulatorCamPosition3 = scalar, U08, 4380, "", 1, 0, 0, 100, 0 -simulatorCamPosition4 = scalar, U08, 4381, "", 1, 0, 0, 100, 0 -ignKeyAdcChannel = bits, U08, 4382, [0:5], $adc_channel_e_list -spi6MisoMode = bits, U08, 4383, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -triggerVVTGapOverrideFrom1 = scalar, F32, 4384, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideFrom2 = scalar, F32, 4388, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideFrom3 = scalar, F32, 4392, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideFrom4 = scalar, F32, 4396, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo1 = scalar, F32, 4400, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo2 = scalar, F32, 4404, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo3 = scalar, F32, 4408, "ratio", 1, 0, 0, 20, 3 -triggerVVTGapOverrideTo4 = scalar, F32, 4412, "ratio", 1, 0, 0, 20, 3 -tractionControlEtbDrop = array, S08, 4416, [6x6], "%", 1, 0, -100, 0, 0 -maxInjectorDutyInstant = scalar, U08, 4452, "%", 1, 0, 50, 200, 0 -maxInjectorDutySustained = scalar, U08, 4453, "%", 1, 0, 50, 120, 0 -maxInjectorDutySustainedTimeout = scalar, U08, 4454, "sec", 0.1, 0, 0, 5, 1 -injectionPinsStage21 = bits, U16, 4456, [0:8], $output_pin_e_list -injectionPinsStage22 = bits, U16, 4458, [0:8], $output_pin_e_list -injectionPinsStage23 = bits, U16, 4460, [0:8], $output_pin_e_list -injectionPinsStage24 = bits, U16, 4462, [0:8], $output_pin_e_list -injectionPinsStage25 = bits, U16, 4464, [0:8], $output_pin_e_list -injectionPinsStage26 = bits, U16, 4466, [0:8], $output_pin_e_list -injectionPinsStage27 = bits, U16, 4468, [0:8], $output_pin_e_list -injectionPinsStage28 = bits, U16, 4470, [0:8], $output_pin_e_list -injectionPinsStage29 = bits, U16, 4472, [0:8], $output_pin_e_list -injectionPinsStage210 = bits, U16, 4474, [0:8], $output_pin_e_list -injectionPinsStage211 = bits, U16, 4476, [0:8], $output_pin_e_list -injectionPinsStage212 = bits, U16, 4478, [0:8], $output_pin_e_list -tractionControlTimingDrop = array, S08, 4480, [6x6], "Deg", 1, 0, -100, 100, 0 -tractionControlIgnitionSkip = array, S08, 4516, [6x6], "%", 1, 0, 0, 100, 0 -auxSpeed1Multiplier = scalar, F32, 4552, "", 1, 0, 0, 100, 0 -brakeMeanEffectivePressureDifferential = scalar, F32, 4556, "", 1, 0, 0, 100, 0 -spi4mosiPin = bits, U16, 4560, [0:7], $gpio_list -spi4misoPin = bits, U16, 4562, [0:7], $gpio_list -spi4sckPin = bits, U16, 4564, [0:7], $gpio_list -spi5mosiPin = bits, U16, 4566, [0:7], $gpio_list -spi5misoPin = bits, U16, 4568, [0:7], $gpio_list -spi5sckPin = bits, U16, 4570, [0:7], $gpio_list -spi6mosiPin = bits, U16, 4572, [0:7], $gpio_list -spi6misoPin = bits, U16, 4574, [0:7], $gpio_list -spi6sckPin = bits, U16, 4576, [0:7], $gpio_list -spi4SckMode = bits, U08, 4578, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -spi4MosiMode = bits, U08, 4579, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -spi4MisoMode = bits, U08, 4580, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -spi5SckMode = bits, U08, 4581, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -spi5MosiMode = bits, U08, 4582, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -spi5MisoMode = bits, U08, 4583, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -spi6SckMode = bits, U08, 4584, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -spi6MosiMode = bits, U08, 4585, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -unusedOftenChangesDuringFirmwareUpdate = array, U08, 4586, [120], "units", 1, 0, 0, 1, 0 -etbBiasBins = array, F32, 4708, [8], "target TPS position", 1, 0, 0, 100, 0 -etbBiasValues = array, F32, 4740, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 -iacPidMultTable = array, U08, 4772, [8x8], "%", 0.05, 0, 0, 10, 2 -iacPidMultLoadBins = array, U08, 4836, [8], "Load", 1, 0, 0, 500, 2 -iacPidMultRpmBins = array, U08, 4844, [8], "RPM", 10.0, 0, 0, 2500, 0 -sparkDwellRpmBins = array, U16, 4852, [8], "RPM", 1, 0, 0, 25000, 0 -sparkDwellValues = array, U16, 4868, [8], "ms", 0.01, 0, 0, 30, 2 -cltIdleRpmBins = array, S08, 4884, [16], "C", 2.0, 0, -40, 200, 0 -cltIdleRpm = array, U08, 4900, [16], "RPM", 20.0, 0, 0, 5000, 0 -cltTimingBins = array, F32, 4916, [8], "C", 1, 0, -100, 250, 1 -cltTimingExtra = array, F32, 4948, [8], "degree", 1, 0, -400, 400, 0 -scriptCurve1Bins = array, F32, 4980, [16], "x", 1, 0, -10000, 10000, 3 -scriptCurve1 = array, F32, 5044, [16], "y", 1, 0, -10000, 10000, 3 -scriptCurve2Bins = array, F32, 5108, [16], "x", 1, 0, -10000, 10000, 3 -scriptCurve2 = array, F32, 5172, [16], "y", 1, 0, -10000, 10000, 3 -scriptCurve3Bins = array, F32, 5236, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve3 = array, F32, 5268, [8], "y", 1, 0, -10000, 10000, 3 -scriptCurve4Bins = array, F32, 5300, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve4 = array, F32, 5332, [8], "y", 1, 0, -10000, 10000, 3 -scriptCurve5Bins = array, F32, 5364, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve5 = array, F32, 5396, [8], "y", 1, 0, -10000, 10000, 3 -scriptCurve6Bins = array, F32, 5428, [8], "x", 1, 0, -10000, 10000, 3 -scriptCurve6 = array, F32, 5460, [8], "y", 1, 0, -10000, 10000, 3 -baroCorrPressureBins = array, F32, 5492, [4], "kPa", 1, 0, 0, 200, 2 -baroCorrRpmBins = array, F32, 5508, [4], "RPM", 1, 0, 0, 18000, 0 -baroCorrTable = array, F32, 5524, [4x4], "ratio", 1, 0, 0, 2, 2 -crankingTpsCoef = array, F32, 5588, [8], "Ratio", 1, 0, 0, 700, 2 -crankingTpsBins = array, F32, 5620, [8], "%", 1, 0, 0, 100, 2 -crankingAdvanceBins = array, U16, 5652, [4], "RPM", 1, 0, 0, 25000, 0 -crankingAdvance = array, S16, 5660, [4], "deg", 0.01, 0, -20, 90, 2 -iacCoastingRpmBins = array, U08, 5668, [16], "RPM", 100.0, 0, 0, 25000, 0 -iacCoasting = array, U08, 5684, [16], "%", 0.5, 0, 0, 100, 1 -warning_message = string, ASCII, 5700, 120 -unusedGapInCalibration = array, F32, 5820, [32], "", 1, 0, 0, 100, 0 -boostTableOpenLoop = array, U08, 5948, [8x8], "", 0.5, 0, 0, 100, 1 -boostRpmBins = array, U08, 6012, [8], "RPM", 100.0, 0, 0, 25000, 0 -boostTableClosedLoop = array, U08, 6020, [8x8], "", 2.0, 0, 0, 3000, 0 -boostTpsBins = array, U08, 6084, [8], "%", 1, 0, 0, 100, 0 -pedalToTpsTable = array, U08, 6092, [8x8], "%", 1, 0, 0, 100, 0 -pedalToTpsPedalBins = array, U08, 6156, [8], "%", 1, 0, 0, 120, 0 -pedalToTpsRpmBins = array, U08, 6164, [8], "RPM", 100.0, 0, 0, 25000, 0 -cltCrankingCorrBins = array, F32, 6172, [8], "C", 1, 0, -100, 250, 2 -cltCrankingCorr = array, F32, 6204, [8], "%", 1, 0, 0, 500, 2 -idleAdvanceBins = array, U08, 6236, [8], "RPM", 50.0, 0, 0, 12000, 0 -idleAdvance = array, F32, 6244, [8], "deg", 1, 0, -20, 90, 1 -idleVeRpmBins = array, U08, 6276, [4], "RPM", 10.0, 0, 0, 2500, 0 -idleVeLoadBins = array, U08, 6280, [4], "load", 1, 0, 0, 100, 0 -idleVeTable = array, U16, 6284, [4x4], "%", 0.1, 0, 0, 999, 1 -luaScript = string, ASCII, 6316, 8000 -cltFuelCorrBins = array, F32, 14316, [16], "C", 1, 0, -100, 250, 2 -cltFuelCorr = array, F32, 14380, [16], "ratio", 1, 0, 0, 5, 2 -iatFuelCorrBins = array, F32, 14444, [16], "C", 1, 0, -100, 250, 2 -iatFuelCorr = array, F32, 14508, [16], "ratio", 1, 0, 0, 5, 2 -crankingFuelCoef = array, F32, 14572, [8], "ratio", 1, 0, 0, 50, 2 -crankingFuelBins = array, F32, 14604, [8], "C", 1, 0, -80, 170, 2 -crankingCycleCoef = array, F32, 14636, [8], "ratio", 1, 0, 0, 5, 2 -crankingCycleBins = array, F32, 14668, [8], "counter", 1, 0, -80, 170, 0 -cltIdleCorrBins = array, F32, 14700, [16], "C", 1, 0, -100, 250, 2 -cltIdleCorr = array, F32, 14764, [16], "ratio", 1, 0, 0, 10, 2 -mafDecoding = array, F32, 14828, [32], "kg/hour", 1, 0, -500, 4000, 2 -mafDecodingBins = array, F32, 14956, [32], "V", 1, 0, -5, 150, 2 -ignitionIatCorrTable = array, S08, 15084, [8x8], "deg", 0.1, 0, -25, 25, 1 -ignitionIatCorrTempBins = array, S08, 15148, [8], "C", 1, 0, -40, 120, 0 -ignitionIatCorrLoadBins = array, U08, 15156, [8], "Load", 5.0, 0, 0, 1000, 0 -injectionPhase = array, S16, 15164, [16x16], "deg", 1, 0, -720, 720, 0 -injPhaseLoadBins = array, U16, 15676, [16], "Load", 1, 0, 0, 1000, 0 -injPhaseRpmBins = array, U16, 15708, [16], "RPM", 1, 0, 0, 18000, 0 -tcuSolenoidTable = array, U08, 15740, [10x6], "onoff", 1, 0, 0, 1, 0 -mapEstimateTable = array, U16, 15800, [16x16], "kPa", 0.01, 0, 0, 600, 2 -mapEstimateTpsBins = array, U16, 16312, [16], "% TPS", 0.01, 0, 0, 100, 1 -mapEstimateRpmBins = array, U16, 16344, [16], "RPM", 1, 0, 0, 18000, 0 -vvtTable1 = array, S08, 16376, [8x8], "value", 1, 0, -125, 125, 0 -vvtTable1LoadBins = array, U16, 16440, [8], "L", 1, 0, 0, 1000, 0 -vvtTable1RpmBins = array, U16, 16456, [8], "RPM", 1, 0, 0, 18000, 0 -vvtTable2 = array, S08, 16472, [8x8], "value", 1, 0, -125, 125, 0 -vvtTable2LoadBins = array, U16, 16536, [8], "L", 1, 0, 0, 1000, 0 -vvtTable2RpmBins = array, U16, 16552, [8], "RPM", 1, 0, 0, 18000, 0 -ignitionTable = array, S16, 16568, [16x16], "deg", 0.1, 0, -20, 90, 1 -ignitionLoadBins = array, U16, 17080, [16], "Load", 1, 0, 0, 1000, 0 -ignitionRpmBins = array, U16, 17112, [16], "RPM", 1, 0, 0, 18000, 0 -veTable = array, U16, 17144, [16x16], "%", 0.1, 0, 0, 999, 1 -veLoadBins = array, U16, 17656, [16], "kPa", 1, 0, 0, 1000, 0 -veRpmBins = array, U16, 17688, [16], "RPM", 1, 0, 0, 18000, 0 +canSleepPeriodMs = scalar, S32, 500, "ms", 1, 0, 0, 1000, 2 +byFirmwareVersion = scalar, S32, 504, "index", 1, 0, 0, 300, 0 +tps1_1AdcChannel = bits, U08, 508, [0:5], $adc_channel_e_list +vbattAdcChannel = bits, U08, 509, [0:5], $adc_channel_e_list +fuelLevelSensor = bits, U08, 510, [0:5], $adc_channel_e_list +tps2_1AdcChannel = bits, U08, 511, [0:5], $adc_channel_e_list +idle_derivativeFilterLoss = scalar, F32, 512, "x", 1, 0, -1000000, 1000000, 4 +trailingSparkAngle = scalar, S32, 516, "angle", 1, 0, 0, 720, 0 +trigger_type = bits, U32, 520, [0:6], "custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "INVALID", "GM_7X", "Daihatsu 3 cylinder", "Mazda SOHC 4", "60-2", "36-1", "Mercedes Two Segment", "Single Tooth", "EZ30", "INVALID", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "INVALID", "Half Moon", "Dodge Ram 1+16", "60-2 VW", "Benelli Tre", "Dodge Stratus", "36_2_2_2", "Nissan Primera", "dev 2JZ 3/34 simulator", "Rover K", "GM 24x 5 degree", "Honda CBR 600 Cam", "Mitsubishi 4G92/93/94 Cam 29", "Honda CBR 600 custom", "3-1 skipped", "Dodge Neon 2003 crank", "Miata NB", "Mitsubishi 4G63 Cam 34", "INVALID", "Subaru 7+6", "Jeep 18-2-2-2", "12crank/24cam", "Dodge Neon 1995 crank only", "Jeep XJ 4 cyl", "FiatIAQ_P8", "Mazda Z5", "INVALID", "Renix 44-2-2", "Renix 66-2-2-2", "Honda K 12+1", "INVALID", "36-2", "Subaru SVX", "1+16", "Subaru 7 without 6", "INVALID", "TriTach", "GM 60-2-2-2", "Skoda Favorit", "Barra 3+1 Cam", "Kawa KX450F", "Nissan VQ35", "INVALID", "Nissan VQ30", "Nissan QR25", "INVALID", "Subaru SVX Crank 1", "Subaru SVX Cam VVT", "Ford PIP", "Suzuki G13B", "Honda K 4+1", "Nissan MR18 Crank", "32-2", "36-2-1", "36-2-1-1", "3-0", "INVALID", "GM 24x 3 degree", "60-2-2 F3R", "Mitsu 4G63 Crank", "x2 30 Deg camshaft BTDC", "INVALID", "Mitsu 6G72 Cam", "6-0", "Daihatsu 4 cylinder", "trg82", "trg83", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +trigger_customTotalToothCount = scalar, S32, 524, "number", 1, 0, 1, 300, 0 +trigger_customSkippedToothCount = scalar, S32, 528, "number", 1, 0, 0, 300, 0 +airByRpmTaper = scalar, F32, 532, "%", 1, 0, 0, 50, 1 +hip9011SpiDevice = bits, U08, 536, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +boostControlSafeDutyCycle = scalar, U08, 537, "%", 1, 0, 0, 100, 0 +mafAdcChannel = bits, U08, 538, [0:5], $adc_channel_e_list +acrRevolutions = scalar, U08, 539, "", 1, 0, 0, 100, 0 +calibrationBirthday = scalar, S32, 540, "", 1, 0, 0, 100, 0 +adcVcc = scalar, F32, 544, "volts", 1, 0, 0, 6, 3 +mapCamDetectionAnglePosition = scalar, F32, 548, "Deg", 1, 0, 0, 360, 0 +camInputs1 = bits, U16, 552, [0:7], $brain_input_pin_e_list +camInputs2 = bits, U16, 554, [0:7], $brain_input_pin_e_list +camInputs3 = bits, U16, 556, [0:7], $brain_input_pin_e_list +camInputs4 = bits, U16, 558, [0:7], $brain_input_pin_e_list +afr_hwChannel = bits, U08, 560, [0:5], $adc_channel_e_list +afr_hwChannel2 = bits, U08, 561, [0:5], $adc_channel_e_list +afr_v1 = scalar, F32, 564, "volts", 1, 0, 0, 10, 2 +afr_value1 = scalar, F32, 568, "AFR", 1, 0, 0, 1000, 2 +afr_v2 = scalar, F32, 572, "volts", 1, 0, 0, 10, 2 +afr_value2 = scalar, F32, 576, "AFR", 1, 0, 0, 1000, 2 +throttlePedalPositionAdcChannel = bits, U08, 580, [0:5], $adc_channel_e_list +etbSplit = scalar, U08, 581, "%", 0.1, 0, 0, 20, 1 +tle6240_cs = bits, U16, 582, [0:7], $gpio_list +tle6240_csPinMode = bits, U08, 584, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33810_csPinMode = bits, U08, 585, [0:1], "default", "default inverted", "open collector", "open collector inverted" +throttlePedalUpPin = bits, U16, 586, [0:7], $switch_input_pin_e_list +baroSensor_lowValue = scalar, F32, 588, "kpa", 1, 0, -400, 800, 2 +baroSensor_highValue = scalar, F32, 592, "kpa", 1, 0, -400, 800, 2 +baroSensor_type = bits, U08, 596, [0:4], "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "GM 3 Bar", "MPX4100", "Toyota 89420-02010", "MPX4250A", "Bosch 2.5", "Mazda1Bar", "GM 2 Bar", "GM 1 Bar", "MPXH6400", "MPXH6300", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +baroSensor_hwChannel = bits, U08, 597, [0:5], $adc_channel_e_list +idle_solenoidFrequency = scalar, S32, 600, "Hz", 1, 0, 0, 3000, 0 +idle_solenoidPin = bits, U16, 604, [0:8], $output_pin_e_list +idle_stepperDirectionPin = bits, U16, 606, [0:7], $gpio_list +idle_stepperStepPin = bits, U16, 608, [0:7], $gpio_list +idle_solenoidPinMode = bits, U08, 610, [0:1], "default", "default inverted", "open collector", "open collector inverted" +knockRetardAggression = scalar, U08, 612, "%", 0.1, 0, 0, 20, 1 +knockRetardReapplyRate = scalar, U08, 613, "deg/s", 0.1, 0, 0, 10, 1 +engineSyncCam = bits, S08, 614, [0:1], "Intake First Bank", "Exhaust First Bank", "Intake Second Bank", "Exhaust Second Bank" +sdCardCsPinMode = bits, U08, 615, [0:1], "default", "default inverted", "open collector", "open collector inverted" +vssGearRatio = scalar, U16, 616, "ratio", 0.001, 0, 0, 60, 3 +vssFilterReciprocal = scalar, U08, 618, "", 1, 0, 3, 200 0 +vssToothCount = scalar, U08, 619, "count", 1, 0, 1, 100, 0 +idleVeOverrideMode = bits, U08, 620, [0:1], "None", "MAP", "TPS", "INVALID" +l9779_cs = bits, U16, 622, [0:7], $gpio_list +injectionPins1 = bits, U16, 624, [0:8], $output_pin_e_list +injectionPins2 = bits, U16, 626, [0:8], $output_pin_e_list +injectionPins3 = bits, U16, 628, [0:8], $output_pin_e_list +injectionPins4 = bits, U16, 630, [0:8], $output_pin_e_list +injectionPins5 = bits, U16, 632, [0:8], $output_pin_e_list +injectionPins6 = bits, U16, 634, [0:8], $output_pin_e_list +injectionPins7 = bits, U16, 636, [0:8], $output_pin_e_list +injectionPins8 = bits, U16, 638, [0:8], $output_pin_e_list +injectionPins9 = bits, U16, 640, [0:8], $output_pin_e_list +injectionPins10 = bits, U16, 642, [0:8], $output_pin_e_list +injectionPins11 = bits, U16, 644, [0:8], $output_pin_e_list +injectionPins12 = bits, U16, 646, [0:8], $output_pin_e_list +ignitionPins1 = bits, U16, 648, [0:8], $output_pin_e_list +ignitionPins2 = bits, U16, 650, [0:8], $output_pin_e_list +ignitionPins3 = bits, U16, 652, [0:8], $output_pin_e_list +ignitionPins4 = bits, U16, 654, [0:8], $output_pin_e_list +ignitionPins5 = bits, U16, 656, [0:8], $output_pin_e_list +ignitionPins6 = bits, U16, 658, [0:8], $output_pin_e_list +ignitionPins7 = bits, U16, 660, [0:8], $output_pin_e_list +ignitionPins8 = bits, U16, 662, [0:8], $output_pin_e_list +ignitionPins9 = bits, U16, 664, [0:8], $output_pin_e_list +ignitionPins10 = bits, U16, 666, [0:8], $output_pin_e_list +ignitionPins11 = bits, U16, 668, [0:8], $output_pin_e_list +ignitionPins12 = bits, U16, 670, [0:8], $output_pin_e_list +injectionPinMode = bits, U08, 672, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ignitionPinMode = bits, U08, 673, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelPumpPin = bits, U16, 674, [0:8], $output_pin_e_list +fuelPumpPinMode = bits, U08, 676, [0:1], "default", "default inverted", "open collector", "open collector inverted" +gapVvtTrackingLengthOverride = scalar, S08, 677, "count", 1, 0, 1, 4, 0 +malfunctionIndicatorPin = bits, U16, 678, [0:8], $output_pin_e_list +malfunctionIndicatorPinMode = bits, U08, 680, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fanPinMode = bits, U08, 681, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fanPin = bits, U16, 682, [0:8], $output_pin_e_list +clutchDownPin = bits, U16, 684, [0:7], $switch_input_pin_e_list +alternatorControlPin = bits, U16, 686, [0:8], $output_pin_e_list +alternatorControlPinMode = bits, U08, 688, [0:1], "default", "default inverted", "open collector", "open collector inverted" +clutchDownPinMode = bits, U08, 689, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +digitalPotentiometerChipSelect1 = bits, U16, 690, [0:7], $gpio_list +digitalPotentiometerChipSelect2 = bits, U16, 692, [0:7], $gpio_list +digitalPotentiometerChipSelect3 = bits, U16, 694, [0:7], $gpio_list +digitalPotentiometerChipSelect4 = bits, U16, 696, [0:7], $gpio_list +electronicThrottlePin1Mode = bits, U08, 698, [0:1], "default", "default inverted", "open collector", "open collector inverted" +max31855spiDevice = bits, U08, 699, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +debugTriggerSync = bits, U16, 700, [0:7], $gpio_list +digitalPotentiometerSpiDevice = bits, U08, 702, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +brakePedalPinMode = bits, U08, 703, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33972_cs = bits, U16, 704, [0:7], $gpio_list +mc33972_csPinMode = bits, U08, 706, [0:1], "default", "default inverted", "open collector", "open collector inverted" +auxFastSensor1_adcChannel = bits, U08, 707, [0:5], $adc_channel_e_list +tps1_2AdcChannel = bits, U08, 708, [0:5], $adc_channel_e_list +tps2_2AdcChannel = bits, U08, 709, [0:5], $adc_channel_e_list +throttlePedalPositionSecondAdcChannel = bits, U08, 710, [0:5], $adc_channel_e_list +afr_type = bits, S08, 711, [0:2], "BPSX", "Innovate", "14Point7", "INVALID", "PLX", "Custom", "AEM", "INVALID" +mc33810_cs1 = bits, U16, 712, [0:7], $gpio_list +idle_antiwindupFreq = scalar, F32, 716, "x", 1, 0, -1000000, 1000000, 4 +triggerInputPins1 = bits, U16, 720, [0:7], $brain_input_pin_e_list +triggerInputPins2 = bits, U16, 722, [0:7], $brain_input_pin_e_list +mc33_t_min_boost = scalar, U16, 724, "us", 1, 0, 0, 10000, 0 +hip9011CsPinMode = bits, U08, 726, [0:1], "default", "default inverted", "open collector", "open collector inverted" +throttlePedalUpPinMode = bits, U08, 727, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +finalGearRatio = scalar, U16, 728, "ratio", 0.01, 0, 0, 10, 2 +tcuInputSpeedSensorPin = bits, U16, 730, [0:7], $brain_input_pin_e_list +tcuInputSpeedSensorTeeth = scalar, U08, 732, "", 1, 0, 0, 100, 0 +triggerSimulatorPins1 = bits, U16, 734, [0:7], $gpio_list +triggerSimulatorPins2 = bits, U16, 736, [0:7], $gpio_list +fordInjectorSmallPulseSlope = scalar, U16, 738, "g/s", 0.001, 0, 0, 65, 3 +triggerSimulatorPinModes1 = bits, U08, 740, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerSimulatorPinModes2 = bits, U08, 741, [0:1], "default", "default inverted", "open collector", "open collector inverted" +maf2AdcChannel = bits, U08, 742, [0:5], $adc_channel_e_list +o2heaterPin = bits, U16, 744, [0:8], $output_pin_e_list +o2heaterPinModeTodO = bits, U08, 746, [0:1], "default", "default inverted", "open collector", "open collector inverted" +lambdaProtectionMinRpm = scalar, U08, 747, "RPM", 100.0, 0, 0, 25000, 0 +lambdaProtectionMinLoad = scalar, U08, 748, "%", 10.0, 0, 0, 1000, 0 +is_enabled_spi_1 = bits, U32, 752, [0:0], "false", "true" +is_enabled_spi_2 = bits, U32, 752, [1:1], "false", "true" +is_enabled_spi_3 = bits, U32, 752, [2:2], "false", "true" +isSdCardEnabled = bits, U32, 752, [3:3], "false", "true" +rusefiVerbose29b = bits, U32, 752, [4:4], "11 bit", "29 bit" +rethrowHardFault = bits, U32, 752, [5:5], "false", "true" +isHip9011Enabled = bits, U32, 752, [6:6], "false", "true" +requireFootOnBrakeToCrank = bits, U32, 752, [7:7], "false", "true" +verboseQuad = bits, U32, 752, [8:8], "false", "true" +useStepperIdle = bits, U32, 752, [9:9], "false", "true" +enabledStep1Limiter = bits, U32, 752, [10:10], "false", "true" +useTpicAdvancedMode = bits, U32, 752, [11:11], "false", "true" +lambdaProtectionEnable = bits, U32, 752, [12:12], "false", "true" +verboseTLE8888 = bits, U32, 752, [13:13], "false", "true" +enableVerboseCanTx = bits, U32, 752, [14:14], "false", "true" +etb1configured = bits, U32, 752, [15:15], "false", "true" +etb2configured = bits, U32, 752, [16:16], "false", "true" +measureMapOnlyInOneCylinder = bits, U32, 752, [17:17], "false", "true" +stepperForceParkingEveryRestart = bits, U32, 752, [18:18], "false", "true" +isFasterEngineSpinUpEnabled = bits, U32, 752, [19:19], "false", "true" +coastingFuelCutEnabled = bits, U32, 752, [20:20], "false", "true" +useIacTableForCoasting = bits, U32, 752, [21:21], "false", "true" +useNoiselessTriggerDecoder = bits, U32, 752, [22:22], "false", "true" +useIdleTimingPidControl = bits, U32, 752, [23:23], "false", "true" +disableEtbWhenEngineStopped = bits, U32, 752, [24:24], "false", "true" +is_enabled_spi_4 = bits, U32, 752, [25:25], "false", "true" +pauseEtbControl = bits, U32, 752, [26:26], "false", "true" +alignEngineSnifferAtTDC = bits, U32, 752, [27:27], "false", "true" +verboseKLine = bits, U32, 752, [28:28], "false", "true" +idleIncrementalPidCic = bits, U32, 752, [29:29], "false", "true" +enableAemXSeries = bits, U32, 752, [30:30], "false", "true" +logicAnalyzerPins1 = bits, U16, 756, [0:7], $brain_input_pin_e_list +logicAnalyzerPins2 = bits, U16, 758, [0:7], $brain_input_pin_e_list +logicAnalyzerPins3 = bits, U16, 760, [0:7], $brain_input_pin_e_list +logicAnalyzerPins4 = bits, U16, 762, [0:7], $brain_input_pin_e_list +mainRelayPinMode = bits, U08, 764, [0:1], "default", "default inverted", "open collector", "open collector inverted" +hip9011CsPin = bits, U16, 766, [0:7], $gpio_list +hip9011IntHoldPin = bits, U16, 768, [0:7], $gpio_list +hip9011IntHoldPinMode = bits, U08, 770, [0:1], "default", "default inverted", "open collector", "open collector inverted" +verboseCanBaseAddress = scalar, U32, 772, "", 1, 0, 0, 536870911, 0 +mc33_hvolt = scalar, U08, 776, "v", 1, 0, 40, 70, 0 +minimumBoostClosedLoopMap = scalar, U08, 777, "kPa", 1, 0, 0, 255, 0 +acFanPin = bits, U16, 778, [0:8], $output_pin_e_list +acFanPinMode = bits, U08, 780, [0:1], "default", "default inverted", "open collector", "open collector inverted" +l9779spiDevice = bits, U08, 781, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +imuType = bits, U08, 782, [0:4], "None", "VAG", "MM5.10", "type 3", "type 4", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +vehicleWeight = scalar, U16, 784, "kg", 1, 0, 0, 10000, 0 +idlePidRpmUpperLimit = scalar, S16, 786, "RPM", 1, 0, 0, 500, 0 +applyNonlinearBelowPulse = scalar, U16, 788, "ms", 0.001, 0, 0, 30, 3 +lps25BaroSensorScl = bits, U16, 790, [0:7], $gpio_list +lps25BaroSensorSda = bits, U16, 792, [0:7], $gpio_list +vehicleSpeedSensorInputPin = bits, U16, 794, [0:7], $brain_input_pin_e_list +clutchUpPin = bits, U16, 796, [0:7], $switch_input_pin_e_list +injectorNonlinearMode = bits, U08, 798, [0:1], "None", "Polynomial", "Ford (dual slope)", "INVALID" +clutchUpPinMode = bits, U08, 799, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +max31855_cs1 = bits, U16, 800, [0:7], $gpio_list +max31855_cs2 = bits, U16, 802, [0:7], $gpio_list +max31855_cs3 = bits, U16, 804, [0:7], $gpio_list +max31855_cs4 = bits, U16, 806, [0:7], $gpio_list +max31855_cs5 = bits, U16, 808, [0:7], $gpio_list +max31855_cs6 = bits, U16, 810, [0:7], $gpio_list +max31855_cs7 = bits, U16, 812, [0:7], $gpio_list +max31855_cs8 = bits, U16, 814, [0:7], $gpio_list +flexSensorPin = bits, U16, 816, [0:7], $brain_input_pin_e_list +test557pin = bits, U16, 818, [0:7], $gpio_list +stepperDirectionPinMode = bits, U08, 820, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33972spiDevice = bits, U08, 821, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioSecondary = scalar, U08, 822, ":1", 0.1, 0, 5, 25, 1 +etbMaximumPosition = scalar, U08, 823, "%", 1, 0, 70, 100, 0 +sdCardLogFrequency = scalar, U16, 824, "hz", 1, 0, 1, 250, 0 +idlePositionChannel = bits, U08, 826, [0:5], $adc_channel_e_list +debugMapAveraging = bits, U16, 828, [0:7], $gpio_list +starterRelayDisablePin = bits, U16, 830, [0:8], $output_pin_e_list +starterRelayDisablePinMode = bits, U08, 832, [0:1], "default", "default inverted", "open collector", "open collector inverted" +secondSolenoidPin = bits, U16, 834, [0:8], $output_pin_e_list +startStopButtonPin = bits, U16, 836, [0:7], $switch_input_pin_e_list +lambdaProtectionRestoreRpm = scalar, U08, 838, "RPM", 100.0, 0, 0, 25000, 0 +acRelayPinMode = bits, U08, 839, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mapMinBufferLength = scalar, S32, 840, "count", 1, 0, 1, 24, 0 +idlePidDeactivationTpsThreshold = scalar, S16, 844, "%", 1, 0, 0, 50, 0 +stepperParkingExtraSteps = scalar, S16, 846, "%", 1, 0, 0, 3000, 0 +tps1SecondaryMin = scalar, U16, 848, "ADC", 1, 0, 0, 1000, 0 +tps1SecondaryMax = scalar, U16, 850, "ADC", 1, 0, 0, 1000, 0 +antiLagRpmTreshold = scalar, S16, 852, "rpm", 1, 0, 0, 20000, 0 +startCrankingDuration = scalar, U16, 854, "Seconds", 1, 0, 0, 30, 0 +triggerErrorPin = bits, U16, 856, [0:7], $gpio_list +triggerErrorPinMode = bits, U08, 858, [0:1], "default", "default inverted", "open collector", "open collector inverted" +acRelayPin = bits, U16, 860, [0:8], $output_pin_e_list +lambdaProtectionMinTps = scalar, U08, 862, "%", 1, 0, 0, 100, 0 +lambdaProtectionTimeout = scalar, U08, 863, "s", 0.1, 0, 0, 10, 1 +scriptSetting1 = scalar, F32, 864, "", 1, 0, 0, 18000, 2 +scriptSetting2 = scalar, F32, 868, "", 1, 0, 0, 18000, 2 +scriptSetting3 = scalar, F32, 872, "", 1, 0, 0, 18000, 2 +scriptSetting4 = scalar, F32, 876, "", 1, 0, 0, 18000, 2 +scriptSetting5 = scalar, F32, 880, "", 1, 0, 0, 18000, 2 +scriptSetting6 = scalar, F32, 884, "", 1, 0, 0, 18000, 2 +scriptSetting7 = scalar, F32, 888, "", 1, 0, 0, 18000, 2 +scriptSetting8 = scalar, F32, 892, "", 1, 0, 0, 18000, 2 +spi1mosiPin = bits, U16, 896, [0:7], $gpio_list +spi1misoPin = bits, U16, 898, [0:7], $gpio_list +spi1sckPin = bits, U16, 900, [0:7], $gpio_list +spi2mosiPin = bits, U16, 902, [0:7], $gpio_list +spi2misoPin = bits, U16, 904, [0:7], $gpio_list +spi2sckPin = bits, U16, 906, [0:7], $gpio_list +spi3mosiPin = bits, U16, 908, [0:7], $gpio_list +spi3misoPin = bits, U16, 910, [0:7], $gpio_list +spi3sckPin = bits, U16, 912, [0:7], $gpio_list +cdmInputPin = bits, U16, 914, [0:7], $gpio_list +consoleUartDevice = bits, U08, 916, [0:1], "Off", "UART1", "UART2", "UART3" +sensorChartMode = bits, S08, 917, [0:2], "none", "trigger", "INVALID", "RPM ACCEL", "DETAILED RPM", "Fast Aux1", "INVALID", "INVALID" +mafSensorType = bits, S08, 918, [0:1], "v0", "v1", "v2", "v3" +clutchUpPinInverted = bits, U32, 920, [0:0], "false", "true" +clutchDownPinInverted = bits, U32, 920, [1:1], "false", "true" +useHbridgesToDriveIdleStepper = bits, U32, 920, [2:2], "false", "true" +multisparkEnable = bits, U32, 920, [3:3], "false", "true" +enableLaunchRetard = bits, U32, 920, [4:4], "false", "true" +canInputBCM = bits, U32, 920, [5:5], "false", "true" +consumeObdSensors = bits, U32, 920, [6:6], "false", "true" +enableCanVss = bits, U32, 920, [7:7], "false", "true" +enableInnovateLC2 = bits, U32, 920, [8:8], "false", "true" +showHumanReadableWarning = bits, U32, 920, [9:9], "false", "true" +stftIgnoreErrorMagnitude = bits, U32, 920, [10:10], "false", "true" +vvtBooleanForVerySpecialCases = bits, U32, 920, [11:11], "false", "true" +enableSoftwareKnock = bits, U32, 920, [12:12], "false", "true" +verboseVVTDecoding = bits, U32, 920, [13:13], "false", "true" +invertCamVVTSignal = bits, U32, 920, [14:14], "Rising", "Falling" +alphaNUseIat = bits, U32, 920, [15:15], "false", "true" +knockBankCyl1 = bits, U32, 920, [16:16], "Channel 1", "Channel 2" +knockBankCyl2 = bits, U32, 920, [17:17], "Channel 1", "Channel 2" +knockBankCyl3 = bits, U32, 920, [18:18], "Channel 1", "Channel 2" +knockBankCyl4 = bits, U32, 920, [19:19], "Channel 1", "Channel 2" +knockBankCyl5 = bits, U32, 920, [20:20], "Channel 1", "Channel 2" +knockBankCyl6 = bits, U32, 920, [21:21], "Channel 1", "Channel 2" +knockBankCyl7 = bits, U32, 920, [22:22], "Channel 1", "Channel 2" +knockBankCyl8 = bits, U32, 920, [23:23], "Channel 1", "Channel 2" +knockBankCyl9 = bits, U32, 920, [24:24], "Channel 1", "Channel 2" +knockBankCyl10 = bits, U32, 920, [25:25], "Channel 1", "Channel 2" +knockBankCyl11 = bits, U32, 920, [26:26], "Channel 1", "Channel 2" +knockBankCyl12 = bits, U32, 920, [27:27], "Channel 1", "Channel 2" +tcuEnabled = bits, U32, 920, [28:28], "false", "true" +canBroadcastUseChannelTwo = bits, U32, 920, [29:29], "first", "second" +useRawOutputToDriveIdleStepper = bits, U32, 920, [30:30], "false", "true" +verboseCan2 = bits, U32, 920, [31:31], "Do not print", "Print all" +etbIo1_directionPin1 = bits, U16, 924, [0:7], $gpio_list +etbIo1_directionPin2 = bits, U16, 926, [0:7], $gpio_list +etbIo1_controlPin = bits, U16, 928, [0:7], $gpio_list +etbIo1_disablePin = bits, U16, 930, [0:7], $gpio_list +etbIo2_directionPin1 = bits, U16, 932, [0:7], $gpio_list +etbIo2_directionPin2 = bits, U16, 934, [0:7], $gpio_list +etbIo2_controlPin = bits, U16, 936, [0:7], $gpio_list +etbIo2_disablePin = bits, U16, 938, [0:7], $gpio_list +boostControlPin = bits, U16, 940, [0:8], $output_pin_e_list +boostControlPinMode = bits, U08, 942, [0:1], "default", "default inverted", "open collector", "open collector inverted" +ALSActivatePin = bits, U16, 944, [0:7], $switch_input_pin_e_list +launchActivatePin = bits, U16, 946, [0:7], $switch_input_pin_e_list +boostPid_pFactor = scalar, F32, 948, "", 1, 0, -10000, 10000, 4 +boostPid_iFactor = scalar, F32, 952, "", 1, 0, -10000, 10000, 4 +boostPid_dFactor = scalar, F32, 956, "", 1, 0, -10000, 10000, 4 +boostPid_offset = scalar, S16, 960, "", 1, 0, -1000, 1000, 0 +boostPid_periodMs = scalar, S16, 962, "ms", 1, 0, 0, 3000, 0 +boostPid_minValue = scalar, S16, 964, "", 1, 0, -30000, 30000, 0 +boostPid_maxValue = scalar, S16, 966, "", 1, 0, -30000, 30000, 0 +boostType = bits, U08, 968, [0:0], "Open Loop", "Open + Closed Loop" +ignitionKeyDigitalPinMode = bits, U08, 969, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +ignitionKeyDigitalPin = bits, U16, 970, [0:7], $gpio_list +boostPwmFrequency = scalar, S32, 972, "Hz", 1, 0, 0, 3000, 0 +launchActivationMode = bits, S08, 976, [0:1], "Launch Button", "Clutch Down Switch", "Speed Based", "Brake Pedal" +antiLagActivationMode = bits, S08, 977, [0:0], "Switch Input", "Always Active" +tpsAccelLookback = scalar, U08, 978, "sec", 0.05, 0, 0, 5, 2 +noFuelTrimAfterDfcoTime = scalar, U08, 979, "sec", 0.1, 0, 0, 10, 1 +launchSpeedThreshold = scalar, S32, 980, "Kph", 1, 0, 0, 300, 0 +launchRpmWindow = scalar, S32, 984, "RPM", 1, 0, 0, 8000, 0 +launchSparkSkipPercent = scalar, S32, 988, "%", 1, 0, 0, 100, 0 +launchBoostDuty = scalar, S32, 992, "%", 1, 0, 0, 100, 0 +magicNumberAvailableForDevTricks = scalar, F32, 996, "", 1, 0, 0, 100, 0 +turbochargerFilter = scalar, F32, 1000, "", 1, 0, 0, 100, 0 +launchTpsThreshold = scalar, S32, 1004, "", 1, 0, 0, 20000, 0 +launchActivateDelay = scalar, F32, 1008, "", 1, 0, 0, 20000, 0 +stft_maxIdleRegionRpm = scalar, U08, 1012, "RPM", 50.0, 0, 0, 12000, 0 +stft_maxOverrunLoad = scalar, U08, 1013, "load", 1, 0, 0, 250, 0 +stft_minPowerLoad = scalar, U08, 1014, "load", 1, 0, 0, 250, 0 +stft_deadband = scalar, U08, 1015, "%", 0.1, 0, 0, 3, 1 +stft_minClt = scalar, S08, 1016, "C", 1, 0, -20, 100, 0 +stft_minAfr = scalar, U08, 1017, "afr", 0.1, 0, 10, 20, 1 +stft_maxAfr = scalar, U08, 1018, "afr", 0.1, 0, 10, 20, 1 +stft_startupDelay = scalar, U08, 1019, "seconds", 1, 0, 0, 250, 0 +stft_cellCfgs1_maxAdd = scalar, S08, 1020, "%", 1, 0, 0, 25, 0 +stft_cellCfgs1_maxRemove = scalar, S08, 1021, "%", 1, 0, -25, 0, 0 +stft_cellCfgs1_timeConstant = scalar, U16, 1022, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs2_maxAdd = scalar, S08, 1024, "%", 1, 0, 0, 25, 0 +stft_cellCfgs2_maxRemove = scalar, S08, 1025, "%", 1, 0, -25, 0, 0 +stft_cellCfgs2_timeConstant = scalar, U16, 1026, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs3_maxAdd = scalar, S08, 1028, "%", 1, 0, 0, 25, 0 +stft_cellCfgs3_maxRemove = scalar, S08, 1029, "%", 1, 0, -25, 0, 0 +stft_cellCfgs3_timeConstant = scalar, U16, 1030, "sec", 0.1, 0, 0.1, 100, 2 +stft_cellCfgs4_maxAdd = scalar, S08, 1032, "%", 1, 0, 0, 25, 0 +stft_cellCfgs4_maxRemove = scalar, S08, 1033, "%", 1, 0, -25, 0, 0 +stft_cellCfgs4_timeConstant = scalar, U16, 1034, "sec", 0.1, 0, 0.1, 100, 2 +stepperDcIo1_directionPin1 = bits, U16, 1036, [0:7], $gpio_list +stepperDcIo1_directionPin2 = bits, U16, 1038, [0:7], $gpio_list +stepperDcIo1_controlPin = bits, U16, 1040, [0:7], $gpio_list +stepperDcIo1_disablePin = bits, U16, 1042, [0:7], $gpio_list +stepperDcIo2_directionPin1 = bits, U16, 1044, [0:7], $gpio_list +stepperDcIo2_directionPin2 = bits, U16, 1046, [0:7], $gpio_list +stepperDcIo2_controlPin = bits, U16, 1048, [0:7], $gpio_list +stepperDcIo2_disablePin = bits, U16, 1050, [0:7], $gpio_list +engineMake = string, ASCII, 1052, 32 +engineCode = string, ASCII, 1084, 32 +vehicleName = string, ASCII, 1116, 32 +tcu_solenoid1 = bits, U16, 1148, [0:8], $output_pin_e_list +tcu_solenoid2 = bits, U16, 1150, [0:8], $output_pin_e_list +tcu_solenoid3 = bits, U16, 1152, [0:8], $output_pin_e_list +tcu_solenoid4 = bits, U16, 1154, [0:8], $output_pin_e_list +tcu_solenoid5 = bits, U16, 1156, [0:8], $output_pin_e_list +tcu_solenoid6 = bits, U16, 1158, [0:8], $output_pin_e_list +etbFunctions1 = bits, U08, 1160, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +etbFunctions2 = bits, U08, 1161, [0:2], "None", "Throttle 1", "Throttle 2", "Idle Valve", "Wastegate", "INVALID", "INVALID", "INVALID" +drv8860spiDevice = bits, U08, 1162, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +drv8860_cs = bits, U16, 1164, [0:7], $gpio_list +drv8860_csPinMode = bits, U08, 1166, [0:1], "default", "default inverted", "open collector", "open collector inverted" +drv8860_miso = bits, U16, 1168, [0:7], $gpio_list +luaOutputPins1 = bits, U16, 1170, [0:8], $output_pin_e_list +luaOutputPins2 = bits, U16, 1172, [0:8], $output_pin_e_list +luaOutputPins3 = bits, U16, 1174, [0:8], $output_pin_e_list +luaOutputPins4 = bits, U16, 1176, [0:8], $output_pin_e_list +luaOutputPins5 = bits, U16, 1178, [0:8], $output_pin_e_list +luaOutputPins6 = bits, U16, 1180, [0:8], $output_pin_e_list +luaOutputPins7 = bits, U16, 1182, [0:8], $output_pin_e_list +luaOutputPins8 = bits, U16, 1184, [0:8], $output_pin_e_list +vvtOffsets1 = scalar, F32, 1188, "value", 1, 0, -720, 1000, 1 +vvtOffsets2 = scalar, F32, 1192, "value", 1, 0, -720, 1000, 1 +vvtOffsets3 = scalar, F32, 1196, "value", 1, 0, -720, 1000, 1 +vvtOffsets4 = scalar, F32, 1200, "value", 1, 0, -720, 1000, 1 +vrThreshold1_rpmBins = array, U08, 1204, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold1_values = array, U08, 1210, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold1_pin = bits, U16, 1216, [0:7], $gpio_list +vrThreshold2_rpmBins = array, U08, 1220, [6], "rpm", 50.0, 0, 0, 12000, 0 +vrThreshold2_values = array, U08, 1226, [6], "volts", 0.01, 0, 0, 2.5, 2 +vrThreshold2_pin = bits, U16, 1232, [0:7], $gpio_list +gpPwmNote1 = string, ASCII, 1236, 16 +gpPwmNote2 = string, ASCII, 1252, 16 +gpPwmNote3 = string, ASCII, 1268, 16 +gpPwmNote4 = string, ASCII, 1284, 16 +tps2SecondaryMin = scalar, U16, 1300, "ADC", 1, 0, 0, 1000, 0 +tps2SecondaryMax = scalar, U16, 1302, "ADC", 1, 0, 0, 1000, 0 +widebandOnSecondBus = bits, U32, 1304, [0:0], "1", "2" +fuelClosedLoopCorrectionEnabled = bits, U32, 1304, [1:1], "false", "true" +oddFireEngine = bits, U32, 1304, [2:2], "false", "true" +boardUseTachPullUp = bits, U32, 1304, [3:3], "5v", "12v" +boardUseTempPullUp = bits, U32, 1304, [4:4], "Piggyback Mode", "With Pull Ups" +yesUnderstandLocking = bits, U32, 1304, [5:5], "no", "yes" +silentTriggerError = bits, U32, 1304, [6:6], "false", "true" +useLinearCltSensor = bits, U32, 1304, [7:7], "false", "true" +canReadEnabled = bits, U32, 1304, [8:8], "false", "true" +canWriteEnabled = bits, U32, 1304, [9:9], "false", "true" +useLinearIatSensor = bits, U32, 1304, [10:10], "false", "true" +boardUse2stepPullDown = bits, U32, 1304, [11:11], "With Pull Up", "With Pull Down" +tachPulseDurationAsDutyCycle = bits, U32, 1304, [12:12], "Constant time", "Duty cycle" +isAlternatorControlEnabled = bits, U32, 1304, [13:13], "false", "true" +invertPrimaryTriggerSignal = bits, U32, 1304, [14:14], "Rising", "Falling" +invertSecondaryTriggerSignal = bits, U32, 1304, [15:15], "Rising", "Falling" +cutFuelOnHardLimit = bits, U32, 1304, [16:16], "no", "yes" +cutSparkOnHardLimit = bits, U32, 1304, [17:17], "no", "yes" +launchFuelCutEnable = bits, U32, 1304, [18:18], "false", "true" +launchSparkCutEnable = bits, U32, 1304, [19:19], "false", "true" +boardUseCrankPullUp = bits, U32, 1304, [20:20], "VR", "Hall" +boardUseCamPullDown = bits, U32, 1304, [21:21], "With Pull Up", "With Pull Down" +boardUseCamVrPullUp = bits, U32, 1304, [22:22], "VR", "Hall" +boardUseD2PullDown = bits, U32, 1304, [23:23], "With Pull Up", "With Pull Down" +boardUseD3PullDown = bits, U32, 1304, [24:24], "With Pull Up", "With Pull Down" +boardUseD4PullDown = bits, U32, 1304, [25:25], "With Pull Up", "With Pull Down" +boardUseD5PullDown = bits, U32, 1304, [26:26], "With Pull Up", "With Pull Down" +verboseIsoTp = bits, U32, 1304, [27:27], "false", "true" +engineSnifferFocusOnInputs = bits, U32, 1304, [28:28], "false", "true" +launchActivateInverted = bits, U32, 1304, [29:29], "false", "true" +twoStroke = bits, U32, 1304, [30:30], "Four Stroke", "Two Stroke" +skippedWheelOnCam = bits, U32, 1304, [31:31], "On crankshaft", "On camshaft" +hipOutputChannel = bits, U08, 1308, [0:5], $adc_channel_e_list +acSwitch = bits, U16, 1310, [0:7], $switch_input_pin_e_list +vRefAdcChannel = bits, U08, 1312, [0:5], $adc_channel_e_list +etbNeutralPosition = scalar, U08, 1313, "%", 1, 0, 0, 100, 0 +idleMode = bits, U08, 1314, [0:0], "Open Loop + Closed Loop", "Open Loop" +isInjectionEnabled = bits, U32, 1316, [0:0], "false", "true" +isIgnitionEnabled = bits, U32, 1316, [1:1], "false", "true" +isCylinderCleanupEnabled = bits, U32, 1316, [2:2], "false", "true" +complexWallModel = bits, U32, 1316, [3:3], "Basic (constants)", "Advanced (tables)" +alwaysInstantRpm = bits, U32, 1316, [4:4], "false", "true" +isMapAveragingEnabled = bits, U32, 1316, [5:5], "false", "true" +overrideCrankingIacSetting = bits, U32, 1316, [6:6], "false", "true" +useSeparateAdvanceForIdle = bits, U32, 1316, [7:7], "false", "true" +isWaveAnalyzerEnabled = bits, U32, 1316, [8:8], "false", "true" +useSeparateVeForIdle = bits, U32, 1316, [9:9], "false", "true" +verboseTriggerSynchDetails = bits, U32, 1316, [10:10], "false", "true" +isManualSpinningMode = bits, U32, 1316, [11:11], "false", "true" +cutFuelInAcr = bits, U32, 1316, [12:12], "false", "true" +hondaK = bits, U32, 1316, [13:13], "false", "true" +twoWireBatchIgnition = bits, U32, 1316, [14:14], "false", "true" +useFixedBaroCorrFromMap = bits, U32, 1316, [15:15], "false", "true" +useSeparateAdvanceForCranking = bits, U32, 1316, [16:16], "Fixed (auto taper)", "Table" +useAdvanceCorrectionsForCranking = bits, U32, 1316, [17:17], "false", "true" +flexCranking = bits, U32, 1316, [18:18], "false", "true" +useIacPidMultTable = bits, U32, 1316, [19:19], "false", "true" +isBoostControlEnabled = bits, U32, 1316, [20:20], "false", "true" +launchSmoothRetard = bits, U32, 1316, [21:21], "false", "true" +isPhaseSyncRequiredForIgnition = bits, U32, 1316, [22:22], "false", "true" +useCltBasedRpmLimit = bits, U32, 1316, [23:23], "no", "yes" +forceO2Heating = bits, U32, 1316, [24:24], "no", "yes" +invertVvtControlIntake = bits, U32, 1316, [25:25], "advance", "retard" +invertVvtControlExhaust = bits, U32, 1316, [26:26], "advance", "retard" +useBiQuadOnAuxSpeedSensors = bits, U32, 1316, [27:27], "false", "true" +sdTriggerLog = bits, U32, 1316, [28:28], "normal", "trigger" +ALSActivateInverted = bits, U32, 1316, [29:29], "false", "true" +stepper_dc_use_two_wires = bits, U32, 1316, [30:30], "false", "true" +watchOutForLinearTime = bits, U32, 1316, [31:31], "false", "true" +engineChartSize = scalar, U32, 1320, "count", 1, 0, 0, 300, 0 +turboSpeedSensorMultiplier = scalar, F32, 1324, "mult", 1, 0, 0, 7000, 3 +camInputsDebug1 = bits, U16, 1328, [0:7], $gpio_list +camInputsDebug2 = bits, U16, 1330, [0:7], $gpio_list +camInputsDebug3 = bits, U16, 1332, [0:7], $gpio_list +camInputsDebug4 = bits, U16, 1334, [0:7], $gpio_list +acIdleRpmTarget = scalar, S16, 1336, "RPM", 1, 0, 0, 2000, 0 +warningPeriod = scalar, S16, 1338, "seconds", 1, 0, 0, 60, 0 +knockDetectionWindowStart = scalar, F32, 1340, "angle", 1, 0, -1000, 1000, 2 +knockDetectionWindowEnd = scalar, F32, 1344, "angle", 1, 0, -1000, 1000, 2 +idleStepperReactionTime = scalar, F32, 1348, "ms", 1, 0, 1, 300, 0 +idleStepperTotalSteps = scalar, S32, 1352, "count", 1, 0, 5, 3000, 0 +noAccelAfterHardLimitPeriodSecs = scalar, F32, 1356, "sec", 1, 0, 0, 60, 0 +mapAveragingSchedulingAtIndex = scalar, S32, 1360, "index", 1, 0, 0, 7000, 0 +tachPulseDuractionMs = scalar, F32, 1364, "", 1, 0, 0, 100, 2 +wwaeTau = scalar, F32, 1368, "Seconds", 1, 0, 0, 3, 2 +alternatorControl_pFactor = scalar, F32, 1372, "", 1, 0, -10000, 10000, 4 +alternatorControl_iFactor = scalar, F32, 1376, "", 1, 0, -10000, 10000, 4 +alternatorControl_dFactor = scalar, F32, 1380, "", 1, 0, -10000, 10000, 4 +alternatorControl_offset = scalar, S16, 1384, "", 1, 0, -1000, 1000, 0 +alternatorControl_periodMs = scalar, S16, 1386, "ms", 1, 0, 0, 3000, 0 +alternatorControl_minValue = scalar, S16, 1388, "", 1, 0, -30000, 30000, 0 +alternatorControl_maxValue = scalar, S16, 1390, "", 1, 0, -30000, 30000, 0 +etb_pFactor = scalar, F32, 1392, "", 1, 0, -10000, 10000, 4 +etb_iFactor = scalar, F32, 1396, "", 1, 0, -10000, 10000, 4 +etb_dFactor = scalar, F32, 1400, "", 1, 0, -10000, 10000, 4 +etb_offset = scalar, S16, 1404, "", 1, 0, -1000, 1000, 0 +etb_periodMs = scalar, S16, 1406, "ms", 1, 0, 0, 3000, 0 +etb_minValue = scalar, S16, 1408, "", 1, 0, -30000, 30000, 0 +etb_maxValue = scalar, S16, 1410, "", 1, 0, -30000, 30000, 0 +triggerInputDebugPins1 = bits, U16, 1412, [0:7], $gpio_list +triggerInputDebugPins2 = bits, U16, 1414, [0:7], $gpio_list +airTaperRpmRange = scalar, S16, 1416, "RPM", 1, 0, 0, 1500, 0 +turboSpeedSensorInputPin = bits, U16, 1418, [0:7], $brain_input_pin_e_list +tps2Min = scalar, S16, 1420, "ADC", 1, 0, 0, 1023, 0 +tps2Max = scalar, S16, 1422, "ADC", 1, 0, 0, 1023, 0 +starterControlPin = bits, U16, 1424, [0:8], $output_pin_e_list +startStopButtonMode = bits, U08, 1426, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +mc33816_flag0 = bits, U16, 1428, [0:7], $gpio_list +tachPulsePerRev = scalar, U08, 1430, "Pulse", 1, 0, 1, 255, 0 +mapErrorDetectionTooLow = scalar, F32, 1432, "kPa", 1, 0, -100, 100, 2 +mapErrorDetectionTooHigh = scalar, F32, 1436, "kPa", 1, 0, -100, 800, 2 +multisparkSparkDuration = scalar, U16, 1440, "ms", 0.001, 0, 0, 3, 2 +multisparkDwell = scalar, U16, 1442, "ms", 0.001, 0, 0, 3, 2 +idleRpmPid_pFactor = scalar, F32, 1444, "", 1, 0, -10000, 10000, 4 +idleRpmPid_iFactor = scalar, F32, 1448, "", 1, 0, -10000, 10000, 4 +idleRpmPid_dFactor = scalar, F32, 1452, "", 1, 0, -10000, 10000, 4 +idleRpmPid_offset = scalar, S16, 1456, "", 1, 0, -1000, 1000, 0 +idleRpmPid_periodMs = scalar, S16, 1458, "ms", 1, 0, 0, 3000, 0 +idleRpmPid_minValue = scalar, S16, 1460, "", 1, 0, -30000, 30000, 0 +idleRpmPid_maxValue = scalar, S16, 1462, "", 1, 0, -30000, 30000, 0 +wwaeBeta = scalar, F32, 1464, "Fraction", 1, 0, 0, 1, 2 +binarySerialTxPin = bits, U16, 1468, [0:7], $gpio_list +binarySerialRxPin = bits, U16, 1470, [0:7], $gpio_list +auxValves1 = bits, U16, 1472, [0:7], $gpio_list +auxValves2 = bits, U16, 1474, [0:7], $gpio_list +tcuUpshiftButtonPin = bits, U16, 1476, [0:7], $switch_input_pin_e_list +tcuDownshiftButtonPin = bits, U16, 1478, [0:7], $switch_input_pin_e_list +throttlePedalUpVoltage = scalar, F32, 1480, "voltage", 1, 0, -6, 6, 2 +throttlePedalWOTVoltage = scalar, F32, 1484, "voltage", 1, 0, -6, 6, 2 +startUpFuelPumpDuration = scalar, S16, 1488, "seconds", 1, 0, 0, 6000, 0 +idlePidRpmDeadZone = scalar, S16, 1490, "RPM", 1, 0, 0, 800, 0 +targetVBatt = scalar, F32, 1492, "Volts", 1, 0, 0, 30, 1 +mc33810DisableRecoveryMode = bits, U32, 1496, [0:0], "false", "true" +mc33810Gpgd0Mode = bits, U32, 1496, [1:1], "false", "true" +mc33810Gpgd1Mode = bits, U32, 1496, [2:2], "false", "true" +mc33810Gpgd2Mode = bits, U32, 1496, [3:3], "false", "true" +mc33810Gpgd3Mode = bits, U32, 1496, [4:4], "false", "true" +enableExtendedCanBroadcast = bits, U32, 1496, [5:5], "false", "true" +luaCanRxWorkaround = bits, U32, 1496, [6:6], "false", "true" +flexSensorInverted = bits, U32, 1496, [7:7], "false", "true" +useHardSkipInTraction = bits, U32, 1496, [8:8], "false", "true" +fancySmartS = bits, U32, 1496, [9:9], "false", "true" +fancySmartL = bits, U32, 1496, [10:10], "false", "true" +useAuxSpeedForSlipRatio = bits, U32, 1496, [11:11], "false", "true" +useVssAsSecondWheelSpeed = bits, U32, 1496, [12:12], "false", "true" +is_enabled_spi_5 = bits, U32, 1496, [13:13], "false", "true" +is_enabled_spi_6 = bits, U32, 1496, [14:14], "false", "true" +enableAemXSeriesEgt = bits, U32, 1496, [15:15], "false", "true" +afterCrankingIACtaperDuration = scalar, S16, 1500, "cycles", 1, 0, 0, 5000, 0 +iacByTpsTaper = scalar, S16, 1502, "percent", 1, 0, 0, 500, 0 +auxSerialTxPin = bits, U16, 1504, [0:7], $gpio_list +auxSerialRxPin = bits, U16, 1506, [0:7], $gpio_list +accelerometerCsPin = bits, U16, 1508, [0:7], $gpio_list +coastingFuelCutVssLow = scalar, U08, 1510, "kph", 1, 0, 0, 255, 0 +coastingFuelCutVssHigh = scalar, U08, 1511, "kph", 1, 0, 0, 255, 0 +tpsAccelEnrichmentThreshold = scalar, F32, 1512, "roc", 1, 0, 0, 200, 1 +auxSpeedSensorInputPin1 = bits, U16, 1516, [0:7], $brain_input_pin_e_list +auxSpeedSensorInputPin2 = bits, U16, 1518, [0:7], $brain_input_pin_e_list +totalGearsCount = scalar, U08, 1520, "", 1, 0, 1, 10, 0 +injectionTimingMode = bits, U08, 1521, [0:1], "End of injection", "Start of injection", "Center of injection", "INVALID" +debugMode = bits, U08, 1522, [0:5], "INVALID", "TPS acceleration enrichment", "INVALID", "Stepper Idle Control", "Engine Load accl enrich", "Trigger Counters", "Soft Spark Cut", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "SD card", "sr5", "Knock", "INVALID", "Electronic Throttle", "Executor", "Bench Test / TS commands", "INVALID", "Analog inputs #1", "INSTANT_RPM", "INVALID", "Status", "INVALID", "INVALID", "MAP", "Metrics", "INVALID", "Ion Sense", "TLE8888", "Analog inputs #2", "Dwell Metric", "INVALID", "INVALID", "Boost Control", "INVALID", "INVALID", "ETB Autotune", "Composite Log", "INVALID", "INVALID", "INVALID", "Dyno_View", "Logic_Analyzer", "INVALID", "TCU", "Lua", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +fan1ExtraIdle = scalar, U08, 1523, "%", 1, 0, 0, 100, 0 +uartConsoleSerialSpeed = scalar, U32, 1524, "BPs", 1, 0, 0, 1000000, 0 +tpsDecelEnleanmentThreshold = scalar, F32, 1528, "roc", 1, 0, 0, 200, 1 +tpsDecelEnleanmentMultiplier = scalar, F32, 1532, "coeff", 1, 0, 0, 200, 2 +auxSerialSpeed = scalar, U32, 1536, "BPs", 1, 0, 0, 1000000, 0 +throttlePedalSecondaryUpVoltage = scalar, F32, 1540, "voltage", 1, 0, -6, 6, 2 +throttlePedalSecondaryWOTVoltage = scalar, F32, 1544, "voltage", 1, 0, -6, 6, 2 +canBaudRate = bits, U08, 1548, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +veOverrideMode = bits, U08, 1549, [0:1], "None", "MAP", "TPS", "INVALID" +can2BaudRate = bits, U08, 1550, [0:2], "50kbps", "83.33kbps", "100kbps", "125kbps", "250kbps", "500kbps", "1Mbps", "INVALID" +afrOverrideMode = bits, U08, 1551, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +mc33_hpfp_i_peak = scalar, U08, 1552, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold = scalar, U08, 1553, "A", 0.1, 0, 0, 25, 1 +mc33_hpfp_i_hold_off = scalar, U08, 1554, "us", 1, 0, 0, 255, 0 +mc33_hpfp_max_hold = scalar, U08, 1555, "ms", 1, 0, 0, 255, 0 +stepperDcInvertedPins = bits, U32, 1556, [0:0], "false", "true" +canOpenBLT = bits, U32, 1556, [1:1], "false", "true" +can2OpenBLT = bits, U32, 1556, [2:2], "false", "true" +injectorFlowAsMassFlow = bits, U32, 1556, [3:3], "volumetric flow", "mass flow" +boardUseCanTerminator = bits, U32, 1556, [4:4], "false", "true" +kLineDoHondaSend = bits, U32, 1556, [5:5], "false", "true" +can1ListenMode = bits, U32, 1556, [6:6], "false", "true" +can2ListenMode = bits, U32, 1556, [7:7], "false", "true" +camDecoder2jzPosition = scalar, U08, 1560, "", 1, 0, 0, 100, 0 +mc33810maxDwellTimer = bits, U08, 1561, [0:2], "2 mS", "4 mS", "8 mS", "16 mS", "32 mS", "64 mS", "INVALID", "INVALID" +benchTestOnTime = scalar, U16, 1562, "ms", 0.01, 0, 0, 500, 2 +lambdaProtectionRestoreTps = scalar, U08, 1564, "%", 1, 0, 0, 100, 0 +lambdaProtectionRestoreLoad = scalar, U08, 1565, "%", 10.0, 0, 0, 1000, 0 +launchActivatePinMode = bits, U08, 1566, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +can2TxPin = bits, U16, 1568, [0:7], $gpio_list +can2RxPin = bits, U16, 1570, [0:7], $gpio_list +starterControlPinMode = bits, U08, 1572, [0:1], "default", "default inverted", "open collector", "open collector inverted" +wastegatePositionSensor = bits, U08, 1573, [0:5], $adc_channel_e_list +ignOverrideMode = bits, U08, 1574, [0:2], "None", "MAP", "TPS", "Acc Pedal", "Cyl Filling %", "INVALID", "INVALID", "INVALID" +injectorPressureType = bits, U08, 1575, [0:0], "Low", "High" +hpfpValvePin = bits, U16, 1576, [0:8], $output_pin_e_list +hpfpValvePinMode = bits, U08, 1578, [0:1], "default", "default inverted", "open collector", "open collector inverted" +boostCutPressure = scalar, F32, 1580, "kPa (absolute)", 1, 0, 0, 1000, 0 +tchargeBins = array, U08, 1584, [16], "kg/h", 5.0, 0, 0, 1200, 0 +tchargeValues = array, U08, 1600, [16], "ratio", 0.01, 0, 0, 1, 2 +fixedTiming = scalar, F32, 1616, "deg", 1, 0, -720, 720, 2 +mapLowValueVoltage = scalar, F32, 1620, "v", 1, 0, 0, 10, 2 +mapHighValueVoltage = scalar, F32, 1624, "v", 1, 0, 0, 10, 2 +egoValueShift = scalar, F32, 1628, "value", 1, 0, -10, 10, 2 +vvtPins1 = bits, U16, 1632, [0:8], $output_pin_e_list +vvtPins2 = bits, U16, 1634, [0:8], $output_pin_e_list +vvtPins3 = bits, U16, 1636, [0:8], $output_pin_e_list +vvtPins4 = bits, U16, 1638, [0:8], $output_pin_e_list +crankingIACposition = scalar, S32, 1640, "percent", 1, 0, -100, 100, 0 +tChargeMinRpmMinTps = scalar, F32, 1644, "", 1, 0, 0, 3, 4 +tChargeMinRpmMaxTps = scalar, F32, 1648, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMinTps = scalar, F32, 1652, "", 1, 0, 0, 3, 4 +tChargeMaxRpmMaxTps = scalar, F32, 1656, "", 1, 0, 0, 3, 4 +vvtOutputFrequency = scalar, U16, 1660, "Hz", 1, 0, 0, 3000, 0 +minimumIgnitionTiming = scalar, S08, 1662, "deg BTDC", 1, 0, -90, 90, 0 +maximumIgnitionTiming = scalar, S08, 1663, "deg BTDC", 1, 0, -90, 90, 0 +alternatorPwmFrequency = scalar, S32, 1664, "Hz", 1, 0, 0, 3000, 0 +vvtMode1 = bits, U08, 1668, [0:5], "Inactive", "Single Tooth", "Toyota 3 Tooth", "Miata NB2", "Mitsu 4G69", "Bosch Quick Start", "4/1", "ST 170", "Ford Barra 3+1", "Nissan VQ", "Honda K Intake", "Nissan MR18", "Mitsu 3A92", "VTwin by MAP", "Mitsu 6G75", "Mazda Skyactiv", "Honda K Exhaust", "Mitsubishi 4G92/93/94", "Mitsubishi 4G63", "Ford Coyote", "Mitsu 6G72", "Honda 600", "vvt22", "vvt23", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +vvtMode2 = bits, U08, 1669, [0:5], "Inactive", "Single Tooth", "Toyota 3 Tooth", "Miata NB2", "Mitsu 4G69", "Bosch Quick Start", "4/1", "ST 170", "Ford Barra 3+1", "Nissan VQ", "Honda K Intake", "Nissan MR18", "Mitsu 3A92", "VTwin by MAP", "Mitsu 6G75", "Mazda Skyactiv", "Honda K Exhaust", "Mitsubishi 4G92/93/94", "Mitsubishi 4G63", "Ford Coyote", "Mitsu 6G72", "Honda 600", "vvt22", "vvt23", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +fan2ExtraIdle = scalar, U08, 1670, "%", 1, 0, 0, 100, 0 +primingDelay = scalar, U08, 1671, "sec", 0.01, 0, 0, 1, 2 +auxAnalogInputs1 = bits, U08, 1672, [0:5], $adc_channel_e_list +auxAnalogInputs2 = bits, U08, 1673, [0:5], $adc_channel_e_list +auxAnalogInputs3 = bits, U08, 1674, [0:5], $adc_channel_e_list +auxAnalogInputs4 = bits, U08, 1675, [0:5], $adc_channel_e_list +auxAnalogInputs5 = bits, U08, 1676, [0:5], $adc_channel_e_list +auxAnalogInputs6 = bits, U08, 1677, [0:5], $adc_channel_e_list +auxAnalogInputs7 = bits, U08, 1678, [0:5], $adc_channel_e_list +auxAnalogInputs8 = bits, U08, 1679, [0:5], $adc_channel_e_list +trailingCoilPins1 = bits, U16, 1680, [0:8], $output_pin_e_list +trailingCoilPins2 = bits, U16, 1682, [0:8], $output_pin_e_list +trailingCoilPins3 = bits, U16, 1684, [0:8], $output_pin_e_list +trailingCoilPins4 = bits, U16, 1686, [0:8], $output_pin_e_list +trailingCoilPins5 = bits, U16, 1688, [0:8], $output_pin_e_list +trailingCoilPins6 = bits, U16, 1690, [0:8], $output_pin_e_list +trailingCoilPins7 = bits, U16, 1692, [0:8], $output_pin_e_list +trailingCoilPins8 = bits, U16, 1694, [0:8], $output_pin_e_list +trailingCoilPins9 = bits, U16, 1696, [0:8], $output_pin_e_list +trailingCoilPins10 = bits, U16, 1698, [0:8], $output_pin_e_list +trailingCoilPins11 = bits, U16, 1700, [0:8], $output_pin_e_list +trailingCoilPins12 = bits, U16, 1702, [0:8], $output_pin_e_list +tle8888mode = bits, U08, 1704, [0:1], "Auto", "SemiAuto", "Manual", "Hall" +accelerometerCsPinMode = bits, U08, 1705, [0:1], "default", "default inverted", "open collector", "open collector inverted" +injectorCompensationMode = bits, U08, 1706, [0:1], "None", "Fixed rail pressure", "Sensed Rail Pressure", "INVALID" +fan2PinMode = bits, U08, 1707, [0:1], "default", "default inverted", "open collector", "open collector inverted" +fuelReferencePressure = scalar, F32, 1708, "kPa", 1, 0, 50, 700000, 0 +postCrankingFactor = array, F32, 1712, [6x6], "mult", 1, 0, 1, 3, 2 +postCrankingDurationBins = array, F32, 1856, [6], "count", 1, 0, 0, 1000, 0 +postCrankingCLTBins = array, F32, 1880, [6], "C", 1, 0, -100, 100, 0 +auxTempSensor1_tempC_1 = scalar, F32, 1904, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_2 = scalar, F32, 1908, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_tempC_3 = scalar, F32, 1912, "*C", 1, 0, -55, 200, 1 +auxTempSensor1_resistance_1 = scalar, F32, 1916, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_2 = scalar, F32, 1920, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_resistance_3 = scalar, F32, 1924, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor1_bias_resistor = scalar, F32, 1928, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor1_adcChannel = bits, U08, 1932, [0:5], $adc_channel_e_list +auxTempSensor2_tempC_1 = scalar, F32, 1936, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_2 = scalar, F32, 1940, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_tempC_3 = scalar, F32, 1944, "*C", 1, 0, -55, 200, 1 +auxTempSensor2_resistance_1 = scalar, F32, 1948, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_2 = scalar, F32, 1952, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_resistance_3 = scalar, F32, 1956, "Ohm", 1, 0, 0, 1000000, 1 +auxTempSensor2_bias_resistor = scalar, F32, 1960, "Ohm", 1, 0, 0, 200000, 1 +auxTempSensor2_adcChannel = bits, U08, 1964, [0:5], $adc_channel_e_list +knockSamplingDuration = scalar, S16, 1968, "Deg", 1, 0, 0, 720, 0 +etbFreq = scalar, S16, 1970, "Hz", 1, 0, 0, 3000, 0 +etbWastegatePid_pFactor = scalar, F32, 1972, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_iFactor = scalar, F32, 1976, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_dFactor = scalar, F32, 1980, "", 1, 0, -10000, 10000, 4 +etbWastegatePid_offset = scalar, S16, 1984, "", 1, 0, -1000, 1000, 0 +etbWastegatePid_periodMs = scalar, S16, 1986, "ms", 1, 0, 0, 3000, 0 +etbWastegatePid_minValue = scalar, S16, 1988, "", 1, 0, -30000, 30000, 0 +etbWastegatePid_maxValue = scalar, S16, 1990, "", 1, 0, -30000, 30000, 0 +stepperNumMicroSteps = bits, U08, 1992, [0:3], "Full-Step (Default)", "INVALID", "Half-Step", "INVALID", "1/4 Micro-Step", "INVALID", "INVALID", "INVALID", "1/8 Micro-Step", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +stepperMinDutyCycle = scalar, U08, 1993, "%", 1, 0, 0, 100, 0 +stepperMaxDutyCycle = scalar, U08, 1994, "%", 1, 0, 0, 100, 0 +sdCardSpiDevice = bits, U08, 1995, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +timing_offset_cylinder1 = scalar, F32, 1996, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder2 = scalar, F32, 2000, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder3 = scalar, F32, 2004, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder4 = scalar, F32, 2008, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder5 = scalar, F32, 2012, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder6 = scalar, F32, 2016, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder7 = scalar, F32, 2020, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder8 = scalar, F32, 2024, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder9 = scalar, F32, 2028, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder10 = scalar, F32, 2032, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder11 = scalar, F32, 2036, "deg", 1, 0, -720, 720, 1 +timing_offset_cylinder12 = scalar, F32, 2040, "deg", 1, 0, -720, 720, 1 +idlePidActivationTime = scalar, F32, 2044, "seconds", 1, 0, 0, 60, 1 +spi1SckMode = bits, U08, 2048, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi1MosiMode = bits, U08, 2049, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi1MisoMode = bits, U08, 2050, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi2SckMode = bits, U08, 2051, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi2MosiMode = bits, U08, 2052, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi2MisoMode = bits, U08, 2053, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi3SckMode = bits, U08, 2054, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi3MosiMode = bits, U08, 2055, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi3MisoMode = bits, U08, 2056, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +stepperEnablePinMode = bits, U08, 2057, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_rstb = bits, U16, 2058, [0:7], $gpio_list +mc33816_driven = bits, U16, 2060, [0:7], $gpio_list +brakePedalPin = bits, U16, 2062, [0:7], $switch_input_pin_e_list +auxPid1_pFactor = scalar, F32, 2064, "", 1, 0, -10000, 10000, 4 +auxPid1_iFactor = scalar, F32, 2068, "", 1, 0, -10000, 10000, 4 +auxPid1_dFactor = scalar, F32, 2072, "", 1, 0, -10000, 10000, 4 +auxPid1_offset = scalar, S16, 2076, "", 1, 0, -1000, 1000, 0 +auxPid1_periodMs = scalar, S16, 2078, "ms", 1, 0, 0, 3000, 0 +auxPid1_minValue = scalar, S16, 2080, "", 1, 0, -30000, 30000, 0 +auxPid1_maxValue = scalar, S16, 2082, "", 1, 0, -30000, 30000, 0 +auxPid2_pFactor = scalar, F32, 2084, "", 1, 0, -10000, 10000, 4 +auxPid2_iFactor = scalar, F32, 2088, "", 1, 0, -10000, 10000, 4 +auxPid2_dFactor = scalar, F32, 2092, "", 1, 0, -10000, 10000, 4 +auxPid2_offset = scalar, S16, 2096, "", 1, 0, -1000, 1000, 0 +auxPid2_periodMs = scalar, S16, 2098, "ms", 1, 0, 0, 3000, 0 +auxPid2_minValue = scalar, S16, 2100, "", 1, 0, -30000, 30000, 0 +auxPid2_maxValue = scalar, S16, 2102, "", 1, 0, -30000, 30000, 0 +injectorCorrectionPolynomial1 = scalar, F32, 2104, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial2 = scalar, F32, 2108, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial3 = scalar, F32, 2112, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial4 = scalar, F32, 2116, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial5 = scalar, F32, 2120, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial6 = scalar, F32, 2124, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial7 = scalar, F32, 2128, "", 1, 0, -1000, 1000, 4 +injectorCorrectionPolynomial8 = scalar, F32, 2132, "", 1, 0, -1000, 1000, 4 +primeBins = array, S08, 2136, [8], "C", 1, 0, -40, 120, 0 +oilPressure_hwChannel = bits, U08, 2144, [0:5], $adc_channel_e_list +oilPressure_v1 = scalar, F32, 2148, "volts", 1, 0, 0, 10, 2 +oilPressure_value1 = scalar, F32, 2152, "", 1, 0, 0, 1000000, 2 +oilPressure_v2 = scalar, F32, 2156, "volts", 1, 0, 0, 10, 2 +oilPressure_value2 = scalar, F32, 2160, "", 1, 0, 0, 1000000, 2 +accelerometerSpiDevice = bits, U08, 2164, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +fan2Pin = bits, U16, 2166, [0:8], $output_pin_e_list +fan2OnTemperature = scalar, U08, 2168, "deg C", 1, 0, 0, 150, 0 +fan2OffTemperature = scalar, U08, 2169, "deg C", 1, 0, 0, 150, 0 +stepperEnablePin = bits, U16, 2170, [0:7], $gpio_list +tle8888_cs = bits, U16, 2172, [0:7], $gpio_list +tle8888_csPinMode = bits, U08, 2174, [0:1], "default", "default inverted", "open collector", "open collector inverted" +mc33816_cs = bits, U16, 2176, [0:7], $gpio_list +auxFrequencyFilter = scalar, F32, 2180, "hz", 1, 0, 0, 100, 1 +sentInputPins1 = bits, U16, 2184, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6", "PF7", "PF8", "PF9", "PF10", "PF11", "PF12", "PF13", "PF14", "PF15", "PG0", "PG1", "PG2", "PG3", "PG4", "PG5", "PG6", "PG7", "PG8", "PG9", "PG10", "PG11", "PG12", "PG13", "PG14", "PG15", "PH0", "PH1", "PH2", "PH3", "PH4", "PH5", "PH6", "PH7", "PH8", "PH9", "PH10", "PH11", "PH12", "PH13", "PH14", "PH15", "PI0", "PI1", "PI2", "PI3", "PI4", "PI5", "PI6", "PI7", "PI8", "PI9", "PI10", "PI11", "PI12", "PI13", "PI14", "PI15", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +coastingFuelCutRpmHigh = scalar, S16, 2186, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutRpmLow = scalar, S16, 2188, "rpm", 1, 0, 0, 5000, 0 +coastingFuelCutTps = scalar, S16, 2190, "%", 1, 0, 0, 20, 0 +coastingFuelCutClt = scalar, S16, 2192, "C", 1, 0, -100, 100, 0 +pidExtraForLowRpm = scalar, S16, 2194, "%", 1, 0, 0, 100, 0 +coastingFuelCutMap = scalar, S16, 2196, "kPa", 1, 0, 0, 250, 0 +highPressureFuel_hwChannel = bits, U08, 2200, [0:5], $adc_channel_e_list +highPressureFuel_v1 = scalar, F32, 2204, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value1 = scalar, F32, 2208, "", 1, 0, 0, 1000000, 2 +highPressureFuel_v2 = scalar, F32, 2212, "volts", 1, 0, 0, 10, 2 +highPressureFuel_value2 = scalar, F32, 2216, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_hwChannel = bits, U08, 2220, [0:5], $adc_channel_e_list +lowPressureFuel_v1 = scalar, F32, 2224, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value1 = scalar, F32, 2228, "", 1, 0, 0, 1000000, 2 +lowPressureFuel_v2 = scalar, F32, 2232, "volts", 1, 0, 0, 10, 2 +lowPressureFuel_value2 = scalar, F32, 2236, "", 1, 0, 0, 1000000, 2 +scriptCurveName1 = string, ASCII, 2240, 16 +scriptCurveName2 = string, ASCII, 2256, 16 +scriptCurveName3 = string, ASCII, 2272, 16 +scriptCurveName4 = string, ASCII, 2288, 16 +scriptCurveName5 = string, ASCII, 2304, 16 +scriptCurveName6 = string, ASCII, 2320, 16 +scriptTableName1 = string, ASCII, 2336, 16 +scriptTableName2 = string, ASCII, 2352, 16 +scriptTableName3 = string, ASCII, 2368, 16 +scriptTableName4 = string, ASCII, 2384, 16 +scriptSettingName1 = string, ASCII, 2400, 16 +scriptSettingName2 = string, ASCII, 2416, 16 +scriptSettingName3 = string, ASCII, 2432, 16 +scriptSettingName4 = string, ASCII, 2448, 16 +scriptSettingName5 = string, ASCII, 2464, 16 +scriptSettingName6 = string, ASCII, 2480, 16 +scriptSettingName7 = string, ASCII, 2496, 16 +scriptSettingName8 = string, ASCII, 2512, 16 +tChargeAirCoefMin = scalar, F32, 2528, "", 1, 0, 0, 1, 3 +tChargeAirCoefMax = scalar, F32, 2532, "", 1, 0, 0, 1, 3 +tChargeAirFlowMax = scalar, F32, 2536, "kg/h", 1, 0, 0, 1000, 1 +tChargeAirIncrLimit = scalar, F32, 2540, "deg/sec", 1, 0, 0, 100, 1 +tChargeAirDecrLimit = scalar, F32, 2544, "deg/sec", 1, 0, 0, 100, 1 +hip9011Gain = scalar, F32, 2548, "", 1, 0, 0, 100, 2 +etb_iTermMin = scalar, S16, 2552, "", 1, 0, -30000, 30000, 0 +etb_iTermMax = scalar, S16, 2554, "", 1, 0, -30000, 30000, 0 +idleTimingPid_pFactor = scalar, F32, 2556, "", 1, 0, -10000, 10000, 4 +idleTimingPid_iFactor = scalar, F32, 2560, "", 1, 0, -10000, 10000, 4 +idleTimingPid_dFactor = scalar, F32, 2564, "", 1, 0, -10000, 10000, 4 +idleTimingPid_offset = scalar, S16, 2568, "", 1, 0, -1000, 1000, 0 +idleTimingPid_periodMs = scalar, S16, 2570, "ms", 1, 0, 0, 3000, 0 +idleTimingPid_minValue = scalar, S16, 2572, "", 1, 0, -30000, 30000, 0 +idleTimingPid_maxValue = scalar, S16, 2574, "", 1, 0, -30000, 30000, 0 +idleTimingSoftEntryTime = scalar, F32, 2576, "", 1, 0, 0, 100, 1 +etbRocExpAverageLength = scalar, S16, 2580, "", 1, 0, 0, 32000, 0 +tpsAccelFractionPeriod = scalar, S16, 2582, "cycles", 1, 0, 0, 500, 0 +tpsAccelFractionDivisor = scalar, F32, 2584, "coef", 1, 0, 1, 100, 2 +tle8888spiDevice = bits, U08, 2588, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +mc33816spiDevice = bits, U08, 2589, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +idlerpmpid_iTermMin = scalar, S16, 2590, "", 1, 0, -30000, 30000, 0 +tle6240spiDevice = bits, U08, 2592, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4", "SPI5", "SPI6", "INVALID" +stoichRatioPrimary = scalar, U08, 2593, ":1", 0.1, 0, 5, 25, 1 +idlerpmpid_iTermMax = scalar, S16, 2594, "", 1, 0, -30000, 30000, 0 +etbIdleThrottleRange = scalar, F32, 2596, "%", 1, 0, 0, 15, 0 +cylinderBankSelect1 = scalar, U08, 2600, "", 1, 1, 1, 2, 0 +cylinderBankSelect2 = scalar, U08, 2601, "", 1, 1, 1, 2, 0 +cylinderBankSelect3 = scalar, U08, 2602, "", 1, 1, 1, 2, 0 +cylinderBankSelect4 = scalar, U08, 2603, "", 1, 1, 1, 2, 0 +cylinderBankSelect5 = scalar, U08, 2604, "", 1, 1, 1, 2, 0 +cylinderBankSelect6 = scalar, U08, 2605, "", 1, 1, 1, 2, 0 +cylinderBankSelect7 = scalar, U08, 2606, "", 1, 1, 1, 2, 0 +cylinderBankSelect8 = scalar, U08, 2607, "", 1, 1, 1, 2, 0 +cylinderBankSelect9 = scalar, U08, 2608, "", 1, 1, 1, 2, 0 +cylinderBankSelect10 = scalar, U08, 2609, "", 1, 1, 1, 2, 0 +cylinderBankSelect11 = scalar, U08, 2610, "", 1, 1, 1, 2, 0 +cylinderBankSelect12 = scalar, U08, 2611, "", 1, 1, 1, 2, 0 +primeValues = array, U08, 2612, [8], "mg", 5.0, 0, 0, 1250, 0 +triggerCompCenterVolt = scalar, U08, 2620, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMin = scalar, U08, 2621, "V", 0.02, 0, 0, 5.1, 2 +triggerCompHystMax = scalar, U08, 2622, "V", 0.02, 0, 0, 5.1, 2 +triggerCompSensorSatRpm = scalar, U08, 2623, "RPM", 50.0, 0, 0, 12000, 0 +tractionControlSlipBins = array, U16, 2624, [6], "ratio", 0.01, 0, 0, 999, 2 +tractionControlSpeedBins = array, U08, 2636, [6], "RPM", 1, 0, 0, 250, 0 +disableFan1AtSpeed = scalar, S08, 2642, "", 1, 0, 0, 100, 0 +disableFan2AtSpeed = scalar, S08, 2643, "", 1, 0, 0, 100, 0 +canVssNbcType = bits, U08, 2644, [0:2], "BMW_e46", "W202", "BMW E8x/E9x MK60e5", "Nissan 350", "Hyundai PB", "Honda Civic9", "INVALID", "INVALID" +gppwm1_pin = bits, U16, 2648, [0:8], $output_pin_e_list +gppwm1_dutyIfError = scalar, U08, 2650, "%", 1, 0, 0, 100, 0 +gppwm1_pwmFrequency = scalar, U16, 2652, "hz", 1, 0, 0, 500, 0 +gppwm1_onAboveDuty = scalar, U08, 2654, "%", 1, 0, 0, 100, 0 +gppwm1_offBelowDuty = scalar, U08, 2655, "%", 1, 0, 0, 100, 0 +gppwm1_loadAxis = bits, U08, 2656, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm1_rpmAxis = bits, U08, 2657, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm1_loadBins = array, S16, 2658, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm1_rpmBins = array, S16, 2674, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm1_table = array, U08, 2690, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm2_pin = bits, U16, 2756, [0:8], $output_pin_e_list +gppwm2_dutyIfError = scalar, U08, 2758, "%", 1, 0, 0, 100, 0 +gppwm2_pwmFrequency = scalar, U16, 2760, "hz", 1, 0, 0, 500, 0 +gppwm2_onAboveDuty = scalar, U08, 2762, "%", 1, 0, 0, 100, 0 +gppwm2_offBelowDuty = scalar, U08, 2763, "%", 1, 0, 0, 100, 0 +gppwm2_loadAxis = bits, U08, 2764, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm2_rpmAxis = bits, U08, 2765, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm2_loadBins = array, S16, 2766, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm2_rpmBins = array, S16, 2782, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm2_table = array, U08, 2798, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm3_pin = bits, U16, 2864, [0:8], $output_pin_e_list +gppwm3_dutyIfError = scalar, U08, 2866, "%", 1, 0, 0, 100, 0 +gppwm3_pwmFrequency = scalar, U16, 2868, "hz", 1, 0, 0, 500, 0 +gppwm3_onAboveDuty = scalar, U08, 2870, "%", 1, 0, 0, 100, 0 +gppwm3_offBelowDuty = scalar, U08, 2871, "%", 1, 0, 0, 100, 0 +gppwm3_loadAxis = bits, U08, 2872, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm3_rpmAxis = bits, U08, 2873, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm3_loadBins = array, S16, 2874, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm3_rpmBins = array, S16, 2890, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm3_table = array, U08, 2906, [8x8], "duty", 0.5, 0, 0, 100, 1 +gppwm4_pin = bits, U16, 2972, [0:8], $output_pin_e_list +gppwm4_dutyIfError = scalar, U08, 2974, "%", 1, 0, 0, 100, 0 +gppwm4_pwmFrequency = scalar, U16, 2976, "hz", 1, 0, 0, 500, 0 +gppwm4_onAboveDuty = scalar, U08, 2978, "%", 1, 0, 0, 100, 0 +gppwm4_offBelowDuty = scalar, U08, 2979, "%", 1, 0, 0, 100, 0 +gppwm4_loadAxis = bits, U08, 2980, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm4_rpmAxis = bits, U08, 2981, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +gppwm4_loadBins = array, S16, 2982, [8], "load", 0.5, 0, -1000, 10000, 1 +gppwm4_rpmBins = array, S16, 2998, [8], "RPM", 1, 0, -30000, 30000, 0 +gppwm4_table = array, U08, 3014, [8x8], "duty", 0.5, 0, 0, 100, 1 +mc33_i_boost = scalar, U16, 3080, "mA", 1, 0, 1000, 25000, 0 +mc33_i_peak = scalar, U16, 3082, "mA", 1, 0, 1000, 20000, 0 +mc33_i_hold = scalar, U16, 3084, "mA", 1, 0, 1000, 20000, 0 +mc33_t_max_boost = scalar, U16, 3086, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_off = scalar, U16, 3088, "us", 1, 0, 0, 10000, 0 +mc33_t_peak_tot = scalar, U16, 3090, "us", 1, 0, 0, 10000, 0 +mc33_t_bypass = scalar, U16, 3092, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_off = scalar, U16, 3094, "us", 1, 0, 0, 10000, 0 +mc33_t_hold_tot = scalar, U16, 3096, "us", 1, 0, 0, 10000, 0 +tcuUpshiftButtonPinMode = bits, U08, 3098, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcuDownshiftButtonPinMode = bits, U08, 3099, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +acSwitchMode = bits, U08, 3100, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_solenoid_mode1 = bits, U08, 3101, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode2 = bits, U08, 3102, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode3 = bits, U08, 3103, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode4 = bits, U08, 3104, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode5 = bits, U08, 3105, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_solenoid_mode6 = bits, U08, 3106, [0:1], "default", "default inverted", "open collector", "open collector inverted" +triggerGapOverrideFrom1 = scalar, F32, 3108, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom2 = scalar, F32, 3112, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom3 = scalar, F32, 3116, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom4 = scalar, F32, 3120, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom5 = scalar, F32, 3124, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom6 = scalar, F32, 3128, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom7 = scalar, F32, 3132, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom8 = scalar, F32, 3136, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom9 = scalar, F32, 3140, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom10 = scalar, F32, 3144, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom11 = scalar, F32, 3148, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom12 = scalar, F32, 3152, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom13 = scalar, F32, 3156, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom14 = scalar, F32, 3160, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom15 = scalar, F32, 3164, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom16 = scalar, F32, 3168, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom17 = scalar, F32, 3172, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideFrom18 = scalar, F32, 3176, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo1 = scalar, F32, 3180, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo2 = scalar, F32, 3184, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo3 = scalar, F32, 3188, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo4 = scalar, F32, 3192, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo5 = scalar, F32, 3196, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo6 = scalar, F32, 3200, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo7 = scalar, F32, 3204, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo8 = scalar, F32, 3208, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo9 = scalar, F32, 3212, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo10 = scalar, F32, 3216, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo11 = scalar, F32, 3220, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo12 = scalar, F32, 3224, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo13 = scalar, F32, 3228, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo14 = scalar, F32, 3232, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo15 = scalar, F32, 3236, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo16 = scalar, F32, 3240, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo17 = scalar, F32, 3244, "ratio", 1, 0, 0, 20, 3 +triggerGapOverrideTo18 = scalar, F32, 3248, "ratio", 1, 0, 0, 20, 3 +maxCamPhaseResolveRpm = scalar, U08, 3252, "rpm", 50.0, 0, 0, 12500, 0 +dfcoDelay = scalar, U08, 3253, "sec", 0.1, 0, 0, 10, 1 +acDelay = scalar, U08, 3254, "sec", 0.1, 0, 0, 10, 1 +tChargeMode = bits, U08, 3255, [0:1], "RPM+TPS (Default)", "Air Mass Interpolation", "Table", "INVALID" +fordInjectorSmallPulseBreakPoint = scalar, U16, 3256, "mg", 0.001, 0, 0, 65, 3 +etbJamIntegratorLimit = scalar, U08, 3258, "%", 1, 0, 0, 50, 0 +hpfpCamLobes = scalar, U08, 3259, "lobes/cam", 1, 0, 0, 255, 0 +hpfpCam = bits, U08, 3260, [0:2], "NONE", "Intake 1", "Exhaust 1", "Intake 2", "Exhaust 2", "INVALID", "INVALID", "INVALID" +auxiliarySetting1 = scalar, U08, 3261, "", 1, 0, 0, 100, 0 +hpfpMinAngle = scalar, U08, 3262, "deg", 1, 0, 0, 255, 0 +hpfpPumpVolume = scalar, U16, 3264, "cc", 0.001, 0, 0, 65, 3 +hpfpActivationAngle = scalar, U08, 3266, "deg", 1, 0, 0, 255, 0 +issFilterReciprocal = scalar, U08, 3267, "", 1, 0, 0, 255, 0 +hpfpPidP = scalar, U16, 3268, "%/kPa", 0.001, 0, 0, 65, 3 +hpfpPidI = scalar, U16, 3270, "%/kPa/lobe", 1.0E-5, 0, 0, 0.65, 5 +hpfpTargetDecay = scalar, U16, 3272, "kPa/s", 1, 0, 0, 65000, 0 +stepper_raw_output1 = bits, U16, 3274, [0:8], $output_pin_e_list +stepper_raw_output2 = bits, U16, 3276, [0:8], $output_pin_e_list +stepper_raw_output3 = bits, U16, 3278, [0:8], $output_pin_e_list +stepper_raw_output4 = bits, U16, 3280, [0:8], $output_pin_e_list +gearRatio1 = scalar, U16, 3282, "ratio", 0.01, 0, 0, 30, 2 +gearRatio2 = scalar, U16, 3284, "ratio", 0.01, 0, 0, 30, 2 +gearRatio3 = scalar, U16, 3286, "ratio", 0.01, 0, 0, 30, 2 +gearRatio4 = scalar, U16, 3288, "ratio", 0.01, 0, 0, 30, 2 +gearRatio5 = scalar, U16, 3290, "ratio", 0.01, 0, 0, 30, 2 +gearRatio6 = scalar, U16, 3292, "ratio", 0.01, 0, 0, 30, 2 +gearRatio7 = scalar, U16, 3294, "ratio", 0.01, 0, 0, 30, 2 +gearRatio8 = scalar, U16, 3296, "ratio", 0.01, 0, 0, 30, 2 +gearRatio9 = scalar, U16, 3298, "ratio", 0.01, 0, 0, 30, 2 +gearRatio10 = scalar, U16, 3300, "ratio", 0.01, 0, 0, 30, 2 +vvtActivationDelayMs = scalar, U16, 3302, "ms", 1, 0, 0, 65000, 0 +torqueTable = array, U08, 3304, [6x6], "Nm", 10.0, 0, 0, 255, 0 +torqueRpmBins = array, U16, 3340, [6], "RPM", 1, 0, 0, 65000, 0 +torqueLoadBins = array, U16, 3352, [6], "Load", 1, 0, 0, 65000, 0 +gearControllerMode = bits, U08, 3364, [0:1], "None", "Button Shift", "INVALID", "INVALID" +transmissionControllerMode = bits, U08, 3365, [0:1], "None", "Simple Transmission", "GM 4L6X", "INVALID" +acrDisablePhase = scalar, U16, 3366, "deg", 1, 0, 0, 720, 0 +auxLinear1_hwChannel = bits, U08, 3368, [0:5], $adc_channel_e_list +auxLinear1_v1 = scalar, F32, 3372, "volts", 1, 0, 0, 10, 2 +auxLinear1_value1 = scalar, F32, 3376, "", 1, 0, 0, 1000000, 2 +auxLinear1_v2 = scalar, F32, 3380, "volts", 1, 0, 0, 10, 2 +auxLinear1_value2 = scalar, F32, 3384, "", 1, 0, 0, 1000000, 2 +auxLinear2_hwChannel = bits, U08, 3388, [0:5], $adc_channel_e_list +auxLinear2_v1 = scalar, F32, 3392, "volts", 1, 0, 0, 10, 2 +auxLinear2_value1 = scalar, F32, 3396, "", 1, 0, 0, 1000000, 2 +auxLinear2_v2 = scalar, F32, 3400, "volts", 1, 0, 0, 10, 2 +auxLinear2_value2 = scalar, F32, 3404, "", 1, 0, 0, 1000000, 2 +tcu_tcc_onoff_solenoid = bits, U16, 3408, [0:8], $output_pin_e_list +tcu_tcc_onoff_solenoid_mode = bits, U08, 3410, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid = bits, U16, 3412, [0:8], $output_pin_e_list +tcu_tcc_pwm_solenoid_mode = bits, U08, 3414, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_tcc_pwm_solenoid_freq = scalar, U16, 3416, "Hz", 1, 0, 0, 3000, 0 +tcu_pc_solenoid_pin = bits, U16, 3418, [0:8], $output_pin_e_list +tcu_pc_solenoid_pin_mode = bits, U08, 3420, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_pc_solenoid_freq = scalar, U16, 3422, "Hz", 1, 0, 0, 3000, 0 +tcu_32_solenoid_pin = bits, U16, 3424, [0:8], $output_pin_e_list +tcu_32_solenoid_pin_mode = bits, U08, 3426, [0:1], "default", "default inverted", "open collector", "open collector inverted" +tcu_32_solenoid_freq = scalar, U16, 3428, "Hz", 1, 0, 0, 3000, 0 +acrPin2 = bits, U16, 3430, [0:8], $output_pin_e_list +etbMinimumPosition = scalar, F32, 3432, "%", 1, 0, 0.01, 100, 2 +tuneHidingKey = scalar, U16, 3436, "", 1, 0, 0, 20000, 0 +vinNumber = string, ASCII, 3438, 17 +highSpeedOffsets = array, U16, 3456, [32], "", 1, 0.00000,0.00,65535, 0, noMsqSave +fuelPressureSensorMode = bits, U08, 3520, [0:1], "Absolute", "Gauge", "Differential", "INVALID" +luaDigitalInputPins1 = bits, U16, 3522, [0:7], $switch_input_pin_e_list +luaDigitalInputPins2 = bits, U16, 3524, [0:7], $switch_input_pin_e_list +luaDigitalInputPins3 = bits, U16, 3526, [0:7], $switch_input_pin_e_list +luaDigitalInputPins4 = bits, U16, 3528, [0:7], $switch_input_pin_e_list +luaDigitalInputPins5 = bits, U16, 3530, [0:7], $switch_input_pin_e_list +luaDigitalInputPins6 = bits, U16, 3532, [0:7], $switch_input_pin_e_list +luaDigitalInputPins7 = bits, U16, 3534, [0:7], $switch_input_pin_e_list +luaDigitalInputPins8 = bits, U16, 3536, [0:7], $switch_input_pin_e_list +ALSMinRPM = scalar, S16, 3538, "rpm", 1, 0, 0, 20000, 0 +ALSMaxRPM = scalar, S16, 3540, "rpm", 1, 0, 0, 20000, 0 +ALSMaxDuration = scalar, S16, 3542, "sec", 1, 0, 0, 10, 0 +ALSMinCLT = scalar, S08, 3544, "C", 1, 0, 0, 90, 0 +ALSMaxCLT = scalar, S08, 3545, "C", 1, 0, 0, 105, 0 +alsMinTimeBetween = scalar, U08, 3546, "", 1, 0, 0, 20000, 0 +alsEtbPosition = scalar, U08, 3547, "", 1, 0, 0, 20000, 0 +acRelayAlternatorDutyAdder = scalar, U08, 3548, "%", 1, 0, 0, 100, 0 +sentEtbType = bits, S08, 3549, [0:1], "None", "GM type 1", "Ford type 1", "Custom" +customSentTpsMin = scalar, U16, 3550, "", 1, 0, 0, 32000, 0 +ALSIdleAdd = scalar, S32, 3552, "%", 1, 0, 0, 100, 2 +ALSEtbAdd = scalar, S32, 3556, "%", 1, 0, 0, 100, 2 +ALSSkipRatio = scalar, F32, 3560, "", 1, 0, 0, 1, 1 +ALSMaxDriverThrottleIntent = scalar, U08, 3564, "%", 1, 0, 0, 10, 0 +ALSActivatePinMode = bits, U08, 3565, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tpsSecondaryMaximum = scalar, U08, 3566, "%", 0.5, 0, 0, 100, 1 +ppsSecondaryMaximum = scalar, U08, 3567, "%", 0.5, 0, 0, 100, 1 +luaDigitalInputPinModes1 = bits, U08, 3568, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes2 = bits, U08, 3569, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes3 = bits, U08, 3570, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes4 = bits, U08, 3571, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes5 = bits, U08, 3572, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes6 = bits, U08, 3573, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes7 = bits, U08, 3574, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +luaDigitalInputPinModes8 = bits, U08, 3575, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +customSentTpsMax = scalar, U16, 3576, "", 1, 0, 0, 32000, 0 +kLineBaudRate = scalar, U16, 3578, "", 1, 0, 0, 32000, 0 +canGpioType = bits, S08, 3580, [0:1], "None", "DRT protocol", "MS protocol", "INVALID" +uiMode = bits, S08, 3581, [0:1], "Full", "Installation", "Tuning", "INVALID" +hpfpPeakPos = scalar, S16, 3582, "deg", 1, 0, -719, 719, 0 +kLinePeriodUs = scalar, S16, 3584, "us", 1, 0, 0, 30000, 0 +rpmSoftLimitWindowSize = scalar, U08, 3586, "RPM", 10.0, 0, 0, 2500, 0 +rpmSoftLimitTimingRetard = scalar, U08, 3587, "deg", 0.2, 0, 0, 50, 1 +rpmSoftLimitFuelAdded = scalar, U08, 3588, "%", 0.2, 0, 0, 50, 1 +rpmHardLimitHyst = scalar, U08, 3589, "RPM", 10.0, 0, 0, 2500, 0 +benchTestOffTime = scalar, U16, 3590, "ms", 0.1, 0, 0, 2000, 1 +boostCutPressureHyst = scalar, U08, 3592, "kPa (absolute)", 0.5, 0, 0, 125, 1 +gearBasedOpenLoopBoostAdder = array, S08, 3593, [10], "%", 0.5, 0, -63, 63, 1 +benchTestCount = scalar, U32, 3604, "", 1, 0, 0, 10000000, 0 +iacByTpsHoldTime = scalar, U08, 3608, "seconds", 0.1, 0, 0, 25, 1 +iacByTpsDecayTime = scalar, U08, 3609, "seconds", 0.1, 0, 0, 25, 1 +tcu_rangeInput1 = bits, U16, 3610, [0:7], $switch_input_pin_e_list +tcu_rangeInput2 = bits, U16, 3612, [0:7], $switch_input_pin_e_list +tcu_rangeInput3 = bits, U16, 3614, [0:7], $switch_input_pin_e_list +tcu_rangeInput4 = bits, U16, 3616, [0:7], $switch_input_pin_e_list +tcu_rangeInput5 = bits, U16, 3618, [0:7], $switch_input_pin_e_list +tcu_rangeInput6 = bits, U16, 3620, [0:7], $switch_input_pin_e_list +tcu_rangeInputMode1 = bits, U08, 3622, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode2 = bits, U08, 3623, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode3 = bits, U08, 3624, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode4 = bits, U08, 3625, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode5 = bits, U08, 3626, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +tcu_rangeInputMode6 = bits, U08, 3627, [0:1], "DEFAULT", "PULLUP", "PULLDOWN", "INVALID" +canVssScaling = scalar, U16, 3628, "ratio", 1.0E-4, 0, 0.5, 1.5, 4 +oilTempSensor_tempC_1 = scalar, F32, 3632, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_2 = scalar, F32, 3636, "*C", 1, 0, -55, 200, 1 +oilTempSensor_tempC_3 = scalar, F32, 3640, "*C", 1, 0, -55, 200, 1 +oilTempSensor_resistance_1 = scalar, F32, 3644, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_2 = scalar, F32, 3648, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_resistance_3 = scalar, F32, 3652, "Ohm", 1, 0, 0, 1000000, 1 +oilTempSensor_bias_resistor = scalar, F32, 3656, "Ohm", 1, 0, 0, 200000, 1 +oilTempSensor_adcChannel = bits, U08, 3660, [0:5], $adc_channel_e_list +fuelTempSensor_tempC_1 = scalar, F32, 3664, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_2 = scalar, F32, 3668, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_tempC_3 = scalar, F32, 3672, "*C", 1, 0, -55, 200, 1 +fuelTempSensor_resistance_1 = scalar, F32, 3676, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_2 = scalar, F32, 3680, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_resistance_3 = scalar, F32, 3684, "Ohm", 1, 0, 0, 1000000, 1 +fuelTempSensor_bias_resistor = scalar, F32, 3688, "Ohm", 1, 0, 0, 200000, 1 +fuelTempSensor_adcChannel = bits, U08, 3692, [0:5], $adc_channel_e_list +ambientTempSensor_tempC_1 = scalar, F32, 3696, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_2 = scalar, F32, 3700, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_tempC_3 = scalar, F32, 3704, "*C", 1, 0, -55, 200, 1 +ambientTempSensor_resistance_1 = scalar, F32, 3708, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_2 = scalar, F32, 3712, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_resistance_3 = scalar, F32, 3716, "Ohm", 1, 0, 0, 1000000, 1 +ambientTempSensor_bias_resistor = scalar, F32, 3720, "Ohm", 1, 0, 0, 200000, 1 +ambientTempSensor_adcChannel = bits, U08, 3724, [0:5], $adc_channel_e_list +compressorDischargeTemperature_tempC_1 = scalar, F32, 3728, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_2 = scalar, F32, 3732, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_tempC_3 = scalar, F32, 3736, "*C", 1, 0, -55, 200, 1 +compressorDischargeTemperature_resistance_1 = scalar, F32, 3740, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_2 = scalar, F32, 3744, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_resistance_3 = scalar, F32, 3748, "Ohm", 1, 0, 0, 1000000, 1 +compressorDischargeTemperature_bias_resistor = scalar, F32, 3752, "Ohm", 1, 0, 0, 200000, 1 +compressorDischargeTemperature_adcChannel = bits, U08, 3756, [0:5], $adc_channel_e_list +throttleInletPressureChannel = bits, U08, 3760, [0:5], $adc_channel_e_list +compressorDischargePressureChannel = bits, U08, 3761, [0:5], $adc_channel_e_list +dacOutputPins1 = bits, U16, 3762, [0:7], $gpio_list +dacOutputPins2 = bits, U16, 3764, [0:7], $gpio_list +speedometerOutputPin = bits, U16, 3766, [0:8], $output_pin_e_list +speedometerPulsePerKm = scalar, U16, 3768, "", 1, 0, 0, 65000, 0 +simulatorCamPosition1 = scalar, U08, 3770, "", 1, 0, 0, 100, 0 +simulatorCamPosition2 = scalar, U08, 3771, "", 1, 0, 0, 100, 0 +simulatorCamPosition3 = scalar, U08, 3772, "", 1, 0, 0, 100, 0 +simulatorCamPosition4 = scalar, U08, 3773, "", 1, 0, 0, 100, 0 +ignKeyAdcChannel = bits, U08, 3774, [0:5], $adc_channel_e_list +spi6MisoMode = bits, U08, 3775, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +triggerVVTGapOverrideFrom1 = scalar, F32, 3776, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom2 = scalar, F32, 3780, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom3 = scalar, F32, 3784, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideFrom4 = scalar, F32, 3788, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo1 = scalar, F32, 3792, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo2 = scalar, F32, 3796, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo3 = scalar, F32, 3800, "ratio", 1, 0, 0, 20, 3 +triggerVVTGapOverrideTo4 = scalar, F32, 3804, "ratio", 1, 0, 0, 20, 3 +tractionControlEtbDrop = array, S08, 3808, [6x6], "%", 1, 0, -100, 0, 0 +maxInjectorDutyInstant = scalar, U08, 3844, "%", 1, 0, 50, 200, 0 +maxInjectorDutySustained = scalar, U08, 3845, "%", 1, 0, 50, 120, 0 +maxInjectorDutySustainedTimeout = scalar, U08, 3846, "sec", 0.1, 0, 0, 5, 1 +injectionPinsStage21 = bits, U16, 3848, [0:8], $output_pin_e_list +injectionPinsStage22 = bits, U16, 3850, [0:8], $output_pin_e_list +injectionPinsStage23 = bits, U16, 3852, [0:8], $output_pin_e_list +injectionPinsStage24 = bits, U16, 3854, [0:8], $output_pin_e_list +injectionPinsStage25 = bits, U16, 3856, [0:8], $output_pin_e_list +injectionPinsStage26 = bits, U16, 3858, [0:8], $output_pin_e_list +injectionPinsStage27 = bits, U16, 3860, [0:8], $output_pin_e_list +injectionPinsStage28 = bits, U16, 3862, [0:8], $output_pin_e_list +injectionPinsStage29 = bits, U16, 3864, [0:8], $output_pin_e_list +injectionPinsStage210 = bits, U16, 3866, [0:8], $output_pin_e_list +injectionPinsStage211 = bits, U16, 3868, [0:8], $output_pin_e_list +injectionPinsStage212 = bits, U16, 3870, [0:8], $output_pin_e_list +tractionControlTimingDrop = array, S08, 3872, [6x6], "Deg", 1, 0, -100, 100, 0 +tractionControlIgnitionSkip = array, S08, 3908, [6x6], "%", 1, 0, 0, 100, 0 +auxSpeed1Multiplier = scalar, F32, 3944, "", 1, 0, 0, 100, 0 +brakeMeanEffectivePressureDifferential = scalar, F32, 3948, "", 1, 0, 0, 100, 0 +spi4mosiPin = bits, U16, 3952, [0:7], $gpio_list +spi4misoPin = bits, U16, 3954, [0:7], $gpio_list +spi4sckPin = bits, U16, 3956, [0:7], $gpio_list +spi5mosiPin = bits, U16, 3958, [0:7], $gpio_list +spi5misoPin = bits, U16, 3960, [0:7], $gpio_list +spi5sckPin = bits, U16, 3962, [0:7], $gpio_list +spi6mosiPin = bits, U16, 3964, [0:7], $gpio_list +spi6misoPin = bits, U16, 3966, [0:7], $gpio_list +spi6sckPin = bits, U16, 3968, [0:7], $gpio_list +spi4SckMode = bits, U08, 3970, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi4MosiMode = bits, U08, 3971, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi4MisoMode = bits, U08, 3972, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi5SckMode = bits, U08, 3973, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi5MosiMode = bits, U08, 3974, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi5MisoMode = bits, U08, 3975, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi6SckMode = bits, U08, 3976, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +spi6MosiMode = bits, U08, 3977, [0:6], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLUP", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PULLDOWN", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +tunerStudioSerialSpeed = scalar, U32, 3980, "BPs", 1, 0, 0, 1000000, 0 +unusedOftenChangesDuringFirmwareUpdate = array, U08, 3984, [236], "units", 1, 0, 0, 1, 0 +etbBiasBins = array, F32, 4220, [8], "target TPS position", 1, 0, 0, 100, 0 +etbBiasValues = array, F32, 4252, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2 +iacPidMultTable = array, U08, 4284, [8x8], "%", 0.05, 0, 0, 10, 2 +iacPidMultLoadBins = array, U08, 4348, [8], "Load", 1, 0, 0, 500, 2 +iacPidMultRpmBins = array, U08, 4356, [8], "RPM", 10.0, 0, 0, 2500, 0 +sparkDwellRpmBins = array, U16, 4364, [8], "RPM", 1, 0, 0, 25000, 0 +sparkDwellValues = array, U16, 4380, [8], "ms", 0.01, 0, 0, 30, 2 +cltIdleRpmBins = array, S08, 4396, [16], "C", 2.0, 0, -40, 200, 0 +cltIdleRpm = array, U08, 4412, [16], "RPM", 20.0, 0, 0, 5000, 0 +cltTimingBins = array, F32, 4428, [8], "C", 1, 0, -100, 250, 1 +cltTimingExtra = array, F32, 4460, [8], "degree", 1, 0, -400, 400, 0 +scriptCurve1Bins = array, F32, 4492, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve1 = array, F32, 4556, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve2Bins = array, F32, 4620, [16], "x", 1, 0, -10000, 10000, 3 +scriptCurve2 = array, F32, 4684, [16], "y", 1, 0, -10000, 10000, 3 +scriptCurve3Bins = array, F32, 4748, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve3 = array, F32, 4780, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve4Bins = array, F32, 4812, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve4 = array, F32, 4844, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve5Bins = array, F32, 4876, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve5 = array, F32, 4908, [8], "y", 1, 0, -10000, 10000, 3 +scriptCurve6Bins = array, F32, 4940, [8], "x", 1, 0, -10000, 10000, 3 +scriptCurve6 = array, F32, 4972, [8], "y", 1, 0, -10000, 10000, 3 +baroCorrPressureBins = array, F32, 5004, [4], "kPa", 1, 0, 0, 200, 2 +baroCorrRpmBins = array, F32, 5020, [4], "RPM", 1, 0, 0, 18000, 0 +baroCorrTable = array, F32, 5036, [4x4], "ratio", 1, 0, 0, 2, 2 +crankingTpsCoef = array, F32, 5100, [8], "Ratio", 1, 0, 0, 700, 2 +crankingTpsBins = array, F32, 5132, [8], "%", 1, 0, 0, 100, 2 +crankingAdvanceBins = array, U16, 5164, [4], "RPM", 1, 0, 0, 25000, 0 +crankingAdvance = array, S16, 5172, [4], "deg", 0.01, 0, -20, 90, 2 +iacCoastingRpmBins = array, U08, 5180, [16], "RPM", 100.0, 0, 0, 25000, 0 +iacCoasting = array, U08, 5196, [16], "%", 0.5, 0, 0, 100, 1 +warning_message = string, ASCII, 5212, 120 +fancyOptions1 = scalar, U08, 5332, "", 1, 0, 0, 255, 0 +fancyOptions2 = scalar, U08, 5333, "", 1, 0, 0, 255, 0 +fancyOptions3 = scalar, U08, 5334, "", 1, 0, 0, 255, 0 +fancyOptions4 = scalar, U08, 5335, "", 1, 0, 0, 255, 0 +fancyOptions5 = scalar, U08, 5336, "", 1, 0, 0, 255, 0 +fancyOptions6 = scalar, U08, 5337, "", 1, 0, 0, 255, 0 +fancyOptions7 = scalar, U08, 5338, "", 1, 0, 0, 255, 0 +fancyOptions8 = scalar, U08, 5339, "", 1, 0, 0, 255, 0 +fancyOptions9 = scalar, U08, 5340, "", 1, 0, 0, 255, 0 +fancyOptions10 = scalar, U08, 5341, "", 1, 0, 0, 255, 0 +fancyOptions11 = scalar, U08, 5342, "", 1, 0, 0, 255, 0 +fancyOptions12 = scalar, U08, 5343, "", 1, 0, 0, 255, 0 +fancyOptions13 = scalar, U08, 5344, "", 1, 0, 0, 255, 0 +fancyOptions14 = scalar, U08, 5345, "", 1, 0, 0, 255, 0 +fancyOptions15 = scalar, U08, 5346, "", 1, 0, 0, 255, 0 +fancyOptions16 = scalar, U08, 5347, "", 1, 0, 0, 255, 0 +boostTableOpenLoop = array, U08, 5348, [8x8], "", 0.5, 0, 0, 100, 1 +boostRpmBins = array, U08, 5412, [8], "RPM", 100.0, 0, 0, 25000, 0 +boostTableClosedLoop = array, U08, 5420, [8x8], "", 2.0, 0, 0, 3000, 0 +boostTpsBins = array, U08, 5484, [8], "%", 1, 0, 0, 100, 0 +pedalToTpsTable = array, U08, 5492, [8x8], "%", 1, 0, 0, 100, 0 +pedalToTpsPedalBins = array, U08, 5556, [8], "%", 1, 0, 0, 120, 0 +pedalToTpsRpmBins = array, U08, 5564, [8], "RPM", 100.0, 0, 0, 25000, 0 +cltCrankingCorrBins = array, F32, 5572, [8], "C", 1, 0, -100, 250, 2 +cltCrankingCorr = array, F32, 5604, [8], "%", 1, 0, 0, 500, 2 +idleAdvanceBins = array, U08, 5636, [8], "RPM", 50.0, 0, 0, 12000, 0 +idleAdvance = array, F32, 5644, [8], "deg", 1, 0, -20, 90, 1 +idleVeRpmBins = array, U08, 5676, [4], "RPM", 10.0, 0, 0, 2500, 0 +idleVeLoadBins = array, U08, 5680, [4], "load", 1, 0, 0, 100, 0 +idleVeTable = array, U16, 5684, [4x4], "%", 0.1, 0, 0, 999, 1 +luaScript = string, ASCII, 5716, 8000 +cltFuelCorrBins = array, F32, 13716, [16], "C", 1, 0, -100, 250, 2 +cltFuelCorr = array, F32, 13780, [16], "ratio", 1, 0, 0, 5, 2 +iatFuelCorrBins = array, F32, 13844, [16], "C", 1, 0, -100, 250, 2 +iatFuelCorr = array, F32, 13908, [16], "ratio", 1, 0, 0, 5, 2 +crankingFuelCoef = array, F32, 13972, [8], "ratio", 1, 0, 0, 50, 2 +crankingFuelBins = array, F32, 14004, [8], "C", 1, 0, -80, 170, 2 +crankingCycleCoef = array, F32, 14036, [8], "ratio", 1, 0, 0, 5, 2 +crankingCycleBins = array, F32, 14068, [8], "counter", 1, 0, -80, 170, 0 +cltIdleCorrBins = array, F32, 14100, [16], "C", 1, 0, -100, 250, 2 +cltIdleCorr = array, F32, 14164, [16], "ratio", 1, 0, 0, 10, 2 +mafDecoding = array, F32, 14228, [32], "kg/hour", 1, 0, -500, 4000, 2 +mafDecodingBins = array, F32, 14356, [32], "V", 1, 0, -5, 150, 2 +ignitionIatCorrTable = array, S08, 14484, [8x8], "deg", 0.1, 0, -25, 25, 1 +ignitionIatCorrTempBins = array, S08, 14548, [8], "C", 1, 0, -40, 120, 0 +ignitionIatCorrLoadBins = array, U08, 14556, [8], "Load", 5.0, 0, 0, 1000, 0 +injectionPhase = array, S16, 14564, [16x16], "deg", 1, 0, -720, 720, 0 +injPhaseLoadBins = array, U16, 15076, [16], "Load", 1, 0, 0, 1000, 0 +injPhaseRpmBins = array, U16, 15108, [16], "RPM", 1, 0, 0, 18000, 0 +tcuSolenoidTable = array, U08, 15140, [10x6], "onoff", 1, 0, 0, 1, 0 +mapEstimateTable = array, U16, 15200, [16x16], "kPa", 0.01, 0, 0, 600, 2 +mapEstimateTpsBins = array, U16, 15712, [16], "% TPS", 0.01, 0, 0, 100, 1 +mapEstimateRpmBins = array, U16, 15744, [16], "RPM", 1, 0, 0, 18000, 0 +vvtTable1 = array, S08, 15776, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable1LoadBins = array, U16, 15840, [8], "L", 1, 0, 0, 1000, 0 +vvtTable1RpmBins = array, U16, 15856, [8], "RPM", 1, 0, 0, 18000, 0 +vvtTable2 = array, S08, 15872, [8x8], "value", 1, 0, -125, 125, 0 +vvtTable2LoadBins = array, U16, 15936, [8], "L", 1, 0, 0, 1000, 0 +vvtTable2RpmBins = array, U16, 15952, [8], "RPM", 1, 0, 0, 18000, 0 +ignitionTable = array, S16, 15968, [16x16], "deg", 0.1, 0, -20, 90, 1 +ignitionLoadBins = array, U16, 16480, [16], "Load", 1, 0, 0, 1000, 0 +ignitionRpmBins = array, U16, 16512, [16], "RPM", 1, 0, 0, 18000, 0 +veTable = array, U16, 16544, [16x16], "%", 0.1, 0, 0, 999, 1 +veLoadBins = array, U16, 17056, [16], "kPa", 1, 0, 0, 1000, 0 +veRpmBins = array, U16, 17088, [16], "RPM", 1, 0, 0, 18000, 0 #if LAMBDA -lambdaTable = array, U08, 17720, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 +lambdaTable = array, U08, 17120, [16x16], "lambda", 0.006802721088435374, 0, 0.6, 1.5, 2 #else -lambdaTable = array, U08, 17720, [16x16], "afr", 0.1, 0, 0, 25, 1 +lambdaTable = array, U08, 17120, [16x16], "afr", 0.1, 0, 0, 25, 1 #endif -lambdaLoadBins = array, U16, 17976, [16], "", 1, 0, 0, 1000, 0 -lambdaRpmBins = array, U16, 18008, [16], "RPM", 1, 0, 0, 18000, 0 -tpsTpsAccelTable = array, F32, 18040, [8x8], "value", 1, 0, 0, 30000, 2 -tpsTpsAccelFromRpmBins = array, F32, 18296, [8], "from", 1, 0, 0, 30000, 2 -tpsTpsAccelToRpmBins = array, F32, 18328, [8], "to", 1, 0, 0, 25500, 2 -scriptTable1 = array, F32, 18360, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable1LoadBins = array, S16, 18616, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable1RpmBins = array, S16, 18632, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable2 = array, F32, 18648, [8x8], "value", 1, 0, -100000, 100000, 2 -scriptTable2LoadBins = array, S16, 18904, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable2RpmBins = array, S16, 18920, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable3 = array, U08, 18936, [8x8], "value", 1, 0, 0, 255, 0 -scriptTable3LoadBins = array, S16, 19000, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable3RpmBins = array, S16, 19016, [8], "RPM", 1, 0, -32000, 32000, 0 -scriptTable4 = array, U08, 19032, [10x8], "value", 1, 0, 0, 255, 0 -scriptTable4LoadBins = array, S16, 19112, [8], "L", 1, 0, -32000, 32000, 0 -scriptTable4RpmBins = array, S16, 19128, [10], "RPM", 1, 0, -32000, 32000, 0 -ignTrimLoadBins = array, U16, 19148, [4], "", 1, 0, 0, 1000, 0 -ignTrimRpmBins = array, U16, 19156, [4], "rpm", 1, 0, 0, 20000, 0 -ignTrims1_table = array, S08, 19164, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims2_table = array, S08, 19180, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims3_table = array, S08, 19196, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims4_table = array, S08, 19212, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims5_table = array, S08, 19228, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims6_table = array, S08, 19244, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims7_table = array, S08, 19260, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims8_table = array, S08, 19276, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims9_table = array, S08, 19292, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims10_table = array, S08, 19308, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims11_table = array, S08, 19324, [4x4], "", 0.2, 0, -25, 25, 1 -ignTrims12_table = array, S08, 19340, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrimLoadBins = array, U16, 19356, [4], "", 1, 0, 0, 1000, 0 -fuelTrimRpmBins = array, U16, 19364, [4], "rpm", 1, 0, 0, 20000, 0 -fuelTrims1_table = array, S08, 19372, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims2_table = array, S08, 19388, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims3_table = array, S08, 19404, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims4_table = array, S08, 19420, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims5_table = array, S08, 19436, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims6_table = array, S08, 19452, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims7_table = array, S08, 19468, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims8_table = array, S08, 19484, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims9_table = array, S08, 19500, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims10_table = array, S08, 19516, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims11_table = array, S08, 19532, [4x4], "", 0.2, 0, -25, 25, 1 -fuelTrims12_table = array, S08, 19548, [4x4], "", 0.2, 0, -25, 25, 1 -crankingFuelCoefE100 = array, U16, 19564, [8], "ratio", 0.01, 0, 0, 50, 2 -tcu_pcAirmassBins = array, U08, 19580, [8], "Airmass", 0.02, 0, 0, 255, 2 -tcu_pcValsR = array, U08, 19588, [8], "%", 1, 0, 0, 255, 0 -tcu_pcValsN = array, U08, 19596, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals1 = array, U08, 19604, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals2 = array, U08, 19612, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals3 = array, U08, 19620, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals4 = array, U08, 19628, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals12 = array, U08, 19636, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals23 = array, U08, 19644, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals34 = array, U08, 19652, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals21 = array, U08, 19660, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals32 = array, U08, 19668, [8], "%", 1, 0, 0, 255, 0 -tcu_pcVals43 = array, U08, 19676, [8], "%", 1, 0, 0, 255, 0 -tcu_tccTpsBins = array, U08, 19684, [8], "TPS", 1, 0, 0, 255, 0 -tcu_tccLockSpeed = array, U08, 19692, [8], "MPH", 1, 0, 0, 255, 0 -tcu_tccUnlockSpeed = array, U08, 19700, [8], "MPH", 1, 0, 0, 255, 0 -tcu_32SpeedBins = array, U08, 19708, [8], "KPH", 1, 0, 0, 255, 0 -tcu_32Vals = array, U08, 19716, [8], "%", 1, 0, 0, 255, 0 -throttle2TrimTable = array, S08, 19724, [6x6], "%", 0.1, 0, -10, 10, 1 -throttle2TrimTpsBins = array, U08, 19760, [6], "%", 1, 0, 0, 120, 0 -throttle2TrimRpmBins = array, U08, 19766, [6], "RPM", 100.0, 0, 0, 25000, 0 -maxKnockRetardTable = array, U08, 19772, [6x6], "deg", 0.25, 0, 0, 30, 2 -maxKnockRetardLoadBins = array, U08, 19808, [6], "%", 1, 0, 0, 250, 0 -maxKnockRetardRpmBins = array, U08, 19814, [6], "RPM", 100.0, 0, 0, 25000, 0 -ALSTimingRetardTable = array, S16, 19820, [4x4], "deg", 0.1, 0, -60, 0, 1 -alsIgnRetardLoadBins = array, U16, 19852, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnRetardrpmBins = array, U16, 19860, [4], "RPM", 1, 0, 0, 25000, 0 -ALSFuelAdjustment = array, S16, 19868, [4x4], "percent", 0.1, 0, 0, 50, 1 -alsFuelAdjustmentLoadBins = array, U16, 19900, [4], "TPS", 1, 0, 0, 100, 0 -alsFuelAdjustmentrpmBins = array, U16, 19908, [4], "RPM", 1, 0, 0, 25000, 0 -ALSIgnSkipTable = array, S16, 19916, [4x4], "ratio", 10.0, 0, 0, 50, 1 -alsIgnSkipLoadBins = array, U16, 19948, [4], "TPS", 1, 0, 0, 100, 0 -alsIgnSkiprpmBins = array, U16, 19956, [4], "RPM", 1, 0, 0, 25000, 0 -ignBlends1_table = array, S16, 19964, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends1_loadBins = array, U16, 20092, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends1_rpmBins = array, U16, 20108, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends1_blendParameter = bits, U08, 20124, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -ignBlends1_yAxisOverride = bits, U08, 20125, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -ignBlends1_blendBins = array, S16, 20126, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends1_blendValues = array, U08, 20142, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends2_table = array, S16, 20152, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends2_loadBins = array, U16, 20280, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends2_rpmBins = array, U16, 20296, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends2_blendParameter = bits, U08, 20312, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -ignBlends2_yAxisOverride = bits, U08, 20313, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -ignBlends2_blendBins = array, S16, 20314, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends2_blendValues = array, U08, 20330, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends3_table = array, S16, 20340, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends3_loadBins = array, U16, 20468, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends3_rpmBins = array, U16, 20484, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends3_blendParameter = bits, U08, 20500, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -ignBlends3_yAxisOverride = bits, U08, 20501, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -ignBlends3_blendBins = array, S16, 20502, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends3_blendValues = array, U08, 20518, [8], "%", 0.5, 0, 0, 100, 1 -ignBlends4_table = array, S16, 20528, [8x8], "", 0.1, 0, -100, 100, 1 -ignBlends4_loadBins = array, U16, 20656, [8], "Load", 1, 0, 0, 1000, 0 -ignBlends4_rpmBins = array, U16, 20672, [8], "RPM", 1, 0, 0, 18000, 0 -ignBlends4_blendParameter = bits, U08, 20688, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -ignBlends4_yAxisOverride = bits, U08, 20689, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -ignBlends4_blendBins = array, S16, 20690, [8], "", 0.1, 0, -1000, 1000, 1 -ignBlends4_blendValues = array, U08, 20706, [8], "%", 0.5, 0, 0, 100, 1 -veBlends1_table = array, S16, 20716, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends1_loadBins = array, U16, 20844, [8], "Load", 1, 0, 0, 1000, 0 -veBlends1_rpmBins = array, U16, 20860, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends1_blendParameter = bits, U08, 20876, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -veBlends1_yAxisOverride = bits, U08, 20877, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -veBlends1_blendBins = array, S16, 20878, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends1_blendValues = array, U08, 20894, [8], "%", 0.5, 0, 0, 100, 1 -veBlends2_table = array, S16, 20904, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends2_loadBins = array, U16, 21032, [8], "Load", 1, 0, 0, 1000, 0 -veBlends2_rpmBins = array, U16, 21048, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends2_blendParameter = bits, U08, 21064, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -veBlends2_yAxisOverride = bits, U08, 21065, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -veBlends2_blendBins = array, S16, 21066, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends2_blendValues = array, U08, 21082, [8], "%", 0.5, 0, 0, 100, 1 -veBlends3_table = array, S16, 21092, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends3_loadBins = array, U16, 21220, [8], "Load", 1, 0, 0, 1000, 0 -veBlends3_rpmBins = array, U16, 21236, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends3_blendParameter = bits, U08, 21252, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -veBlends3_yAxisOverride = bits, U08, 21253, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -veBlends3_blendBins = array, S16, 21254, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends3_blendValues = array, U08, 21270, [8], "%", 0.5, 0, 0, 100, 1 -veBlends4_table = array, S16, 21280, [8x8], "", 0.1, 0, -100, 100, 1 -veBlends4_loadBins = array, U16, 21408, [8], "Load", 1, 0, 0, 1000, 0 -veBlends4_rpmBins = array, U16, 21424, [8], "RPM", 1, 0, 0, 18000, 0 -veBlends4_blendParameter = bits, U08, 21440, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -veBlends4_yAxisOverride = bits, U08, 21441, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -veBlends4_blendBins = array, S16, 21442, [8], "", 0.1, 0, -1000, 1000, 1 -veBlends4_blendValues = array, U08, 21458, [8], "%", 0.5, 0, 0, 100, 1 -throttleEstimateEffectiveAreaBins = array, U16, 21468, [12], "%", 0.1, 0, 0, 100, 1 -throttleEstimateEffectiveAreaValues = array, U16, 21492, [12], "g/s", 0.1, 0, 0, 6500, 1 -boostOpenLoopBlends1_table = array, S16, 21516, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends1_loadBins = array, U16, 21644, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends1_rpmBins = array, U16, 21660, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends1_blendParameter = bits, U08, 21676, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -boostOpenLoopBlends1_yAxisOverride = bits, U08, 21677, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -boostOpenLoopBlends1_blendBins = array, S16, 21678, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends1_blendValues = array, U08, 21694, [8], "%", 0.5, 0, 0, 100, 1 -boostOpenLoopBlends2_table = array, S16, 21704, [8x8], "", 0.1, 0, -100, 100, 1 -boostOpenLoopBlends2_loadBins = array, U16, 21832, [8], "Load", 1, 0, 0, 1000, 0 -boostOpenLoopBlends2_rpmBins = array, U16, 21848, [8], "RPM", 1, 0, 0, 18000, 0 -boostOpenLoopBlends2_blendParameter = bits, U08, 21864, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -boostOpenLoopBlends2_yAxisOverride = bits, U08, 21865, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -boostOpenLoopBlends2_blendBins = array, S16, 21866, [8], "", 0.1, 0, -1000, 1000, 1 -boostOpenLoopBlends2_blendValues = array, U08, 21882, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends1_table = array, S16, 21892, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends1_loadBins = array, U16, 22020, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends1_rpmBins = array, U16, 22036, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends1_blendParameter = bits, U08, 22052, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -boostClosedLoopBlends1_yAxisOverride = bits, U08, 22053, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -boostClosedLoopBlends1_blendBins = array, S16, 22054, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends1_blendValues = array, U08, 22070, [8], "%", 0.5, 0, 0, 100, 1 -boostClosedLoopBlends2_table = array, S16, 22080, [8x8], "", 0.1, 0, -100, 100, 1 -boostClosedLoopBlends2_loadBins = array, U16, 22208, [8], "Load", 1, 0, 0, 1000, 0 -boostClosedLoopBlends2_rpmBins = array, U16, 22224, [8], "RPM", 1, 0, 0, 18000, 0 -boostClosedLoopBlends2_blendParameter = bits, U08, 22240, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -boostClosedLoopBlends2_yAxisOverride = bits, U08, 22241, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -boostClosedLoopBlends2_blendBins = array, S16, 22242, [8], "", 0.1, 0, -1000, 1000, 1 -boostClosedLoopBlends2_blendValues = array, U08, 22258, [8], "%", 0.5, 0, 0, 100, 1 -tcu_rangeP = array, U08, 22268, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeR = array, U08, 22274, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeN = array, U08, 22280, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeD = array, U08, 22286, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM = array, U08, 22292, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM3 = array, U08, 22298, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM2 = array, U08, 22304, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeM1 = array, U08, 22310, [6], "level", 1, 0, 0, 3, 0 -tcu_rangePlus = array, U08, 22316, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeMinus = array, U08, 22322, [6], "level", 1, 0, 0, 3, 0 -tcu_rangeLow = array, U08, 22328, [6], "level", 1, 0, 0, 3, 0 -lambdaMaxDeviationTable = array, U08, 22334, [4x4], "lambda", 0.01, 0, 0, 1, 2 -lambdaMaxDeviationLoadBins = array, U16, 22350, [4], "", 1, 0, 0, 1000, 0 -lambdaMaxDeviationRpmBins = array, U16, 22358, [4], "RPM", 1, 0, 0, 18000, 0 -injectorStagingTable = array, U08, 22366, [6x6], "%", 1, 0, 0, 90, 0 -injectorStagingLoadBins = array, U16, 22402, [6], "", 1, 0, 0, 1000, 0 -injectorStagingRpmBins = array, U16, 22414, [6], "RPM", 1, 0, 0, 18000, 0 -; total TS size = 22428 +lambdaLoadBins = array, U16, 17376, [16], "", 1, 0, 0, 1000, 0 +lambdaRpmBins = array, U16, 17408, [16], "RPM", 1, 0, 0, 18000, 0 +tpsTpsAccelTable = array, F32, 17440, [8x8], "value", 1, 0, 0, 30000, 2 +tpsTpsAccelFromRpmBins = array, F32, 17696, [8], "from", 1, 0, 0, 30000, 2 +tpsTpsAccelToRpmBins = array, F32, 17728, [8], "to", 1, 0, 0, 25500, 2 +scriptTable1 = array, F32, 17760, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable1LoadBins = array, S16, 18016, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable1RpmBins = array, S16, 18032, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable2 = array, F32, 18048, [8x8], "value", 1, 0, -100000, 100000, 2 +scriptTable2LoadBins = array, S16, 18304, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable2RpmBins = array, S16, 18320, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable3 = array, U08, 18336, [8x8], "value", 1, 0, 0, 255, 0 +scriptTable3LoadBins = array, S16, 18400, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable3RpmBins = array, S16, 18416, [8], "RPM", 1, 0, -32000, 32000, 0 +scriptTable4 = array, U08, 18432, [10x8], "value", 1, 0, 0, 255, 0 +scriptTable4LoadBins = array, S16, 18512, [8], "L", 1, 0, -32000, 32000, 0 +scriptTable4RpmBins = array, S16, 18528, [10], "RPM", 1, 0, -32000, 32000, 0 +ignTrimLoadBins = array, U16, 18548, [4], "", 1, 0, 0, 1000, 0 +ignTrimRpmBins = array, U16, 18556, [4], "rpm", 1, 0, 0, 20000, 0 +ignTrims1_table = array, S08, 18564, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims2_table = array, S08, 18580, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims3_table = array, S08, 18596, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims4_table = array, S08, 18612, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims5_table = array, S08, 18628, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims6_table = array, S08, 18644, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims7_table = array, S08, 18660, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims8_table = array, S08, 18676, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims9_table = array, S08, 18692, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims10_table = array, S08, 18708, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims11_table = array, S08, 18724, [4x4], "", 0.2, 0, -25, 25, 1 +ignTrims12_table = array, S08, 18740, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrimLoadBins = array, U16, 18756, [4], "", 1, 0, 0, 1000, 0 +fuelTrimRpmBins = array, U16, 18764, [4], "rpm", 1, 0, 0, 20000, 0 +fuelTrims1_table = array, S08, 18772, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims2_table = array, S08, 18788, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims3_table = array, S08, 18804, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims4_table = array, S08, 18820, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims5_table = array, S08, 18836, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims6_table = array, S08, 18852, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims7_table = array, S08, 18868, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims8_table = array, S08, 18884, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims9_table = array, S08, 18900, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims10_table = array, S08, 18916, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims11_table = array, S08, 18932, [4x4], "", 0.2, 0, -25, 25, 1 +fuelTrims12_table = array, S08, 18948, [4x4], "", 0.2, 0, -25, 25, 1 +crankingFuelCoefE100 = array, U16, 18964, [8], "ratio", 0.01, 0, 0, 50, 2 +tcu_pcAirmassBins = array, U08, 18980, [8], "Airmass", 0.02, 0, 0, 255, 2 +tcu_pcValsR = array, U08, 18988, [8], "%", 1, 0, 0, 255, 0 +tcu_pcValsN = array, U08, 18996, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals1 = array, U08, 19004, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals2 = array, U08, 19012, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals3 = array, U08, 19020, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals4 = array, U08, 19028, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals12 = array, U08, 19036, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals23 = array, U08, 19044, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals34 = array, U08, 19052, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals21 = array, U08, 19060, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals32 = array, U08, 19068, [8], "%", 1, 0, 0, 255, 0 +tcu_pcVals43 = array, U08, 19076, [8], "%", 1, 0, 0, 255, 0 +tcu_tccTpsBins = array, U08, 19084, [8], "TPS", 1, 0, 0, 255, 0 +tcu_tccLockSpeed = array, U08, 19092, [8], "MPH", 1, 0, 0, 255, 0 +tcu_tccUnlockSpeed = array, U08, 19100, [8], "MPH", 1, 0, 0, 255, 0 +tcu_32SpeedBins = array, U08, 19108, [8], "KPH", 1, 0, 0, 255, 0 +tcu_32Vals = array, U08, 19116, [8], "%", 1, 0, 0, 255, 0 +throttle2TrimTable = array, S08, 19124, [6x6], "%", 0.1, 0, -10, 10, 1 +throttle2TrimTpsBins = array, U08, 19160, [6], "%", 1, 0, 0, 120, 0 +throttle2TrimRpmBins = array, U08, 19166, [6], "RPM", 100.0, 0, 0, 25000, 0 +maxKnockRetardTable = array, U08, 19172, [6x6], "deg", 0.25, 0, 0, 30, 2 +maxKnockRetardLoadBins = array, U08, 19208, [6], "%", 1, 0, 0, 250, 0 +maxKnockRetardRpmBins = array, U08, 19214, [6], "RPM", 100.0, 0, 0, 25000, 0 +ALSTimingRetardTable = array, S16, 19220, [4x4], "deg", 0.1, 0, -60, 0, 1 +alsIgnRetardLoadBins = array, U16, 19252, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnRetardrpmBins = array, U16, 19260, [4], "RPM", 1, 0, 0, 25000, 0 +ALSFuelAdjustment = array, S16, 19268, [4x4], "percent", 0.1, 0, 0, 50, 1 +alsFuelAdjustmentLoadBins = array, U16, 19300, [4], "TPS", 1, 0, 0, 100, 0 +alsFuelAdjustmentrpmBins = array, U16, 19308, [4], "RPM", 1, 0, 0, 25000, 0 +ALSIgnSkipTable = array, S16, 19316, [4x4], "ratio", 10.0, 0, 0, 50, 1 +alsIgnSkipLoadBins = array, U16, 19348, [4], "TPS", 1, 0, 0, 100, 0 +alsIgnSkiprpmBins = array, U16, 19356, [4], "RPM", 1, 0, 0, 25000, 0 +ignBlends1_table = array, S16, 19364, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends1_loadBins = array, U16, 19492, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends1_rpmBins = array, U16, 19508, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends1_blendParameter = bits, U08, 19524, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignBlends1_yAxisOverride = bits, U08, 19525, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignBlends1_blendBins = array, S16, 19526, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends1_blendValues = array, U08, 19542, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends2_table = array, S16, 19552, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends2_loadBins = array, U16, 19680, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends2_rpmBins = array, U16, 19696, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends2_blendParameter = bits, U08, 19712, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignBlends2_yAxisOverride = bits, U08, 19713, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignBlends2_blendBins = array, S16, 19714, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends2_blendValues = array, U08, 19730, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends3_table = array, S16, 19740, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends3_loadBins = array, U16, 19868, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends3_rpmBins = array, U16, 19884, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends3_blendParameter = bits, U08, 19900, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignBlends3_yAxisOverride = bits, U08, 19901, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignBlends3_blendBins = array, S16, 19902, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends3_blendValues = array, U08, 19918, [8], "%", 0.5, 0, 0, 100, 1 +ignBlends4_table = array, S16, 19928, [8x8], "", 0.1, 0, -100, 100, 1 +ignBlends4_loadBins = array, U16, 20056, [8], "Load", 1, 0, 0, 1000, 0 +ignBlends4_rpmBins = array, U16, 20072, [8], "RPM", 1, 0, 0, 18000, 0 +ignBlends4_blendParameter = bits, U08, 20088, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignBlends4_yAxisOverride = bits, U08, 20089, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +ignBlends4_blendBins = array, S16, 20090, [8], "", 0.1, 0, -1000, 1000, 1 +ignBlends4_blendValues = array, U08, 20106, [8], "%", 0.5, 0, 0, 100, 1 +veBlends1_table = array, S16, 20116, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends1_loadBins = array, U16, 20244, [8], "Load", 1, 0, 0, 1000, 0 +veBlends1_rpmBins = array, U16, 20260, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends1_blendParameter = bits, U08, 20276, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +veBlends1_yAxisOverride = bits, U08, 20277, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +veBlends1_blendBins = array, S16, 20278, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends1_blendValues = array, U08, 20294, [8], "%", 0.5, 0, 0, 100, 1 +veBlends2_table = array, S16, 20304, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends2_loadBins = array, U16, 20432, [8], "Load", 1, 0, 0, 1000, 0 +veBlends2_rpmBins = array, U16, 20448, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends2_blendParameter = bits, U08, 20464, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +veBlends2_yAxisOverride = bits, U08, 20465, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +veBlends2_blendBins = array, S16, 20466, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends2_blendValues = array, U08, 20482, [8], "%", 0.5, 0, 0, 100, 1 +veBlends3_table = array, S16, 20492, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends3_loadBins = array, U16, 20620, [8], "Load", 1, 0, 0, 1000, 0 +veBlends3_rpmBins = array, U16, 20636, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends3_blendParameter = bits, U08, 20652, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +veBlends3_yAxisOverride = bits, U08, 20653, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +veBlends3_blendBins = array, S16, 20654, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends3_blendValues = array, U08, 20670, [8], "%", 0.5, 0, 0, 100, 1 +veBlends4_table = array, S16, 20680, [8x8], "", 0.1, 0, -100, 100, 1 +veBlends4_loadBins = array, U16, 20808, [8], "Load", 1, 0, 0, 1000, 0 +veBlends4_rpmBins = array, U16, 20824, [8], "RPM", 1, 0, 0, 18000, 0 +veBlends4_blendParameter = bits, U08, 20840, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +veBlends4_yAxisOverride = bits, U08, 20841, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +veBlends4_blendBins = array, S16, 20842, [8], "", 0.1, 0, -1000, 1000, 1 +veBlends4_blendValues = array, U08, 20858, [8], "%", 0.5, 0, 0, 100, 1 +throttleEstimateEffectiveAreaBins = array, U16, 20868, [12], "%", 0.1, 0, 0, 100, 1 +throttleEstimateEffectiveAreaValues = array, U16, 20892, [12], "g/s", 0.1, 0, 0, 6500, 1 +boostOpenLoopBlends1_table = array, S16, 20916, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends1_loadBins = array, U16, 21044, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends1_rpmBins = array, U16, 21060, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends1_blendParameter = bits, U08, 21076, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +boostOpenLoopBlends1_yAxisOverride = bits, U08, 21077, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +boostOpenLoopBlends1_blendBins = array, S16, 21078, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends1_blendValues = array, U08, 21094, [8], "%", 0.5, 0, 0, 100, 1 +boostOpenLoopBlends2_table = array, S16, 21104, [8x8], "", 0.1, 0, -100, 100, 1 +boostOpenLoopBlends2_loadBins = array, U16, 21232, [8], "Load", 1, 0, 0, 1000, 0 +boostOpenLoopBlends2_rpmBins = array, U16, 21248, [8], "RPM", 1, 0, 0, 18000, 0 +boostOpenLoopBlends2_blendParameter = bits, U08, 21264, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +boostOpenLoopBlends2_yAxisOverride = bits, U08, 21265, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +boostOpenLoopBlends2_blendBins = array, S16, 21266, [8], "", 0.1, 0, -1000, 1000, 1 +boostOpenLoopBlends2_blendValues = array, U08, 21282, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends1_table = array, S16, 21292, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends1_loadBins = array, U16, 21420, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends1_rpmBins = array, U16, 21436, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends1_blendParameter = bits, U08, 21452, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +boostClosedLoopBlends1_yAxisOverride = bits, U08, 21453, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +boostClosedLoopBlends1_blendBins = array, S16, 21454, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends1_blendValues = array, U08, 21470, [8], "%", 0.5, 0, 0, 100, 1 +boostClosedLoopBlends2_table = array, S16, 21480, [8x8], "", 0.1, 0, -100, 100, 1 +boostClosedLoopBlends2_loadBins = array, U16, 21608, [8], "Load", 1, 0, 0, 1000, 0 +boostClosedLoopBlends2_rpmBins = array, U16, 21624, [8], "RPM", 1, 0, 0, 18000, 0 +boostClosedLoopBlends2_blendParameter = bits, U08, 21640, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +boostClosedLoopBlends2_yAxisOverride = bits, U08, 21641, [0:4], "Zero", "TPS", "MAP", "CLT", "IAT", "Fuel Load", "Ignition Load", "Aux Temp 1", "Aux Temp 2", "Accel Pedal", "Battery Voltage", "VVT 1 I", "VVT 1 E", "VVT 2 I", "VVT 2 E", "Ethanol (Flex) %", "Aux Linear 1", "Aux Linear 2", "GPPWM Output 1", "GPPWM Output 2", "GPPWM Output 3", "GPPWM Output 4", "Lua Gauge 1", "Lua Gauge 2", "RPM", "Gear (detected)", "Baro pressure", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" +boostClosedLoopBlends2_blendBins = array, S16, 21642, [8], "", 0.1, 0, -1000, 1000, 1 +boostClosedLoopBlends2_blendValues = array, U08, 21658, [8], "%", 0.5, 0, 0, 100, 1 +tcu_rangeP = array, U08, 21668, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeR = array, U08, 21674, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeN = array, U08, 21680, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeD = array, U08, 21686, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM = array, U08, 21692, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM3 = array, U08, 21698, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM2 = array, U08, 21704, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeM1 = array, U08, 21710, [6], "level", 1, 0, 0, 3, 0 +tcu_rangePlus = array, U08, 21716, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeMinus = array, U08, 21722, [6], "level", 1, 0, 0, 3, 0 +tcu_rangeLow = array, U08, 21728, [6], "level", 1, 0, 0, 3, 0 +lambdaMaxDeviationTable = array, U08, 21734, [4x4], "lambda", 0.01, 0, 0, 1, 2 +lambdaMaxDeviationLoadBins = array, U16, 21750, [4], "", 1, 0, 0, 1000, 0 +lambdaMaxDeviationRpmBins = array, U16, 21758, [4], "RPM", 1, 0, 0, 18000, 0 +injectorStagingTable = array, U08, 21766, [6x6], "%", 1, 0, 0, 90, 0 +injectorStagingLoadBins = array, U16, 21802, [6], "", 1, 0, 0, 1000, 0 +injectorStagingRpmBins = array, U16, 21814, [6], "RPM", 1, 0, 0, 18000, 0 +wwCltBins = array, S08, 21826, [8], "deg C", 1, 0, -40, 120, 0 +wwTauCltValues = array, U08, 21834, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaCltValues = array, U08, 21842, [8], "", 0.01, 0, 0, 1, 2 +wwMapBins = array, S08, 21850, [8], "kPa", 1, 0, 0, 250, 0 +wwTauMapValues = array, U08, 21858, [8], "", 0.01, 0, 0, 2.5, 2 +wwBetaMapValues = array, U08, 21866, [8], "", 0.01, 0, 0, 2.5, 2 +hpfpLobeProfileQuantityBins = array, U08, 21874, [16], "%", 0.5, 0, 0, 100, 1 +hpfpLobeProfileAngle = array, U08, 21890, [16], "deg", 0.5, 0, 0, 125, 1 +hpfpDeadtimeVoltsBins = array, U08, 21906, [8], "volts", 1, 0, 0, 255, 0 +hpfpDeadtimeMS = array, U16, 21914, [8], "ms", 0.001, 0, 0, 65, 3 +hpfpTarget = array, U16, 21930, [10x10], "kPa", 1, 0, 0, 65000, 0 +hpfpTargetLoadBins = array, U16, 22130, [10], "load", 0.1, 0, 0, 6500, 1 +hpfpTargetRpmBins = array, U08, 22150, [10], "RPM", 50.0, 0, 0, 12500, 0 +hpfpCompensation = array, S08, 22160, [10x10], "%", 1, 0, -100, 100, 0 +hpfpCompensationLoadBins = array, U16, 22260, [10], "cc/lobe", 0.001, 0, 0, 65, 3 +hpfpCompensationRpmBins = array, U08, 22280, [10], "RPM", 50.0, 0, 0, 12500, 0 +knockNoiseRpmBins = array, U16, 22290, [16], "RPM", 1, 0, 0, 30000, 0 +knockBaseNoise = array, S08, 22322, [16], "dB", 0.5, 0, -50, 10, 1 +tpsTspCorrValuesBins = array, U08, 22338, [4], "RPM", 50.0, 0, 0, 17500, 0 +tpsTspCorrValues = array, U08, 22342, [4], "multiplier", 0.02, 0, 0, 5, 2 +cltRevLimitRpmBins = array, S08, 22346, [4], "C", 1, 0, -40, 120, 0 +cltRevLimitRpm = array, U16, 22350, [4], "RPM", 1, 0, 0, 20000, 0 +fuelLevelBins = array, U16, 22358, [8], "volt", 0.001, 0, 0, 5, 3 +fuelLevelValues = array, U08, 22374, [8], "%", 1, 0, 0, 100, 0 +dwellVoltageCorrVoltBins = array, U08, 22382, [8], "volts", 0.1, 0, 0, 20, 1 +dwellVoltageCorrValues = array, U08, 22390, [8], "multiplier", 0.02, 0, 0, 5, 2 +; total TS size = 22400 [SettingContextHelp] engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X" sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm" @@ -1655,6 +1666,17 @@ injectorStagingRpmBins = array, U16, 22414, [6], "RPM", 1, 0, 0, 18000, 0 maxAcRpm = "Above this RPM, disable AC. Set to 0 to disable check." maxAcTps = "Above this TPS, disable AC. Set to 0 to disable check." maxAcClt = "Above this CLT, disable AC to prevent overheating the engine. Set to 0 to disable check." + compressionRatio = "Just for reference really, not taken into account by any logic at this point" + wastegatePositionMin = "Voltage when the wastegate is closed.\nYou probably don't have one of these!" + wastegatePositionMax = "Voltage when the wastegate is fully open.\nYou probably don't have one of these!\n1 volt = 1000 units" + idlePositionMin = "Voltage when the idle valve is closed.\nYou probably don't have one of these!" + idlePositionMax = "Voltage when the idle valve is open.\nYou probably don't have one of these!\n1 volt = 1000 units" + canTxPin = "set_can_tx_pin X" + canRxPin = "set_can_rx_pin X" + etbExpAverageLength = "By the way ETB PID runs at 500hz, length in 1/500 of second here." + etbJamTimeout = "Time required to detect a stuck throttle." + acIdleExtraOffset = "Additional idle % while A/C is active" + manIdlePosition = "Value between 0 and 100 used in Manual mode" multisparkMaxSparkingAngle = "This parameter sets the latest that the last multispark can occur after the main ignition event. For example, if the ignition timing is 30 degrees BTDC, and this parameter is set to 45, no multispark will ever be fired after 15 degrees ATDC." multisparkMaxExtraSparkCount = "Configures the maximum number of extra sparks to fire (does not include main spark)" injector_flow = "This is your injector flow at the fuel pressure used in the vehicle. cc/min, cubic centimetre per minute\nBy the way, g/s = 0.125997881 * (lb/hr)\ng/s = 0.125997881 * (cc/min)/10.5\ng/s = 0.0119997981 * cc/min" @@ -1713,6 +1735,7 @@ injectorStagingRpmBins = array, U16, 22414, [6], "RPM", 1, 0, 0, 18000, 0 maxIdleVss = "Above this speed, disable closed loop idle control. Set to 0 to disable (allow closed loop idle at any speed)." minOilPressureAfterStart = "Expected oil pressure after starting the engine. If oil pressure does not reach this level within 5 seconds of engine start, fuel will be cut. Set to 0 to disable and always allow starting." timingMode = "Dynamic uses the timing map to decide the ignition timing, Static timing fixes the timing to the value set below (only use for checking static timing with a timing light)." + canNbcType = "set can_mode X" fixedModeTiming = "This value is the ignition timing used when in 'fixed timing' mode, i.e. constant timing\nThis mode is useful when adjusting distributor location." globalTriggerAngleOffset = "Angle between Top Dead Center (TDC) and the first trigger event.\nPositive value in case of synchronization point before TDC and negative in case of synchronization point after TDC\n.Knowing this angle allows us to control timing and other angles in reference to TDC.\nset global_trigger_offset_angle X" analogInputDividerCoefficient = "Ratio/coefficient of input voltage dividers on your PCB. For example, use '2' if your board divides 5v into 2.5v. Use '1.66' if your board divides 5v into 3v." @@ -1720,7 +1743,6 @@ injectorStagingRpmBins = array, U16, 22414, [6], "RPM", 1, 0, 0, 18000, 0 fanOnTemperature = "Cooling fan turn-on temperature threshold, in Celsius" fanOffTemperature = "Cooling fan turn-off temperature threshold, in Celsius" driveWheelRevPerKm = "Number of revolutions per kilometer for the wheels your vehicle speed sensor is connected to. Use an online calculator to determine this based on your tire size." - canNbcType = "set can_mode X" canSleepPeriodMs = "CANbus thread period in ms" tps1_1AdcChannel = "First throttle body, first sensor. See also pedalPositionAdcChannel" vbattAdcChannel = "This is the processor input pin that the battery voltage circuit is connected to, if you are unsure of what pin to use, check the schematic that corresponds to your PCB." @@ -1740,12 +1762,11 @@ injectorStagingRpmBins = array, U16, 22414, [6], "RPM", 1, 0, 0, 18000, 0 throttlePedalUpPin = "Throttle Pedal not pressed switch - used on some older vehicles like early Mazda Miata" baroSensor_lowValue = "kPa value at low volts" baroSensor_highValue = "kPa value at high volts" - manIdlePosition = "Value between 0 and 100 used in Manual mode" knockRetardAggression = "Ignition timing to remove when a knock event occurs." knockRetardReapplyRate = "After a knock event, reapply timing at this rate." engineSyncCam = "Select which cam is used for engine sync. Other cams will be used only for VVT measurement, but not engine sync." - vssFilterReciprocal = "Set this so your vehicle speed signal is responsive, but not noisy. Larger value give smoother but slower response." vssGearRatio = "Number of turns of your vehicle speed sensor per turn of the wheels. For example if your sensor is on the transmission output, enter your axle/differential ratio. If you are using a hub-mounted sensor, enter a value of 1.0." + vssFilterReciprocal = "Set this so your vehicle speed signal is responsive, but not noisy. Larger value give smoother but slower response." vssToothCount = "Number of pulses output per revolution of the shaft where your VSS is mounted. For example, GM applications of the T56 output 17 pulses per revolution of the transmission output shaft." idleVeOverrideMode = "Override the Y axis (load) value used for only the Idle VE table.\nAdvanced users only: If you aren't sure you need this, you probably don't need this." injectionPins1 = "injectionPins 1" @@ -1790,16 +1811,7 @@ injectorStagingRpmBins = array, U16, 22414, [6], "RPM", 1, 0, 0, 18000, 0 triggerInputPins1 = "triggerInputPins 1" triggerInputPins2 = "triggerInputPins 2" mc33_t_min_boost = "Minimum allowed time for the boost phase. If the boost target current is reached before this time elapses, it is assumed that the injector has failed short circuit." - canTxPin = "set_can_tx_pin X" - canRxPin = "set_can_rx_pin X" - acIdleExtraOffset = "Additional idle % while A/C is active" finalGearRatio = "Ratio between the wheels and your transmission output." - wastegatePositionMin = "Voltage when the wastegate is closed.\nYou probably don't have one of these!" - wastegatePositionMax = "Voltage when the wastegate is fully open.\nYou probably don't have one of these!\n1 volt = 1000 units" - idlePositionMin = "Voltage when the idle valve is closed.\nYou probably don't have one of these!" - idlePositionMax = "Voltage when the idle valve is open.\nYou probably don't have one of these!\n1 volt = 1000 units" - tunerStudioSerialSpeed = "Secondary TTL channel baud rate" - compressionRatio = "Just for reference really, not taken into account by any logic at this point" triggerSimulatorPins1 = "Each rusEFI piece can provide synthetic trigger signal for external ECU. Sometimes these wires are routed back into trigger inputs of the same rusEFI board.\nSee also directSelfStimulation which is different. 1" triggerSimulatorPins2 = "Each rusEFI piece can provide synthetic trigger signal for external ECU. Sometimes these wires are routed back into trigger inputs of the same rusEFI board.\nSee also directSelfStimulation which is different. 2" triggerSimulatorPinModes1 = "triggerSimulatorPinModes 1" @@ -1872,6 +1884,8 @@ injectorStagingRpmBins = array, U16, 22414, [6], "RPM", 1, 0, 0, 18000, 0 boostPid_periodMs = "PID dTime" boostPid_minValue = "Output Min Duty Cycle" boostPid_maxValue = "Output Max Duty Cycle" + tpsAccelLookback = "How long to look back for TPS-based acceleration enrichment. Increasing this time will trigger enrichment for longer when a throttle position change occurs." + noFuelTrimAfterDfcoTime = "Pause closed loop fueling after deceleration fuel cut occurs. Set this to a little longer than however long is required for normal fueling behavior to resume after fuel cut." launchSpeedThreshold = "Launch disabled above this speed if setting is above zero" launchRpmWindow = "Starting Launch RPM window to activate (subtracts from Launch RPM)" launchSparkSkipPercent = "Spark Skip Transition Target" @@ -2009,10 +2023,8 @@ injectorStagingRpmBins = array, U16, 22414, [6], "RPM", 1, 0, 0, 18000, 0 iacByTpsTaper = "IAC Value added when coasting and transitioning into idle." auxSerialTxPin = "Auxiliary sensor serial, not to be confused with secondary calibration serial" auxSerialRxPin = "Auxiliary sensor serial, not to be confused with secondary calibration serial" - tpsAccelLookback = "How long to look back for TPS-based acceleration enrichment. Increasing this time will trigger enrichment for longer when a throttle position change occurs." coastingFuelCutVssLow = "Below this speed, disable DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears." coastingFuelCutVssHigh = "Above this speed, allow DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears." - noFuelTrimAfterDfcoTime = "Pause closed loop fueling after deceleration fuel cut occurs. Set this to a little longer than however long is required for normal fueling behavior to resume after fuel cut." tpsAccelEnrichmentThreshold = "Maximum change delta of TPS percentage over the 'length'. Actual TPS change has to be above this value in order for TPS/TPS acceleration to kick in." auxSpeedSensorInputPin1 = "auxSpeedSensorInputPin 1" auxSpeedSensorInputPin2 = "auxSpeedSensorInputPin 2" @@ -2121,8 +2133,6 @@ injectorStagingRpmBins = array, U16, 22414, [6], "RPM", 1, 0, 0, 18000, 0 fan2OnTemperature = "Cooling fan turn-on temperature threshold, in Celsius" fan2OffTemperature = "Cooling fan turn-off temperature threshold, in Celsius" sentInputPins1 = "sentInputPins 1" - etbJamTimeout = "Time required to detect a stuck throttle." - etbExpAverageLength = "By the way ETB PID runs at 500hz, length in 1/500 of second here." coastingFuelCutRpmHigh = "This sets the RPM above which fuel cut is active." coastingFuelCutRpmLow = "This sets the RPM below which fuel cut is deactivated, this prevents jerking or issues transitioning to idle" coastingFuelCutTps = "Throttle position below which fuel cut is active. With an electronic throttle enabled, this checks against pedal position." @@ -2222,7 +2232,6 @@ injectorStagingRpmBins = array, U16, 22414, [6], "RPM", 1, 0, 0, 18000, 0 tcu_solenoid_mode4 = "tcu_solenoid_mode 4" tcu_solenoid_mode5 = "tcu_solenoid_mode 5" tcu_solenoid_mode6 = "tcu_solenoid_mode 6" - knockBaseNoise = "Knock sensor output knock detection threshold depending on current RPM." triggerGapOverrideFrom1 = "triggerGapOverrideFrom 1" triggerGapOverrideFrom2 = "triggerGapOverrideFrom 2" triggerGapOverrideFrom3 = "triggerGapOverrideFrom 3" @@ -2363,6 +2372,7 @@ injectorStagingRpmBins = array, U16, 22414, [6], "RPM", 1, 0, 0, 18000, 0 injectionPinsStage210 = "injectionPinsStage2 10" injectionPinsStage211 = "injectionPinsStage2 11" injectionPinsStage212 = "injectionPinsStage2 12" + tunerStudioSerialSpeed = "Secondary TTL channel baud rate" etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method" etbBiasValues = "PWM bias, 0 to 100%" sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM" @@ -2374,6 +2384,22 @@ injectorStagingRpmBins = array, U16, 22414, [6], "RPM", 1, 0, 0, 18000, 0 crankingAdvance = "Optional timing advance table for Cranking (see useSeparateAdvanceForCranking)" iacCoastingRpmBins = "RPM-based idle position for coasting" iacCoasting = "RPM-based idle position for coasting" + fancyOptions1 = "fancyOptions 1" + fancyOptions2 = "fancyOptions 2" + fancyOptions3 = "fancyOptions 3" + fancyOptions4 = "fancyOptions 4" + fancyOptions5 = "fancyOptions 5" + fancyOptions6 = "fancyOptions 6" + fancyOptions7 = "fancyOptions 7" + fancyOptions8 = "fancyOptions 8" + fancyOptions9 = "fancyOptions 9" + fancyOptions10 = "fancyOptions 10" + fancyOptions11 = "fancyOptions 11" + fancyOptions12 = "fancyOptions 12" + fancyOptions13 = "fancyOptions 13" + fancyOptions14 = "fancyOptions 14" + fancyOptions15 = "fancyOptions 15" + fancyOptions16 = "fancyOptions 16" cltCrankingCorrBins = "CLT-based cranking position multiplier for simple manual idle controller" cltCrankingCorr = "CLT-based cranking position multiplier for simple manual idle controller" idleAdvanceBins = "Optional timing advance table for Idle (see useSeparateAdvanceForIdle)" @@ -2382,6 +2408,7 @@ injectorStagingRpmBins = array, U16, 22414, [6], "RPM", 1, 0, 0, 18000, 0 cltIdleCorr = "CLT-based idle position multiplier for simple manual idle controller" mafDecoding = "Also known as MAF transfer function.\nkg/hour value.\nBy the way 2.081989116 kg/h = 1 ft3/m" throttleEstimateEffectiveAreaValues = "In units of g/s normalized to choked flow conditions" + knockBaseNoise = "Knock sensor output knock detection threshold depending on current RPM." ; SettingContextHelpEnd @@ -5907,6 +5934,7 @@ menuDialog = main subMenu = std_separator + subMenu = fancyOptionsDialog, "Fancy Options" subMenu = tractionEtbTableTbl, "Traction Control ETB Drop" subMenu = tractionTimingTableTbl, "Traction Control Timing Adjustment" subMenu = tractionIgnitionSkipDialog, "Traction Control Skip Ignition" @@ -8955,6 +8983,12 @@ dialog = tcuControls, "Transmission Settings" field = "Trailing Pin 3", trailingCoilPins3 field = "Trailing Pin 4", trailingCoilPins4 + dialog = fancyOptionsDialog, "Fancy Options" + field = fancyOptions0, fancyOptions0 + field = fancyOptions1, fancyOptions1 + field = fancyOptions2, fancyOptions2 + field = fancyOptions15, fancyOptions15 + dialog = fancyHardwareDialog, "Fancy Boards" field = fancySmartS,fancySmartS field = fancySmartL,fancySmartL